issue419.spec.ts 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. import { assert } from 'chai';
  2. import { NO_ADDITIONAL_NODES_PRESET } from '../../../src/options/presets/NoCustomNodes';
  3. import { readFileAsString } from '../../helpers/readFileAsString';
  4. import { JavaScriptObfuscator } from '../../../src/JavaScriptObfuscatorFacade';
  5. //
  6. // https://github.com/javascript-obfuscator/javascript-obfuscator/issues/419
  7. //
  8. describe('Issue #419', () => {
  9. describe('Fixture code should not break', () => {
  10. const codeRegExp: RegExp = /for await/;
  11. let obfuscatedCode: string;
  12. before(() => {
  13. const code: string = readFileAsString(__dirname + '/fixtures/issue419.js');
  14. obfuscatedCode = JavaScriptObfuscator.obfuscate(
  15. code,
  16. {
  17. ...NO_ADDITIONAL_NODES_PRESET,
  18. compact: true
  19. }
  20. ).getObfuscatedCode();
  21. });
  22. it('does not break on obfuscating', () => {
  23. assert.doesNotThrow(() => eval(obfuscatedCode));
  24. });
  25. it('should return correct `for-await-of` statement', () => {
  26. assert.match(obfuscatedCode, codeRegExp);
  27. });
  28. });
  29. });