UNPKG

13.5 kBSource Map (JSON)View Raw
1{"version":3,"sources":["tests.coffee"],"names":[],"mappings":"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","file":"tests.js","sourceRoot":"/source/","sourcesContent":["\n\n############################################################################################################\n# njs_path = require 'path'\n# # njs_fs = require 'fs'\n# join = njs_path.join\n#...........................................................................................................\nCND = require 'cnd'\nrpr = CND.rpr\nbadge = 'HOLLERITH-CODEC/tests'\nlog = CND.get_logger 'plain', badge\ninfo = CND.get_logger 'info', badge\nwhisper = CND.get_logger 'whisper', badge\nalert = CND.get_logger 'alert', badge\ndebug = CND.get_logger 'debug', badge\nwarn = CND.get_logger 'warn', badge\nhelp = CND.get_logger 'help', badge\nurge = CND.get_logger 'urge', badge\necho = CND.echo.bind CND\n#...........................................................................................................\n# suspend = require 'coffeenode-suspend'\n# step = suspend.step\n# ### TAINT experimentally using `later` in place of `setImmediate` ###\n# later = suspend.immediately\n#...........................................................................................................\ntest = require 'guy-test'\nCODEC = require './main'\nƒ = CND.format_number\n\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"codec encodes and decodes numbers\" ] = ( T ) ->\n key = [ 'foo', 1234, 5678, ]\n key_bfr = CODEC.encode key\n T.eq key, CODEC.decode key_bfr\n whisper \"key length: #{key_bfr.length}\"\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"codec encodes and decodes dates\" ] = ( T ) ->\n key = [ 'foo', ( new Date() ), 5678, ]\n key_bfr = CODEC.encode key\n T.eq key, CODEC.decode key_bfr\n whisper \"key length: #{key_bfr.length}\"\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"codec accepts long numbers\" ] = ( T ) ->\n key = [ 'foo', ( i for i in [ 0 .. 1000 ] ), 'bar', ]\n key_bfr = CODEC.encode key\n T.eq key, CODEC.decode key_bfr\n whisper \"key length: #{key_bfr.length}\"\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"codec accepts long texts\" ] = ( T ) ->\n long_text = ( new Array 1e4 ).join '#'\n key = [ 'foo', [ long_text, long_text, long_text, long_text, ], 42, ]\n key_bfr = CODEC.encode key\n T.eq key, CODEC.decode key_bfr\n whisper \"key length: #{key_bfr.length}\"\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"codec preserves critical escaped characters (roundtrip) (1)\" ] = ( T ) ->\n text = 'abc\\x00\\x00\\x00\\x00def'\n key = [ 'xxx', [ text, ], 0, ]\n key_bfr = CODEC.encode key\n T.eq key, CODEC.decode key_bfr\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"codec preserves critical escaped characters (roundtrip) (2)\" ] = ( T ) ->\n text = 'abc\\x01\\x01\\x01\\x01def'\n key = [ 'xxx', [ text, ], 0, ]\n key_bfr = CODEC.encode key\n T.eq key, CODEC.decode key_bfr\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"codec preserves critical escaped characters (roundtrip) (3)\" ] = ( T ) ->\n text = 'abc\\x00\\x01\\x00\\x01def'\n key = [ 'xxx', [ text, ], 0, ]\n key_bfr = CODEC.encode key\n T.eq key, CODEC.decode key_bfr\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"codec preserves critical escaped characters (roundtrip) (4)\" ] = ( T ) ->\n text = 'abc\\x01\\x00\\x01\\x00def'\n key = [ 'xxx', [ text, ], 0, ]\n key_bfr = CODEC.encode key\n T.eq key, CODEC.decode key_bfr\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"codec accepts private type (1)\" ] = ( T ) ->\n key = [ { type: 'price', value: 'abc', }, ]\n key_bfr = CODEC.encode key\n T.eq key, CODEC.decode key_bfr\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"codec accepts private type (2)\" ] = ( T ) ->\n key = [ 123, 456, { type: 'price', value: 'abc', }, 'xxx', ]\n key_bfr = CODEC.encode key\n T.eq key, CODEC.decode key_bfr\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"codec decodes private type with custom decoder\" ] = ( T ) ->\n value = '/usr/local/lib/node_modules/coffee-script/README.md'\n matcher = [ value, ]\n encoded_value = value.split '/'\n key = [ { type: 'route', value: encoded_value, }, ]\n key_bfr = CODEC.encode key\n #.........................................................................................................\n decoded_key = CODEC.decode key_bfr, ( type, value ) ->\n return value.join '/' if type is 'route'\n throw new Error \"unknown private type #{rpr type}\"\n #.........................................................................................................\n T.eq matcher, decoded_key\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"codec decodes private type with custom encoder and decoder\" ] = ( T ) ->\n route = '/usr/local/lib/node_modules/coffee-script/README.md'\n parts = route.split '/'\n key = [ { type: 'route', value: route, }, ]\n matcher_1 = [ { type: 'route', value: parts, }]\n matcher_2 = [ route, ]\n #.........................................................................................................\n encoder = ( type, value ) ->\n return value.split '/' if type is 'route'\n throw new Error \"unknown private type #{rpr type}\"\n #.........................................................................................................\n decoder = ( type, value ) ->\n return value.join '/' if type is 'route'\n throw new Error \"unknown private type #{rpr type}\"\n #.........................................................................................................\n key_bfr = CODEC.encode key, encoder\n debug '©T4WKz', CODEC.rpr_of_buffer key_bfr\n decoded_key_1 = CODEC.decode key_bfr\n T.eq matcher_1, decoded_key_1\n decoded_key_2 = CODEC.decode key_bfr, decoder\n T.eq matcher_2, decoded_key_2\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"private type takes default shape when handler returns use_fallback\" ] = ( T ) ->\n matcher = [ 84, { type: 'bar', value: 108, }, ]\n key = [ { type: 'foo', value: 42, }, { type: 'bar', value: 108, }, ]\n key_bfr = CODEC.encode key\n #.........................................................................................................\n decoded_key = CODEC.decode key_bfr, ( type, value, use_fallback ) ->\n return value * 2 if type is 'foo'\n return use_fallback\n #.........................................................................................................\n T.eq matcher, decoded_key\n\n\n#-----------------------------------------------------------------------------------------------------------\n@_main = ->\n test @, 'timeout': 2500\n\n\n\n\n\n\n\n"]}
\No newline at end of file