71 lines
1.2 KiB
JavaScript
71 lines
1.2 KiB
JavaScript
import test from 'tape';
|
|
import {
|
|
encodeScriptTags,
|
|
decodeScriptTags,
|
|
encodeFormAction,
|
|
decodeFormAction,
|
|
encodeFcc,
|
|
decodeFcc
|
|
} from './encode-decode.js';
|
|
|
|
const scriptDecoded = `
|
|
<script>console.log('foo')</script>
|
|
`;
|
|
const scriptEncoded = `
|
|
fccssconsole.log('foo')fcces
|
|
`;
|
|
test('encodeScriptTags', t => {
|
|
t.plan(1);
|
|
t.equal(
|
|
encodeScriptTags(scriptDecoded),
|
|
scriptEncoded
|
|
);
|
|
});
|
|
|
|
test('decodeScriptTags', t => {
|
|
t.plan(1);
|
|
t.equal(
|
|
decodeScriptTags(scriptEncoded),
|
|
scriptDecoded
|
|
);
|
|
});
|
|
|
|
const formDecoded = `
|
|
<form action ='path'>foo</form>
|
|
`;
|
|
const formEncoded = `
|
|
<form fccfaa ='path'>foo</form>
|
|
`;
|
|
|
|
test('encodeFormAction', t => {
|
|
t.plan(1);
|
|
t.equal(
|
|
encodeFormAction(formDecoded),
|
|
formEncoded
|
|
);
|
|
});
|
|
|
|
test('decodeFormAction', t => {
|
|
t.plan(1);
|
|
t.equal(
|
|
decodeFormAction(formEncoded),
|
|
formDecoded
|
|
);
|
|
});
|
|
|
|
test('encodeFcc', t => {
|
|
t.plan(1);
|
|
t.equal(
|
|
encodeFcc('//noprotect' + scriptDecoded + formDecoded),
|
|
'//' + scriptEncoded + formEncoded
|
|
);
|
|
});
|
|
|
|
test('decodeFcc', t => {
|
|
t.plan(1);
|
|
t.equal(
|
|
decodeFcc(scriptEncoded + formEncoded),
|
|
scriptDecoded + formDecoded
|
|
);
|
|
});
|