json-ascii
Advanced tools
Comparing version 3.3.2 to 3.3.3
@@ -18,5 +18,5 @@ 'use strict' | ||
const objectToEncode = { | ||
str: "foo", | ||
str: 'foo', | ||
bar: { | ||
baz: "baz" | ||
baz: 'baz' | ||
}, | ||
@@ -26,3 +26,4 @@ array: ['foo', 'bar'], | ||
} | ||
const encodedObject = objectPropertyEncoder.encode(objectToEncode, {str: {}, array: {}}) | ||
const encoderConfig = {str: {}, array: {}} | ||
const encodedObject = objectPropertyEncoder.encode(objectToEncode, encoderConfig) | ||
assertObjectEqual({ | ||
@@ -34,5 +35,6 @@ str: 'Zm9v', | ||
array: ['foo', 'bar'], | ||
untouched: 123 | ||
untouched: 123, | ||
base64EncoderConfig: encoderConfig | ||
}, encodedObject) | ||
const decodedObject = objectPropertyEncoder.decode(encodedObject, {str: {}, array: {}}) | ||
const decodedObject = objectPropertyEncoder.decode(encodedObject, encodedObject.base64EncoderConfig) | ||
assertObjectEqual(objectToEncode, decodedObject) | ||
@@ -50,3 +52,3 @@ }) | ||
} | ||
const encodedObject = objectPropertyEncoder.encode(objectToEncode, { | ||
const encoderConfig = { | ||
str: {}, | ||
@@ -56,3 +58,4 @@ array: {type: 'array'}, | ||
foobar: {type: 'object'} | ||
}) | ||
} | ||
const encodedObject = objectPropertyEncoder.encode(objectToEncode, encoderConfig) | ||
assertObjectEqual({ | ||
@@ -62,10 +65,6 @@ str: 'Zm9v', | ||
bar: 'eyJiYXoiOiJiYXoifQ==', | ||
untouched: 123 | ||
untouched: 123, | ||
base64EncoderConfig: encoderConfig | ||
}, encodedObject) | ||
const decodedObject = objectPropertyEncoder.decode(encodedObject, { | ||
str: {}, | ||
array: {type: 'array'}, | ||
bar: {type: 'object'}, | ||
foobar: {type: 'object'} | ||
}) | ||
const decodedObject = objectPropertyEncoder.decode(encodedObject, encodedObject.base64EncoderConfig) | ||
assertObjectEqual(objectToEncode, decodedObject) | ||
@@ -81,3 +80,3 @@ }) | ||
} | ||
const encodedObject = objectPropertyEncoder.encode(objectToEncode, { | ||
const encoderConfig = { | ||
str: {}, | ||
@@ -87,3 +86,4 @@ array: {type: 'array'}, | ||
foobar: {type: 'object'} | ||
}) | ||
} | ||
const encodedObject = objectPropertyEncoder.encode(objectToEncode, encoderConfig) | ||
assertObjectEqual({ | ||
@@ -93,12 +93,8 @@ str: 'Zm9v', | ||
bar: 'null', | ||
untouched: 123 | ||
untouched: 123, | ||
base64EncoderConfig: encoderConfig | ||
}, encodedObject) | ||
const decodedObject = objectPropertyEncoder.decode(encodedObject, { | ||
str: {}, | ||
array: {type: 'array'}, | ||
bar: {type: 'object'}, | ||
foobar: {type: 'object'} | ||
}) | ||
const decodedObject = objectPropertyEncoder.decode(encodedObject, encodedObject.base64EncoderConfig) | ||
assertObjectEqual(objectToEncode, decodedObject) | ||
}) | ||
}) |
'use strict' | ||
const _ = require('lodash') | ||
const assert = require('assert') | ||
@@ -21,8 +22,14 @@ class ObjectPropertyBase64Encoder { | ||
returnObject.base64EncoderConfig = fieldListConfiguration | ||
return returnObject | ||
} | ||
decode(object, fieldListConfiguration) { | ||
decode(object, encoderConfiguraiton) { | ||
const returnObject = _.clone(object) | ||
_.each(_.keys(fieldListConfiguration), (field) => { | ||
const fieldListConfiguration = encoderConfiguraiton || object.base64EncoderConfig | ||
assert.ok(fieldListConfiguration, 'could not find an encoder configuration to decode with') | ||
_.each(_.keys(fieldListConfiguration), (field) => { | ||
const type = _.get(fieldListConfiguration[field], 'type') | ||
@@ -40,2 +47,3 @@ if (type && _.includes(['object', 'array'], type)) { | ||
delete returnObject.base64EncoderConfig | ||
return returnObject | ||
@@ -42,0 +50,0 @@ } |
{ | ||
"name": "json-ascii", | ||
"version": "3.3.2", | ||
"version": "3.3.3", | ||
"description": "encodes and decodes utf8 four byte characters", | ||
@@ -37,4 +37,5 @@ "main": "json-ascii.js", | ||
"dependencies": { | ||
"assert": "1.4.1", | ||
"lodash": "4.17.4" | ||
} | ||
} |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
10492
259
2
+ Addedassert@1.4.1
+ Addedassert@1.4.1(transitive)
+ Addedinherits@2.0.1(transitive)
+ Addedutil@0.10.3(transitive)