local mNts = require('Module:Number table sorting') -- the module to be testedlocal Nts = mNts._exportClasses.Nts -- the Nts classlocal ScribuntoUnit = require('Module:ScribuntoUnit')local suite = ScribuntoUnit:new
--------------------------------------------------------------------------------- Helper functions and values-------------------------------------------------------------------------------
suite.offValues = suite.onValues = local function makeOnOffAsserts(fragment) suite['assert' .. fragment .. 'WhenOn'] = function (self, first, func, ...) for i, on in ipairs(suite.onValues) do self['assert' .. fragment](self, first, func(on), ...) end end suite['assert' .. fragment .. 'WhenOff'] = function (self, first, func, ...) for i, off in ipairs(suite.offValues) do self['assert' .. fragment](self, first, func(off), ...) end endendmakeOnOffAsserts('Equals')makeOnOffAsserts('StringContains')makeOnOffAsserts('NotStringContains')
function suite:assertErrorContains(pattern, func, plain) local success, msg = pcall(func) self:assertFalse(success) self:assertStringContains(pattern, msg, plain)end
function suite:assertParsedNumberEquals(expected,aString) local ntsObj = Nts.new ntsObj:parseNumber(aString) self:assertEquals(expected, ntsObj.number)end
function suite:assertSortKeyEquals(expected, args) local ntsObj = Nts.new(args) self:assertEquals(expected, ntsObj:makeSortKey)end
function suite:assertDisplayEquals(expected, args) local ntsObj = Nts.new(args) self:assertEquals(expected, ntsObj:makeDisplay)end
--------------------------------------------------------------------------------- parseNumber tests-------------------------------------------------------------------------------
function suite:testParseNumbers suite:assertParsedNumberEquals(1, ' 1 ') suite:assertParsedNumberEquals(1, '1') suite:assertParsedNumberEquals(-1, '-1') suite:assertParsedNumberEquals(0.1, '0.1') suite:assertParsedNumberEquals(0.1, '.1') suite:assertParsedNumberEquals(-0.1, '-0.1') suite:assertParsedNumberEquals(-0.1, '-.1') suite:assertParsedNumberEquals(1000,'1000') suite:assertParsedNumberEquals(1000,'1,000') suite:assertParsedNumberEquals(12345678901234567890, '12345678901234567890') suite:assertParsedNumberEquals(12345678901234567890, '12,345,678,901,234,567,890') suite:assertParsedNumberEquals(10345678901234567.12345678, '10345678901234567.12345678') suite:assertParsedNumberEquals(-10345678901234567.12345678, '-10345678901234567.12345678') suite:assertParsedNumberEquals(5.4321e10, '5.4321e10') suite:assertParsedNumberEquals(-5.4321e10, '-5.4321e10') suite:assertParsedNumberEquals(5.4321e-10, '5.4321e-10') suite:assertParsedNumberEquals(-5.4321e-10, '-5.4321e-10') suite:assertParsedNumberEquals(math.huge, '5.4321e308') suite:assertParsedNumberEquals(-math.huge, '-5.4321e308')end
function suite:testParseMinusSigns suite:assertParsedNumberEquals(-1, '−1') suite:assertParsedNumberEquals(-1, '-1') suite:assertParsedNumberEquals(1e-1, '1e−1') suite:assertParsedNumberEquals(1e-1, '1e-1')end
function suite:testInvalidNumbers suite:assertErrorContains("'a1' is not a valid number", function Nts.new end) suite:assertErrorContains("Fractions are not supported", function Nts.new end)end
--------------------------------------------------------------------------------- Sort key tests-------------------------------------------------------------------------------
function suite:testSortKeyLimits suite:assertSortKeyEquals('5000000000000000000♠',) suite:assertSortKeyEquals('5000000000000000000♠',) suite:assertSortKeyEquals('5000000000000000000♠',) suite:assertSortKeyEquals('9000000000000000000♠',) suite:assertSortKeyEquals('1000000000000000000♠',)end
function suite:testSortKeys suite:assertSortKeyEquals('7009123456789000000♠',) suite:assertSortKeyEquals('7010123456789010000♠',) suite:assertSortKeyEquals('7011123456789012000♠',) suite:assertSortKeyEquals('7012123456789012300♠',) suite:assertSortKeyEquals('7013123456789012340♠',) suite:assertSortKeyEquals('7014123456789012345♠',) suite:assertSortKeyEquals('7015123456789012345♠',) suite:assertSortKeyEquals('7016123456789012345♠',) suite:assertSortKeyEquals('7017123456789012345♠',) suite:assertSortKeyEquals('7018123456789012345♠',) suite:assertSortKeyEquals('7019123456789012345♠',) suite:assertSortKeyEquals('7002456123456000000♠',)-- suite:assertSortKeyEquals('2997543876544099999♠',) incorrect original testvalue suite:assertSortKeyEquals('2997543876543999999♠',) -- still incorrect, should be 2997543876544000000 suite:assertSortKeyEquals('7015234567890123456♠',) suite:assertSortKeyEquals('7005123456000000000♠',) suite:assertSortKeyEquals('7005123456000000000♠',) suite:assertSortKeyEquals('6999543210000000000♠',) suite:assertSortKeyEquals('6989543210000000000♠',) suite:assertSortKeyEquals('6899543210000000000♠',)-- suite:assertSortKeyEquals('6799543219999999999♠',) original incorrect test value suite:assertSortKeyEquals('6799543209999999999♠',) -- still incorrect-- suite:assertSortKeyEquals('6699543200000000000♠',) suite:assertSortKeyEquals('7010543210000000000♠',) suite:assertSortKeyEquals('7020543210000000000♠',)-- suite:assertSortKeyEquals('7030543210000000000♠',) original correct test value suite:assertSortKeyEquals('7030543209999999999♠',) -- no longer correct value-- suite:assertSortKeyEquals('7100543200000000000♠',) original incorrect test value suite:assertSortKeyEquals('7100543210000000000♠',)-- suite:assertSortKeyEquals('7200543210000099999♠',) original test value suite:assertSortKeyEquals('7200543209999999999♠',) -- almost correct suite:assertSortKeyEquals('7300543210000000000♠',) suite:assertSortKeyEquals('9000000000000000000♠',) suite:assertSortKeyEquals('2989456790000000000♠',) suite:assertSortKeyEquals('2979456790000000000♠',)-- suite:assertSortKeyEquals('2969456789999999999♠',) original test value suite:assertSortKeyEquals('2969456790000000000♠',) -- correct-- suite:assertSortKeyEquals('2899456780000000000♠',) original test value suite:assertSortKeyEquals('2899456790000000000♠',) -- correct-- suite:assertSortKeyEquals('2799456789999999999♠',) original test value suite:assertSortKeyEquals('2799456790000000000♠',) -- correct suite:assertSortKeyEquals('2699456790000000000♠',) suite:assertSortKeyEquals('1000000000000000000♠',) suite:assertSortKeyEquals('6990543210000000000♠',) suite:assertSortKeyEquals('6980543210000000000♠',) suite:assertSortKeyEquals('6970543210000000000♠',) suite:assertSortKeyEquals('6900543210000000000♠',) suite:assertSortKeyEquals('6800543210000000000♠',)-- suite:assertSortKeyEquals('6700543210000000000♠',) suite:assertSortKeyEquals('5000000000000000000♠',) suite:assertSortKeyEquals('3009456790000000000♠',) suite:assertSortKeyEquals('3019456789999999999♠',)-- suite:assertSortKeyEquals('3029456790000000000♠',) original test value suite:assertSortKeyEquals('3029456789999999999♠',) -- almost-- suite:assertSortKeyEquals('3099456789999999999♠',) original test value suite:assertSortKeyEquals('3099456790000000000♠',) -- correct-- suite:assertSortKeyEquals('3199456780000099999♠',) original test value suite:assertSortKeyEquals('3199456789999999999♠',) -- almost suite:assertSortKeyEquals('3299456780000000000♠',) suite:assertSortKeyEquals('5000000000000000000♠',) suite:assertSortKeyEquals('6993100000000000000♠',) suite:assertSortKeyEquals('6993600000000000000♠',) suite:assertSortKeyEquals('6993300000000000000♠',) suite:assertSortKeyEquals('6993900000000000000♠',) suite:assertSortKeyEquals('6993200000000000000♠',) suite:assertSortKeyEquals('6993500000000000000♠',) suite:assertSortKeyEquals('6993400000000000000♠',) suite:assertSortKeyEquals('6993700000000000000♠',) suite:assertSortKeyEquals('6993800000000000000♠',) suite:assertSortKeyEquals('5000000000000000000♠',) suite:assertSortKeyEquals('3006900000000000000♠',) suite:assertSortKeyEquals('3006400000000000000♠',) suite:assertSortKeyEquals('3006700000000000000♠',) suite:assertSortKeyEquals('3006100000000000000♠',) suite:assertSortKeyEquals('3006800000000000000♠',) suite:assertSortKeyEquals('3006500000000000000♠',) suite:assertSortKeyEquals('3006600000000000000♠',) suite:assertSortKeyEquals('3006300000000000000♠',) suite:assertSortKeyEquals('3006200000000000000♠',)end
function suite:testSortKeys2 suite:assertSortKeyEquals('3000900000000000000♠',) suite:assertSortKeyEquals('3000800000000000000♠',) suite:assertSortKeyEquals('3000700000000000000♠',) suite:assertSortKeyEquals('3000600000000000000♠',) suite:assertSortKeyEquals('3000500000000000000♠',) suite:assertSortKeyEquals('3000400000000000000♠',) suite:assertSortKeyEquals('3000300000000000000♠',) suite:assertSortKeyEquals('3000199999999999999♠',) suite:assertSortKeyEquals('3000099999999999999♠',) suite:assertSortKeyEquals('2999900000000000000♠',) suite:assertSortKeyEquals('2999800000000000000♠',) suite:assertSortKeyEquals('2999700000000000000♠',) suite:assertSortKeyEquals('2999600000000000000♠',) suite:assertSortKeyEquals('2999500000000000000♠',) suite:assertSortKeyEquals('2999400000000000000♠',) suite:assertSortKeyEquals('2999300000000000000♠',) suite:assertSortKeyEquals('2999200000000000000♠',) suite:assertSortKeyEquals('2999100000000000000♠',) suite:assertSortKeyEquals('2983896543210987654♠',) suite:assertSortKeyEquals('7016103456789012345♠',) suite:assertSortKeyEquals('2983896543210987654♠',) suite:assertSortKeyEquals('7016103456789012345♠',) suite:assertSortKeyEquals('5000000000000000000♠',) suite:assertSortKeyEquals('6994900000000000000♠',) suite:assertSortKeyEquals('3005099999999999999♠',) suite:assertSortKeyEquals('3005899999999999999♠',) suite:assertSortKeyEquals('3005800000000000000♠',) suite:assertSortKeyEquals('3005699999999999999♠',) suite:assertSortKeyEquals('3005599999999999999♠',) suite:assertSortKeyEquals('6994100000000000000♠',) suite:assertSortKeyEquals('6994200000000000000♠',) suite:assertSortKeyEquals('6994300000000000000♠',) suite:assertSortKeyEquals('6994400000000000000♠',) suite:assertSortKeyEquals('3005499999999999999♠',) suite:assertSortKeyEquals('3005399999999999999♠',) suite:assertSortKeyEquals('3005299999999999999♠',) suite:assertSortKeyEquals('3005199999999999999♠',) suite:assertSortKeyEquals('6993100000000000000♠',) suite:assertSortKeyEquals('3006900000000000000♠',)end function suite:testSortKeys3 suite:assertSortKeyEquals('7016103456789012345♠',) suite:assertSortKeyEquals('7015123456789012345♠',) suite:assertSortKeyEquals('7014234567890123456♠',) suite:assertSortKeyEquals('7013345678901234561♠',) suite:assertSortKeyEquals('7012456789012345612♠',) suite:assertSortKeyEquals('7011567890123456123♠',) suite:assertSortKeyEquals('7010678901234561234♠',) suite:assertSortKeyEquals('7009789012345612345♠',) suite:assertSortKeyEquals('7008890123456123456♠',) suite:assertSortKeyEquals('7007901234561234567♠',) suite:assertSortKeyEquals('7005123456123456780♠',) suite:assertSortKeyEquals('7005123456123456780♠',) suite:assertSortKeyEquals('7004234561234567799♠',) suite:assertSortKeyEquals('7002456123456780000♠',) suite:assertSortKeyEquals('7002456123456780000♠',) suite:assertSortKeyEquals('7001561234567800000♠',) suite:assertSortKeyEquals('7000612345678000000♠',) suite:assertSortKeyEquals('6999123456780000000♠',) suite:assertSortKeyEquals('6998234567800000000♠',) suite:assertSortKeyEquals('6997345678000000000♠',) suite:assertSortKeyEquals('6996456780000000000♠',) suite:assertSortKeyEquals('6995567800000000000♠',) suite:assertSortKeyEquals('6994678000000000000♠',) suite:assertSortKeyEquals('6993780000000000000♠',) suite:assertSortKeyEquals('6992800000000000000♠',) suite:assertSortKeyEquals('5000000000000000000♠',)end
function suite:testSortKeys4 suite:assertSortKeyEquals('2995570330657900000♠',) suite:assertSortKeyEquals('2995177810931299999♠',) suite:assertSortKeyEquals('2995065526236800000♠',) suite:assertSortKeyEquals('2995466138667300000♠',) suite:assertSortKeyEquals('2995091138906600000♠',) suite:assertSortKeyEquals('2995154034088099999♠',) suite:assertSortKeyEquals('2995661456718600000♠',) suite:assertSortKeyEquals('2995673280039000000♠',) suite:assertSortKeyEquals('2995718586477700000♠',) suite:assertSortKeyEquals('2995202294885999999♠',) suite:assertSortKeyEquals('2997809315340000000♠',) suite:assertSortKeyEquals('2995091747332400000♠',) suite:assertSortKeyEquals('2995510976267400000♠',) suite:assertSortKeyEquals('2995791525201400000♠',) suite:assertSortKeyEquals('2995123912722499999♠',) suite:assertSortKeyEquals('2995383526155000000♠',) suite:assertSortKeyEquals('2995550423144800000♠',) suite:assertSortKeyEquals('2995202547700000000♠',) suite:assertSortKeyEquals('2995740762353599999♠',) suite:assertSortKeyEquals('2995749101706400000♠',) suite:assertSortKeyEquals('2995176594059399999♠',) suite:assertSortKeyEquals('2995163690872899999♠',) suite:assertSortKeyEquals('2996391353068000000♠',) suite:assertSortKeyEquals('2996410357428000000♠',) suite:assertSortKeyEquals('2995625007539900000♠',) suite:assertSortKeyEquals('2995315611006100000♠',) suite:assertSortKeyEquals('2995234538459600000♠',) suite:assertSortKeyEquals('2995847035011900000♠',) suite:assertSortKeyEquals('2995050162076899999♠',) suite:assertSortKeyEquals('2995173355225999999♠',) suite:assertSortKeyEquals('2995260183535100000♠',) suite:assertSortKeyEquals('2995685583524500000♠',) suite:assertSortKeyEquals('2995664270381399999♠',) suite:assertSortKeyEquals('2995003711925900000♠',) suite:assertSortKeyEquals('2995221633013899999♠',) suite:assertSortKeyEquals('2995606940241900000♠',) suite:assertSortKeyEquals('2995471664011200000♠',) suite:assertSortKeyEquals('2995785717570800000♠',) suite:assertSortKeyEquals('2996687889733000000♠',) suite:assertSortKeyEquals('2995242622296899999♠',) suite:assertSortKeyEquals('2995829690357700000♠',) suite:assertSortKeyEquals('2995172258038300000♠',) suite:assertSortKeyEquals('2995290690594000000♠',) suite:assertSortKeyEquals('2995496251367300000♠',) suite:assertSortKeyEquals('2995816441484899999♠',) suite:assertSortKeyEquals('2995120977784899999♠',) suite:assertSortKeyEquals('2995788823580399999♠',) suite:assertSortKeyEquals('2995618778317100000♠',) suite:assertSortKeyEquals('2995135661813300000♠',) suite:assertSortKeyEquals('2995612055930500000♠',) suite:assertSortKeyEquals('2995433812230900000♠',) suite:assertSortKeyEquals('2995361018723200000♠',) suite:assertSortKeyEquals('2995039541404999999♠',) suite:assertSortKeyEquals('2995621235553700000♠',) suite:assertSortKeyEquals('2995661802405900000♠',) suite:assertSortKeyEquals('2995746574052000000♠',) suite:assertSortKeyEquals('2995499660990100000♠',) suite:assertSortKeyEquals('2995265784360199999♠',) suite:assertSortKeyEquals('2995615201132500000♠',) suite:assertSortKeyEquals('2995757863575100000♠',) suite:assertSortKeyEquals('2995606655783700000♠',) suite:assertSortKeyEquals('2995791518093100000♠',) suite:assertSortKeyEquals('2995883846089400000♠',) suite:assertSortKeyEquals('2996785472460000000♠',) suite:assertSortKeyEquals('2996290858233000000♠',) suite:assertSortKeyEquals('2995818685550600000♠',) suite:assertSortKeyEquals('2995851615712600000♠',) suite:assertSortKeyEquals('2996850468655000000♠',) suite:assertSortKeyEquals('2995311846582300000♠',) suite:assertSortKeyEquals('2995014981580300000♠',) suite:assertSortKeyEquals('2995504418167000000♠',) suite:assertSortKeyEquals('2995030306243499999♠',) suite:assertSortKeyEquals('2995344834291700000♠',) suite:assertSortKeyEquals('2995113341914899999♠',) suite:assertSortKeyEquals('2995304474922700000♠',) suite:assertSortKeyEquals('2995312737139100000♠',) suite:assertSortKeyEquals('2995482001318200000♠',) suite:assertSortKeyEquals('2996425812187000000♠',) suite:assertSortKeyEquals('2995486912181300000♠',) suite:assertSortKeyEquals('2995873101875300000♠',) suite:assertSortKeyEquals('2995541646323200000♠',) suite:assertSortKeyEquals('2995888963210700000♠',) suite:assertSortKeyEquals('2995883740891000000♠',) suite:assertSortKeyEquals('2996126726483000000♠',) suite:assertSortKeyEquals('2995067993695799999♠',) suite:assertSortKeyEquals('2996565823180000000♠',) suite:assertSortKeyEquals('2995130823596700000♠',) suite:assertSortKeyEquals('2995075340298500000♠',) suite:assertSortKeyEquals('2995785054254300000♠',) suite:assertSortKeyEquals('2995344501236999999♠',) suite:assertSortKeyEquals('2995863453863500000♠',) suite:assertSortKeyEquals('2996867826386099999♠',) suite:assertSortKeyEquals('2995122546703500000♠',) suite:assertSortKeyEquals('2995208635786300000♠',) suite:assertSortKeyEquals('2995255631518499999♠',) suite:assertSortKeyEquals('2995093547457100000♠',) suite:assertSortKeyEquals('2995545146845400000♠',) suite:assertSortKeyEquals('2995026372281199999♠',) suite:assertSortKeyEquals('2995009034451700000♠',) suite:assertSortKeyEquals('2995595212813000000♠',) suite:assertSortKeyEquals('2995164790310000000♠',) suite:assertSortKeyEquals('2995731907846900000♠',) suite:assertSortKeyEquals('2995646535218000000♠',) suite:assertSortKeyEquals('2995012364740000000♠',) suite:assertSortKeyEquals('2995867041849099999♠',) suite:assertSortKeyEquals('2995540136696000000♠',) suite:assertSortKeyEquals('2995716328184200000♠',) suite:assertSortKeyEquals('2995683537669999999♠',) suite:assertSortKeyEquals('2996316675407900000♠',) suite:assertSortKeyEquals('2995127360958200000♠',) suite:assertSortKeyEquals('2995261710460599999♠',) suite:assertSortKeyEquals('2995233938840300000♠',) suite:assertSortKeyEquals('2995878032135000000♠',) suite:assertSortKeyEquals('2995586436638800000♠',) suite:assertSortKeyEquals('2995662247362600000♠',) suite:assertSortKeyEquals('2995809130860900000♠',) suite:assertSortKeyEquals('2995015830794699999♠',) suite:assertSortKeyEquals('2995324488958200000♠',) suite:assertSortKeyEquals('2995701520640600000♠',) suite:assertSortKeyEquals('2995616363294200000♠',) suite:assertSortKeyEquals('2996314603680000000♠',) suite:assertSortKeyEquals('2995821290940900000♠',) suite:assertSortKeyEquals('2995467305223800000♠',) suite:assertSortKeyEquals('2995066810127499999♠',) suite:assertSortKeyEquals('2995890568634800000♠',) suite:assertSortKeyEquals('2996160066205000000♠',) suite:assertSortKeyEquals('2995439227718799999♠',) suite:assertSortKeyEquals('2995561466700300000♠',) suite:assertSortKeyEquals('2995887377241700000♠',) suite:assertSortKeyEquals('2995040447727199999♠',) suite:assertSortKeyEquals('2995869727404100000♠',) suite:assertSortKeyEquals('2995713722551700000♠',) suite:assertSortKeyEquals('2995821082818500000♠',) suite:assertSortKeyEquals('2995566890226800000♠',) suite:assertSortKeyEquals('2995313537965500000♠',) suite:assertSortKeyEquals('2995551732617000000♠',) suite:assertSortKeyEquals('2995029818266200000♠',) suite:assertSortKeyEquals('2995188054577200000♠',) suite:assertSortKeyEquals('2996113357107999999♠',) suite:assertSortKeyEquals('2997333438560000000♠',) suite:assertSortKeyEquals('2995162803710100000♠',) suite:assertSortKeyEquals('2997772106860000000♠',) suite:assertSortKeyEquals('2995782877509400000♠',) suite:assertSortKeyEquals('2995636526141500000♠',) suite:assertSortKeyEquals('2995120894110999999♠',) suite:assertSortKeyEquals('2995689491176000000♠',) suite:assertSortKeyEquals('2995635191971000000♠',) suite:assertSortKeyEquals('2995658748901100000♠',) suite:assertSortKeyEquals('2995546278024700000♠',) suite:assertSortKeyEquals('2995042026878699999♠',) suite:assertSortKeyEquals('7000300000000000000♠',) suite:assertSortKeyEquals('7000200000000000000♠',) suite:assertSortKeyEquals('7000100000000000000♠',) suite:assertSortKeyEquals('2999874199000000000♠',) suite:assertSortKeyEquals('2999874200000000000♠',) suite:assertSortKeyEquals('2999821280000000000♠',) suite:assertSortKeyEquals('2999809348000000000♠',) suite:assertSortKeyEquals('2999837282000000000♠',) suite:assertSortKeyEquals('3000410540000000000♠',) suite:assertSortKeyEquals('3000322860000000000♠',) suite:assertSortKeyEquals('3000870210000000000♠',) suite:assertSortKeyEquals('3000293239999999999♠',) suite:assertSortKeyEquals('2999856690000000000♠',) suite:assertSortKeyEquals('2999847054999999999♠',) suite:assertSortKeyEquals('2999821013999999999♠',) suite:assertSortKeyEquals('2999843150000000000♠',) suite:assertSortKeyEquals('2999862558000099999♠',) suite:assertSortKeyEquals('2999871973000000000♠',) suite:assertSortKeyEquals('2999815739999999999♠',) suite:assertSortKeyEquals('2999889440000000000♠',) suite:assertSortKeyEquals('2999871439000000000♠',) suite:assertSortKeyEquals('3000527490000000000♠',) suite:assertSortKeyEquals('2999851303000000000♠',) suite:assertSortKeyEquals('2999830204999900000♠',) suite:assertSortKeyEquals('2999815187000000000♠',) suite:assertSortKeyEquals('3000674140000000000♠',) suite:assertSortKeyEquals('2999841400999999999♠',) suite:assertSortKeyEquals('2999861921000000000♠',) suite:assertSortKeyEquals('3000867630000000000♠',) suite:assertSortKeyEquals('2999847899999999999♠',) suite:assertSortKeyEquals('2999804997000000000♠',) suite:assertSortKeyEquals('2999850277000000000♠',) suite:assertSortKeyEquals('2999826150999900000♠',) suite:assertSortKeyEquals('2999873981000000000♠',) suite:assertSortKeyEquals('2999807748000000000♠',) suite:assertSortKeyEquals('2999855587000000000♠',) suite:assertSortKeyEquals('2999808098000000000♠',) suite:assertSortKeyEquals('2999859255000099999♠',) suite:assertSortKeyEquals('2999843736000000000♠',) suite:assertSortKeyEquals('2999827169999900000♠',) suite:assertSortKeyEquals('2999883714000000000♠',) suite:assertSortKeyEquals('2999868761000000000♠',) suite:assertSortKeyEquals('2999852838000000000♠',) suite:assertSortKeyEquals('2999868770000000000♠',) suite:assertSortKeyEquals('2999830765000000000♠',) suite:assertSortKeyEquals('2999853891000000000♠',) suite:assertSortKeyEquals('2999802909000000000♠',) suite:assertSortKeyEquals('2999885366000000000♠',) suite:assertSortKeyEquals('2999868503000099999♠',) suite:assertSortKeyEquals('2999878958000000000♠',) suite:assertSortKeyEquals('2999809164000000000♠',) suite:assertSortKeyEquals('2999813730999900000♠',) suite:assertSortKeyEquals('2999853354000000000♠',) suite:assertSortKeyEquals('2999879520000000000♠',) suite:assertSortKeyEquals('2999815849000000000♠',) suite:assertSortKeyEquals('2999816592999900000♠',) suite:assertSortKeyEquals('2999816199999999999♠',) suite:assertSortKeyEquals('2999846745999999999♠',) suite:assertSortKeyEquals('2999827244000000000♠',) suite:assertSortKeyEquals('2999880946000000000♠',) suite:assertSortKeyEquals('2999884517000000000♠',) suite:assertSortKeyEquals('2999835007000000000♠',) suite:assertSortKeyEquals('2999846484000000000♠',) suite:assertSortKeyEquals('2999806955999999999♠',) suite:assertSortKeyEquals('2999859477000000000♠',) suite:assertSortKeyEquals('2999822357000000000♠',) suite:assertSortKeyEquals('2999861380000000000♠',) suite:assertSortKeyEquals('2999803785000000000♠',) suite:assertSortKeyEquals('2999839579000000000♠',) suite:assertSortKeyEquals('2999880180000000000♠',) suite:assertSortKeyEquals('2999806631999999999♠',) suite:assertSortKeyEquals('2999823021999999999♠',) suite:assertSortKeyEquals('2999860285000000000♠',) suite:assertSortKeyEquals('2999852208000000000♠',) suite:assertSortKeyEquals('2999831273000000000♠',) suite:assertSortKeyEquals('2999859169000000000♠',) suite:assertSortKeyEquals('2999859386999999999♠',) suite:assertSortKeyEquals('2999830962000000000♠',) suite:assertSortKeyEquals('2999809106000000000♠',) suite:assertSortKeyEquals('2999829698000000000♠',) suite:assertSortKeyEquals('2999842112000000000♠',) suite:assertSortKeyEquals('2999803866000000000♠',) suite:assertSortKeyEquals('2999848160000000000♠',) suite:assertSortKeyEquals('2999814706999999999♠',) suite:assertSortKeyEquals('2999858808000000000♠',) suite:assertSortKeyEquals('2999846336000000000♠',) suite:assertSortKeyEquals('2999882794000000000♠',) suite:assertSortKeyEquals('2999888027000000000♠',) suite:assertSortKeyEquals('2999827434000000000♠',) suite:assertSortKeyEquals('2999844643999999999♠',) suite:assertSortKeyEquals('2999869137000099999♠',) suite:assertSortKeyEquals('2999807900000000000♠',) suite:assertSortKeyEquals('2999887309000000000♠',) suite:assertSortKeyEquals('2999872792000099999♠',) suite:assertSortKeyEquals('2999850895000000000♠',) suite:assertSortKeyEquals('2999855922000000000♠',) suite:assertSortKeyEquals('2999884101000000000♠',) suite:assertSortKeyEquals('2999865620000000000♠',) suite:assertSortKeyEquals('2999818348999999999♠',) suite:assertSortKeyEquals('2999817932000000000♠',) suite:assertSortKeyEquals('2999859042000000000♠',) suite:assertSortKeyEquals('2999822241000000000♠',) suite:assertSortKeyEquals('2999848484000000000♠',) suite:assertSortKeyEquals('2999889907000000000♠',) suite:assertSortKeyEquals('2999847636000000000♠',) suite:assertSortKeyEquals('2999817887000000000♠',) suite:assertSortKeyEquals('2999888719000000000♠',) suite:assertSortKeyEquals('2999865609000000000♠',) suite:assertSortKeyEquals('2999884844000000000♠',) suite:assertSortKeyEquals('2999880704000000000♠',) suite:assertSortKeyEquals('2999830570000000000♠',) suite:assertSortKeyEquals('2999820888000000000♠',) suite:assertSortKeyEquals('2999864803000000000♠',) suite:assertSortKeyEquals('2999802825000000000♠',) suite:assertSortKeyEquals('2999812877999999999♠',) suite:assertSortKeyEquals('2999851981000000000♠',) suite:assertSortKeyEquals('2999813588000000000♠',) suite:assertSortKeyEquals('2999802195000000000♠',) suite:assertSortKeyEquals('2999868210000000000♠',) suite:assertSortKeyEquals('2999852021000000000♠',) suite:assertSortKeyEquals('2999803342000000000♠',) suite:assertSortKeyEquals('2999833189000000000♠',) suite:assertSortKeyEquals('2999866984000000000♠',) suite:assertSortKeyEquals('2999821213000000000♠',) suite:assertSortKeyEquals('2999865300000000000♠',) suite:assertSortKeyEquals('2999859967000000000♠',) suite:assertSortKeyEquals('2999834131000000000♠',) suite:assertSortKeyEquals('2999801709999999999♠',) suite:assertSortKeyEquals('2999847819000000000♠',) suite:assertSortKeyEquals('2999856814999999999♠',) suite:assertSortKeyEquals('2999846078000000000♠',) suite:assertSortKeyEquals('2999808230000000000♠',) suite:assertSortKeyEquals('2999813456000000000♠',) suite:assertSortKeyEquals('2999884378000000000♠',) suite:assertSortKeyEquals('2999853206000000000♠',) suite:assertSortKeyEquals('2999889793000000000♠',) suite:assertSortKeyEquals('3000764860000000000♠',) suite:assertSortKeyEquals('2999809736000000000♠',) suite:assertSortKeyEquals('2999824682999999999♠',) suite:assertSortKeyEquals('2999806694000000000♠',) suite:assertSortKeyEquals('2999848903000000000♠',) suite:assertSortKeyEquals('2999817080000000000♠',) suite:assertSortKeyEquals('3000703210000000000♠',) suite:assertSortKeyEquals('2999839945999900000♠',) suite:assertSortKeyEquals('2999889102000099999♠',) suite:assertSortKeyEquals('2999840518999999999♠',) suite:assertSortKeyEquals('3000128000000000000♠',) suite:assertSortKeyEquals('2999867865000099999♠',) suite:assertSortKeyEquals('3000327959999999999♠',) suite:assertSortKeyEquals('2999883204000099999♠',)end
return suite