123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- import 'format-unicorn';
- import { AtobTemplate } from '../../../../../src/templates/custom-nodes/AtobTemplate';
- import { Rc4Template } from '../../../../../src/templates/custom-nodes/Rc4Template';
- import { UnicodeArrayBase64DecodeNodeTemplate } from '../../../../../src/templates/custom-nodes/unicode-array-nodes/unicode-array-calls-wrapper/UnicodeArrayBase64DecodeNodeTemplate';
- import { UnicodeArrayCallsWrapperTemplate } from '../../../../../src/templates/custom-nodes/unicode-array-nodes/unicode-array-calls-wrapper/UnicodeArrayCallsWrapperTemplate';
- import { UnicodeArrayRc4DecodeNodeTemplate } from '../../../../../src/templates/custom-nodes/unicode-array-nodes/unicode-array-calls-wrapper/UnicodeArrayRC4DecodeNodeTemplate';
- import { Utils } from '../../../../../src/Utils';
- const assert: Chai.AssertStatic = require('chai').assert;
- /**
- * @param templateData
- * @param unicodeArrayName
- * @param unicodeArrayCallsWrapperName
- * @param index
- * @returns {Function}
- */
- function getFunctionFromTemplateBase64Encoding (
- templateData: any,
- unicodeArrayName: string,
- unicodeArrayCallsWrapperName: string,
- index: string
- ) {
- let unicodeArrayCallsWrapperTemplate: string = UnicodeArrayCallsWrapperTemplate().formatUnicorn(templateData);
- return Function(`
- var ${unicodeArrayName} = ['${Utils.btoa('test1')}'];
-
- ${unicodeArrayCallsWrapperTemplate}
-
- return ${unicodeArrayCallsWrapperName}(${index});
- `)();
- }
- /**
- * @param templateData
- * @param unicodeArrayName
- * @param unicodeArrayCallsWrapperName
- * @param index
- * @param key
- * @returns {Function}
- */
- function getFunctionFromTemplateRc4Encoding (
- templateData: any,
- unicodeArrayName: string,
- unicodeArrayCallsWrapperName: string,
- index: string,
- key: string
- ) {
- let unicodeArrayCallsWrapperTemplate: string = UnicodeArrayCallsWrapperTemplate().formatUnicorn(templateData);
- return Function(`
- var ${unicodeArrayName} = ['${Utils.btoa(Utils.rc4('test1', key))}'];
-
- ${unicodeArrayCallsWrapperTemplate}
-
- return ${unicodeArrayCallsWrapperName}('${index}', '${key}');
- `)();
- }
- describe('UnicodeArrayCallsWrapperNodeTemplate (): string', () => {
- let unicodeArrayName: string = 'unicodeArrayName',
- unicodeArrayCallsWrapperName: string = 'unicodeArrayCallsWrapperName',
- atobDecodeNodeTemplate: string = UnicodeArrayBase64DecodeNodeTemplate().formatUnicorn({
- atobPolyfill: AtobTemplate(),
- selfDefendingCode: '',
- unicodeArrayCallsWrapperName
- }),
- rc4DecodeNodeTemplate: string = UnicodeArrayRc4DecodeNodeTemplate().formatUnicorn({
- atobPolyfill: AtobTemplate(),
- rc4Polyfill: Rc4Template(),
- selfDefendingCode: '',
- unicodeArrayCallsWrapperName
- });
- it('should correctly returns decoded value with base64 encoding', () => {
- assert.deepEqual(getFunctionFromTemplateBase64Encoding({
- decodeNodeTemplate: atobDecodeNodeTemplate,
- unicodeArrayCallsWrapperName,
- unicodeArrayName
- }, unicodeArrayName, unicodeArrayCallsWrapperName, '0x0'), 'test1');
- });
- it('should correctly returns decoded value with rc4 encoding', () => {
- assert.deepEqual(getFunctionFromTemplateRc4Encoding({
- decodeNodeTemplate: rc4DecodeNodeTemplate,
- unicodeArrayCallsWrapperName,
- unicodeArrayName
- }, unicodeArrayName, unicodeArrayCallsWrapperName, '0x0', 'key'), 'test1');
- });
- });
|