JavaScriptObfuscator.spec.ts 1.2 KB

123456789101112131415161718192021222324252627282930
  1. import { JavaScriptObfuscator } from "../src/JavaScriptObfuscator";
  2. import { DEFAULT_PRESET } from "../src/preset-options/DefaultPreset";
  3. import { NO_CUSTOM_NODES_PRESET } from "../src/preset-options/NoCustomNodesPreset";
  4. let assert: any = require('chai').assert;
  5. describe('JavaScriptObfuscator', () => {
  6. describe('obfuscate (sourceCode: string, customOptions?: IOptionsPreset): string', () => {
  7. it('should obfuscate simple code with variable inside global scope', () => {
  8. assert.match(
  9. JavaScriptObfuscator.obfuscate(
  10. `var test = 1;`,
  11. Object.assign({}, DEFAULT_PRESET, NO_CUSTOM_NODES_PRESET)
  12. ),
  13. /^var *[A-Za-z]+ *= *0x\d+;$/
  14. );
  15. });
  16. it('should obfuscate simple code with variable inside block-scope', () => {
  17. assert.match(
  18. JavaScriptObfuscator.obfuscate(
  19. `(function () {var test = 1;})()`,
  20. Object.assign({}, DEFAULT_PRESET, NO_CUSTOM_NODES_PRESET)
  21. ),
  22. /^\(function *\( *\) *\{ *var *_0x[\w]+ *= *0x\d+; *\} *(\( *\) *\)|\) *\( *\));?$/
  23. );
  24. });
  25. });
  26. });