UNPKG

vdf

Version:

A port of steamodd's vdf.py to node.js.

167 lines (144 loc) 3.2 kB
/* nodeunit test for vdf.js */ /*jshint multistr: true */ var vdf = require("./index"); /* De-serialization */ var UNQUOTED_VDF = "\n\ node \n\ { \n\ key value \n\ } \n\ ", QUOTED_VDF = " \n\ \"node\" \n\ { \n\ \"key\" \"value\" \n\ } \n\ ", MACRO_UNQUOTED_VDF = " \n\ node \n\ { \n\ key value [$MACRO] \n\ } \n\ ", MACRO_QUOTED_VDF = " \n\ \"node\" \n\ { \n\ \"key\" \"value\" [$MACRO] \n\ } \n\ ", COMMENT_QUOTED_VDF = " \n\ \"node\" \n\ { \n\ // Hi I'm a comment. \n\ \"key\" \"value\" [$MACRO] \n\ } \n\ ", SUBNODE_QUOTED_VDF = " \n\ \"node\" \n\ { \n\ \"subnode\" \n\ { \n\ \"key\" \"value\" \n\ } \n\ } \n\ ", MIXED_VDF = " \n\ node \n\ { \n\ \"key\" value \n\ key2 \"value\" \n\ \"key3\" \"value\" [$MACRO] \n\ \n\ // Comment \n\ \"subnode\" [$MACRO] \n\ { \n\ key value \n\ } \n\ \n\ \"key4\" \"value\" \n\ } \n\ ", /* Expectations */ EXPECTED_UNQUOTED_VDF = { "node": { "key": "value" } }, EXPECTED_QUOTED_VDF = EXPECTED_UNQUOTED_VDF, EXPECTED_MACRO_UNQUOTED_VDF = EXPECTED_UNQUOTED_VDF, EXPECTED_MACRO_QUOTED_VDF = EXPECTED_UNQUOTED_VDF, EXPECTED_COMMENT_QUOTED_VDF = EXPECTED_UNQUOTED_VDF, EXPECTED_SUBNODE_QUOTED_VDF = { "node": { "subnode": { "key": "value" } } }, EXPECTED_MIXED_VDF = { "node": { "key": "value", "key2": "value", "key3": "value", "subnode": { "key": "value" }, "key4": "value" } }; /* Serialization */ var SIMPLE_OBJ = EXPECTED_UNQUOTED_VDF, SUBNODE_OBJ = EXPECTED_SUBNODE_QUOTED_VDF, ARRAY_OBJ = { "array": [ "a", "b", "c"] }, NUMERICAL_OBJ = { "number": 1, "number2": 2 }, COMBINATION_OF_ABOVE_OBJ = { "node": { "key": "value", "subnode": { "key": "value" }, "array": ["a", "b", "c", 1, 2, 3], "number": 1024 } }, /* Expectations */ EXPECTED_SIMPLE_OBJ = SIMPLE_OBJ, EXPECTED_SUBNODE_OBJ = SUBNODE_OBJ, EXPECTED_ARRAY_OBJ = { "array": { "a": "1", "b": "1", "c": "1" } }, EXPECTED_NUMERICAL_OBJ = { "number": "1", "number2": "2" }, EXPECTED_COMBINATION_OF_ABOVE_OBJ = { "node": { "key": "value", "subnode": { "key": "value" }, "array": { "a": "1", "b": "1", "c": "1", "1": "1", "2": "1", "3": "1" }, "number": "1024" } }; var obj = vdf.dump(ARRAY_OBJ); console.log(JSON.stringify(vdf.parse(obj)));