UNPKG

33.7 kBSource Map (JSON)View Raw
1{
2 "version": 3,
3 "file": "",
4 "sourceRoot": "",
5 "sources": [
6 "../src/tests.coffee"
7 ],
8 "names": [],
9 "mappings": "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",
10 "sourcesContent": [
11 "\n\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#...........................................................................................................\ntest = require 'guy-test'\nCODEC = require './main'\nƒ = CND.format_number\n{ jr, } = CND\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 (1)\" ] = ( T ) ->\n value = '/etc/cron.d/anacron'\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 # debug CODEC.rpr_of_buffer key_bfr\n # debug CODEC.decode key_bfr\n # debug decoded_key\n T.eq matcher, decoded_key\n\n#-----------------------------------------------------------------------------------------------------------\n@_sets_are_equal = ( a, b ) ->\n ### TAINT doesn't work for (sub-) elements that are sets or maps ###\n return false unless ( CODEC.types.isa.set a ) and ( CODEC.types.isa.set b )\n return false unless a.size is b.size\n a_keys = a.keys()\n b_keys = b.keys()\n loop\n { value: a_value, done: a_done, } = a_keys.next()\n { value: b_value, done: b_done, } = b_keys.next()\n break if a_done or b_done\n return false unless CODEC.types.equals a_value, b_value\n return true\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"codec decodes private type with custom decoder (2)\" ] = ( T ) ->\n value = new Set 'qwert'\n matcher = [ value, ]\n encoded_value = Array.from value\n key = [ { type: 'set', value: encoded_value, }, ]\n key_bfr = CODEC.encode key\n #.........................................................................................................\n decoded_key = CODEC.decode key_bfr, ( type, value ) ->\n return new Set value if type is 'set'\n throw new Error \"unknown private type #{rpr type}\"\n #.........................................................................................................\n # debug CODEC.rpr_of_buffer key_bfr\n # debug CODEC.decode key_bfr\n # debug decoded_key\n # debug matcher\n T.ok @_sets_are_equal matcher[ 0 ], decoded_key[ 0 ]\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"Support for Sets\" ] = ( T ) ->\n key = [ ( new Set 'qwert' ), ]\n matcher = [ ( new Set 'qwert' ), ]\n key_bfr = CODEC.encode key\n decoded_key = CODEC.decode key_bfr\n # debug CODEC.rpr_of_buffer key_bfr\n # debug CODEC.decode key_bfr\n # debug decoded_key\n # debug matcher\n T.ok @_sets_are_equal matcher[ 0 ], decoded_key[ 0 ]\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"codec decodes private type with custom encoder and decoder (3)\" ] = ( 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@[ \"test: flat file DB storage (1)\" ] = ( T ) ->\n probes = [\n [ 'foo', -Infinity, ]\n [ 'foo', -1e12, ]\n [ 'foo', -3, ]\n [ 'foo', -2, ]\n [ 'foo', -1, ]\n [ 'foo', 1, ]\n [ 'foo', 2, ]\n [ 'foo', 3, ]\n [ 'foo', 1e12, ]\n [ 'foo', Infinity, ]\n [ 'bar', 'blah', ]\n [ 'bar', 'gnu', ]\n [ 'a', ]\n [ 'b', ]\n [ 'c', ]\n [ 'A', ]\n [ '箲' ]\n [ '筅' ]\n [ '𥬗' ]\n [ 'B', ]\n [ 'C', ]\n [ '0', ]\n [ '1', ]\n [ '2', ]\n [ 'Number', Number.EPSILON, 'EPSILON', ]\n [ 'Number', Number.MAX_SAFE_INTEGER, 'MAX_SAFE_INTEGER', ]\n [ 'Number', Number.MAX_VALUE, 'MAX_VALUE', ]\n [ 'Number', 0, 'ZERO', ]\n [ 'Number', Number.MIN_SAFE_INTEGER, 'MIN_SAFE_INTEGER', ]\n [ 'Number', Number.MIN_VALUE, 'MIN_VALUE', ]\n ]\n buffer_as_text = ( buffer ) ->\n R = []\n for idx in [ 0 ... buffer.length ]\n R.push String.fromCodePoint 0x2800 + buffer[ idx ]\n # R.push String.fromCodePoint 0x2800 while R.length < 32\n # R.push ' ' while R.length < 32\n return R.join ''\n probes = ( [ ( buffer_as_text CODEC.encode probe ), JSON.stringify probe, ] for probe in probes )\n probes.sort ( a, b ) ->\n return -1 if a[ 0 ] < b[ 0 ]\n return +1 if a[ 0 ] > b[ 0 ]\n return 0\n for probe in probes\n urge probe.join ' - '\n # for probe in probes\n # probe_txt = JSON.stringify probe\n # key_txt = buffer_as_text CODEC.encode probe\n # debug '33301', \"#{key_txt} - #{probe_txt}\"\n urge \"use `( export LC_ALL=C && sort hollerith-codec-flatfile-db.txt ) | less -SRN`\"\n urge \"to sort a file with these lines\"\n return null\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"test: flat file DB storage (2)\" ] = ( T ) ->\n probes_and_matchers = [\n [[\"foo\",-1000000000000],\"⡔⡦⡯⡯⠀⡋⢽⢒⣥⡫⡝⣿⣿⣿![\\\"foo\\\",-1000000000000]\"]\n [[\"foo\",-3],\"⡔⡦⡯⡯⠀⡋⢿⣷⣿⣿⣿⣿⣿⣿![\\\"foo\\\",-3]\"]\n [[\"foo\",-2],\"⡔⡦⡯⡯⠀⡋⢿⣿⣿⣿⣿⣿⣿⣿![\\\"foo\\\",-2]\"]\n [[\"foo\",-1],\"⡔⡦⡯⡯⠀⡋⣀⠏⣿⣿⣿⣿⣿⣿![\\\"foo\\\",-1]\"]\n [[\"foo\",1],\"⡔⡦⡯⡯⠀⡍⠿⣰⠀⠀⠀⠀⠀⠀![\\\"foo\\\",1]\"]\n [[\"foo\",2],\"⡔⡦⡯⡯⠀⡍⡀⠀⠀⠀⠀⠀⠀⠀![\\\"foo\\\",2]\"]\n [[\"foo\",3],\"⡔⡦⡯⡯⠀⡍⡀⠈⠀⠀⠀⠀⠀⠀![\\\"foo\\\",3]\"]\n [[\"foo\",1000000000000],\"⡔⡦⡯⡯⠀⡍⡂⡭⠚⢔⢢⠀⠀⠀![\\\"foo\\\",1000000000000]\"]\n [[\"bar\",\"blah\"],\"⡔⡢⡡⡲⠀⡔⡢⡬⡡⡨⠀![\\\"bar\\\",\\\"blah\\\"]\"]\n [[\"bar\",\"gnu\"],\"⡔⡢⡡⡲⠀⡔⡧⡮⡵⠀![\\\"bar\\\",\\\"gnu\\\"]\"]\n [[\"a\"],\"⡔⡡⠀![\\\"a\\\"]\"]\n [[\"b\"],\"⡔⡢⠀![\\\"b\\\"]\"]\n [[\"c\"],\"⡔⡣⠀![\\\"c\\\"]\"]\n [[\"A\"],\"⡔⡁⠀![\\\"A\\\"]\"]\n [[\"箲\"],\"⡔⣧⢮⢲⠀![\\\"箲\\\"]\"]\n [[\"筅\"],\"⡔⣧⢭⢅⠀![\\\"筅\\\"]\"]\n [[\"𥬗\"],\"⡔⣰⢥⢬⢗⠀![\\\"𥬗\\\"]\"]\n [[\"B\"],\"⡔⡂⠀![\\\"B\\\"]\"]\n [[\"C\"],\"⡔⡃⠀![\\\"C\\\"]\"]\n [[\"0\"],\"⡔⠰⠀![\\\"0\\\"]\"]\n [[\"1\"],\"⡔⠱⠀![\\\"1\\\"]\"]\n [[\"2\"],\"⡔⠲⠀![\\\"2\\\"]\"]\n [[\"Number\",2.220446049250313e-16,\"EPSILON\"],\"⡔⡎⡵⡭⡢⡥⡲⠀⡍⠼⢰⠀⠀⠀⠀⠀⠀⡔⡅⡐⡓⡉⡌⡏⡎⠀![\\\"Number\\\",2.220446049250313e-16,\\\"EPSILON\\\"]\"]\n [[\"Number\",9007199254740991,\"MAX_SAFE_INTEGER\"],\"⡔⡎⡵⡭⡢⡥⡲⠀⡍⡃⠿⣿⣿⣿⣿⣿⣿⡔⡍⡁⡘⡟⡓⡁⡆⡅⡟⡉⡎⡔⡅⡇⡅⡒⠀![\\\"Number\\\",9007199254740991,\\\"MAX_SAFE_INTEGER\\\"]\"]\n [[\"Number\",1.7976931348623157e+308,\"MAX_VALUE\"],\"⡔⡎⡵⡭⡢⡥⡲⠀⡍⡿⣯⣿⣿⣿⣿⣿⣿⡔⡍⡁⡘⡟⡖⡁⡌⡕⡅⠀![\\\"Number\\\",1.7976931348623157e+308,\\\"MAX_VALUE\\\"]\"]\n [[\"Number\",0,\"ZERO\"],\"⡔⡎⡵⡭⡢⡥⡲⠀⡍⠀⠀⠀⠀⠀⠀⠀⠀⡔⡚⡅⡒⡏⠀![\\\"Number\\\",0,\\\"ZERO\\\"]\"]\n [[\"Number\",-9007199254740991,\"MIN_SAFE_INTEGER\"],\"⡔⡎⡵⡭⡢⡥⡲⠀⡋⢼⣀⠀⠀⠀⠀⠀⠀⡔⡍⡉⡎⡟⡓⡁⡆⡅⡟⡉⡎⡔⡅⡇⡅⡒⠀![\\\"Number\\\",-9007199254740991,\\\"MIN_SAFE_INTEGER\\\"]\"]\n [[\"Number\",5e-324,\"MIN_VALUE\"],\"⡔⡎⡵⡭⡢⡥⡲⠀⡍⠀⠀⠀⠀⠀⠀⠀⠁⡔⡍⡉⡎⡟⡖⡁⡌⡕⡅⠀![\\\"Number\\\",5e-324,\\\"MIN_VALUE\\\"]\"]\n ]\n # stringify = ( x ) -> ( require 'util' ).inspect x, { maxArrayLength: null, breakLength: Infinity, }\n stringify = jr\n # settings = { stringify, base: 0x1e00, }\n # settings = { stringify, base: 0x2200, }\n # settings = { stringify, base: 0x2600, }\n # settings = { stringify, base: 0xac00, }\n # settings = { stringify, base: 0xa000, }\n # settings = { stringify, base: 0x1d6a8, }\n settings = { stringify, joiner: '!', }\n for [ probe, matcher, ] in probes_and_matchers\n result = CODEC.as_sortline probe, settings\n debug '33392', stringify [ probe, result, ]\n T.eq result, matcher\n return null\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"test: flat file DB storage (3)\" ] = ( T ) ->\n stringify = ( x ) -> ( require 'util' ).inspect x, { maxArrayLength: null, breakLength: Infinity, }\n probes_and_matchers = [\n [ [ 'foo', 1234 ], { bare: false, joiner: ',', base: 19968 }, '乔书乯乯一乍乀亓么一一一一一,[\"foo\",1234]' ]\n [ [ 'foo', 1234 ], { bare: true, joiner: ',', base: null }, '⡔⡦⡯⡯⠀⡍⡀⢓⡈⠀⠀⠀⠀⠀' ]\n ]\n for [ probe, settings, matcher, ] in probes_and_matchers\n result = CODEC.as_sortline probe, settings\n debug '33392', stringify [ probe, settings, result, ]\n T.eq result, matcher\n # echo result\n return null\n\n\n# #-----------------------------------------------------------------------------------------------------------\n# @[ \"buffers\" ] = ( T ) ->\n# debug 'µ76776-1', d = Buffer.from 'hällo wörld'\n# debug 'µ76776-2', key_bfr = CODEC.encode [ d, ]\n# debug 'µ76776-3', decoded_key = CODEC.decode key_bfr\n # debug CODEC.rpr_of_buffer key_bfr\n # debug CODEC.decode key_bfr\n # debug decoded_key\n # debug matcher\n # T.ok @_sets_are_equal matcher[ 0 ], decoded_key[ 0 ]\n\n\n#-----------------------------------------------------------------------------------------------------------\n@[ \"test: ordering where negatives precede void\" ] = ( T ) ->\n probes = [\n [-10,]\n [10,]\n [10,0]\n [10,-1]\n [10,-2]\n [10,1]\n [10,2]\n [10,4]\n [10,4,0]\n [10,4,-1]\n [10,4,-2]\n [10,4,1]\n [10,4,2]\n [10,0,3]\n [10,-1,3]\n [10,-2,3]\n [10,1,3]\n [10,2,3]\n []\n [0]\n [-1]\n [1]\n [1,0]\n [1,-1]\n [1,1]\n ]\n buffer_as_text = ( buffer ) -> buffer.toString 'hex'\n jrx = ( x ) -> ( JSON.stringify x ).padEnd 15\n encode = ( x ) -> buffer_as_text CODEC.encode x\n results = ( [ ( jrx probe ), ( probe ), ( encode probe ), ] for probe in probes )\n results.sort ( a, b ) ->\n return -1 if a[ 2 ] < b[ 2 ]\n return +1 if a[ 2 ] > b[ 2 ]\n return 0\n for result in results\n urge result[ 0 ] + ' ... ' + result[ 2 ]\n results = ( result[ 1 ] for result in results )\n T.eq results, [[-10],[-1],[],[0],[1,-1],[1],[1,0],[1,1],[10,-2],[10,-2,3],[10,-1],[10,-1,3],[10],[10,0],[10,0,3],[10,1],[10,1,3],[10,2],[10,2,3],[10,4,-2],[10,4,-1],[10,4],[10,4,0],[10,4,1],[10,4,2]]\n return null\n\n\n############################################################################################################\nunless module.parent?\n test @\n # test @[ \"test: ordering where negatives precede void\" ]\n\n # buffer_as_text = ( buffer ) -> buffer.toString 'hex'\n # jrx = ( x ) -> ( JSON.stringify x ).padEnd 15\n # encode = ( x ) -> CODEC.encode x\n # decode = ( x ) -> CODEC.decode x\n # info ( buffer_as_text blob = encode [ 10, -3, ] ), ( decode blob )\n # info ( buffer_as_text blob = encode [ 10, -2, ] ), ( decode blob )\n # info ( buffer_as_text blob = encode [ 10, -1, ] ), ( decode blob )\n # info ( buffer_as_text blob = encode [ 10, ] ), ( decode blob )\n # info ( buffer_as_text blob = encode [ 10, 0, ] ), ( decode blob )\n # info ( buffer_as_text blob = encode [ 10, 1, ] ), ( decode blob )\n\n\n\n\n"
12 ]
13}
\No newline at end of file