Browse Source

ObjectExpressionObfuscator tests

sanex3339 8 năm trước cách đây
mục cha
commit
b82407f4f4

+ 27 - 0
test/functional-tests/node-obfuscators/ObjectExpressionObfuscator.spec.ts

@@ -0,0 +1,27 @@
+import { IObfuscationResult } from "../../../src/interfaces/IObfuscationResult";
+
+import { NO_CUSTOM_NODES_PRESET } from "../../../src/preset-options/NoCustomNodesPreset";
+
+import { JavaScriptObfuscator } from "../../../src/JavaScriptObfuscator";
+
+const assert: Chai.AssertStatic = require('chai').assert;
+
+describe('ObjectExpressionObfuscator', () => {
+    it('should replace object expression node `key` property with literal value by unicode value', () => {
+        let obfuscationResult: IObfuscationResult = JavaScriptObfuscator.obfuscate(
+            `var test = { 'foo': 0 };`,
+            Object.assign({}, NO_CUSTOM_NODES_PRESET)
+        );
+
+        assert.match(obfuscationResult.getObfuscatedCode(),  /^var *test *= *\{'\\x66\\x6f\\x6f':0x0\};$/);
+    });
+
+    it('should replace object expression node `key` property with identifier value by unicode value', () => {
+        let obfuscationResult: IObfuscationResult = JavaScriptObfuscator.obfuscate(
+            `var test = { foo: 0 };`,
+            Object.assign({}, NO_CUSTOM_NODES_PRESET)
+        );
+
+        assert.match(obfuscationResult.getObfuscatedCode(),  /^var *test *= *\{'\\x66\\x6f\\x6f':0x0\};$/);
+    });
+});

+ 1 - 0
test/index.spec.ts

@@ -26,3 +26,4 @@ import './functional-tests/JavaScriptObfuscatorInternal.spec';
 import './functional-tests/node-obfuscators/LiteralObfuscator.spec';
 import './functional-tests/node-obfuscators/MemberExpressionObfuscator.spec';
 import './functional-tests/node-obfuscators/MethodDefinitionObfuscator.spec';
+import './functional-tests/node-obfuscators/ObjectExpressionObfuscator.spec';