1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
Index: lua-penlight-1.0.2+htmldoc/tests/test-tablex.lua
===================================================================
--- lua-penlight-1.0.2+htmldoc.orig/tests/test-tablex.lua 2012-05-12 13:05:59.000000000 +0200
+++ lua-penlight-1.0.2+htmldoc/tests/test-tablex.lua 2012-07-10 13:20:49.000000000 +0200
@@ -1,5 +1,6 @@
local tablex = require 'pl.tablex'
local utils = require ('pl.utils')
+local debug = require 'debug'
local L = utils.string_lambda
-- bring tablex funtions into global namespace
utils.import(tablex)
@@ -7,6 +8,16 @@
local cmp = deepcompare
+function asserteq_no_order (x,y)
+ if not compare_no_order(x,y) then
+ local i = debug.getinfo(3)
+ local err = io.stderr
+ err:write(i.short_src..':'..i.currentline..': assertion failed\n')
+ err:write "these lists contained different elements\n"
+ os.exit(1)
+ end
+end
+
asserteq(
copy {10,20,30},
{10,20,30}
@@ -22,17 +33,17 @@
{10,20,30}
)
-asserteq(
+asserteq_no_order(
pairmap(L'_',{fred=10,bonzo=20}),
{'fred','bonzo'}
)
-asserteq(
+asserteq_no_order(
pairmap(function(k,v) return v end,{fred=10,bonzo=20}),
{10,20}
)
-asserteq(
+asserteq_no_order(
pairmap(function(i,v) return v,i end,{10,20,30}),
{10,20,30}
)
Index: lua-penlight-1.0.2+htmldoc/tests/test-text.lua
===================================================================
--- lua-penlight-1.0.2+htmldoc.orig/tests/test-text.lua 2012-05-12 13:05:59.000000000 +0200
+++ lua-penlight-1.0.2+htmldoc/tests/test-text.lua 2012-07-10 13:22:37.000000000 +0200
@@ -1,5 +1,6 @@
local T = require 'pl.text'
local Template = T.Template
+local OrderedMap = require 'pl.OrderedMap'
local asserteq = require 'pl.test'.asserteq
local t1 = Template [[
@@ -85,12 +86,12 @@
]])
t = [[
-# for k,v in pairs(T) do
+# for k,v in T:iter() do
"$(k)", -- $(v)
# end
]]
-local Tee = {Dog = 'Bonzo', Cat = 'Felix', Lion = 'Leo'}
+local Tee = OrderedMap{{Dog = 'Bonzo'}, {Cat = 'Felix'}, {Lion = 'Leo'}}
asserteq(template.substitute(t,{T=Tee,_parent=_G}),[[
"Dog", -- Bonzo
|