61 lines
1.3 KiB
JavaScript
61 lines
1.3 KiB
JavaScript
const Utils = require('../src/Utils');
|
|
|
|
describe('Utils', () => {
|
|
describe('encodeForUrl', () => {
|
|
it('should properly escape email with all special ASCII characters for use in URLs', async () => {
|
|
const values = [
|
|
{ input: `!\"'),.:;<>?]^}`, output: '%21%22%27%29%2C%2E%3A%3B%3C%3E%3F%5D%5E%7D' },
|
|
]
|
|
for (const value of values) {
|
|
expect(Utils.encodeForUrl(value.input)).toBe(value.output);
|
|
}
|
|
});
|
|
});
|
|
|
|
describe('addNestedKeysToRoot', () => {
|
|
it('should move the nested keys to root of object', async () => {
|
|
const obj = {
|
|
a: 1,
|
|
b: {
|
|
c: 2,
|
|
d: 3
|
|
},
|
|
e: 4
|
|
};
|
|
Utils.addNestedKeysToRoot(obj, 'b');
|
|
expect(obj).toEqual({
|
|
a: 1,
|
|
c: 2,
|
|
d: 3,
|
|
e: 4
|
|
});
|
|
});
|
|
|
|
it('should not modify the object if the key does not exist', async () => {
|
|
const obj = {
|
|
a: 1,
|
|
e: 4
|
|
};
|
|
Utils.addNestedKeysToRoot(obj, 'b');
|
|
expect(obj).toEqual({
|
|
a: 1,
|
|
e: 4
|
|
});
|
|
});
|
|
|
|
it('should not modify the object if the key is not an object', () => {
|
|
const obj = {
|
|
a: 1,
|
|
b: 2,
|
|
e: 4
|
|
};
|
|
Utils.addNestedKeysToRoot(obj, 'b');
|
|
expect(obj).toEqual({
|
|
a: 1,
|
|
b: 2,
|
|
e: 4
|
|
});
|
|
});
|
|
});
|
|
});
|