UnicodeArrayCallsWrapper.spec.ts 1.2 KB

1234567891011121314151617181920212223242526272829
  1. import { IObfuscationResult } from "../../../../src/interfaces/IObfuscationResult";
  2. import { JavaScriptObfuscator } from "../../../../src/JavaScriptObfuscator";
  3. const assert: Chai.AssertStatic = require('chai').assert;
  4. describe('UnicodeArrayCallsWrapper', () => {
  5. it('should correctly append `UnicodeArrayCallsWrapper` custom node into the obfuscated code if `wrapUnicodeArrayCalls` option is set', () => {
  6. let obfuscationResult: IObfuscationResult = JavaScriptObfuscator.obfuscate(
  7. `var test = 'test';`,
  8. {
  9. wrapUnicodeArrayCalls: true
  10. }
  11. );
  12. assert.match(obfuscationResult.getObfuscatedCode(), /return _0x([a-z0-9]){4}\[parseInt\(_0x([a-z0-9]){4,6}, *0x010\)\];/);
  13. });
  14. it('should\'t append `UnicodeArrayDecodeNode` custom node into the obfuscated code if `wrapUnicodeArrayCalls` option is not set', () => {
  15. let obfuscationResult: IObfuscationResult = JavaScriptObfuscator.obfuscate(
  16. `var test = 'test';`,
  17. {
  18. wrapUnicodeArrayCalls: false
  19. }
  20. );
  21. assert.notMatch(obfuscationResult.getObfuscatedCode(), /return _0x([a-z0-9]){4}\[parseInt\(_0x([a-z0-9]){4,6}, *0x010\)\];/);
  22. });
  23. });