1+ local inspect = require ' inspect'
2+ local require = require ' require'
3+ local assert = require ' assert'
4+
5+ local tests = {
6+ {
7+ name = " number" ,
8+ value = 1 ,
9+ },
10+ {
11+ name = " string" ,
12+ value = " foobar" ,
13+ },
14+ {
15+ name = " object" ,
16+ value = {},
17+ },
18+ }
19+
20+ function TestAssertTrue (t )
21+ for _ , tt in pairs (tests ) do
22+ t :Run (tt .name , function (t )
23+ assert :True (t , tt .value )
24+ end )
25+ end
26+ end
27+
28+ function TestAssertFalse (t )
29+ for _ , tt in pairs (tests ) do
30+ t :Run (tt .name , function (t )
31+ assert :False (t , not tt .value )
32+ end )
33+ end
34+ end
35+
36+ function TestAssertEqual (t )
37+ for _ , tt in pairs (tests ) do
38+ t :Run (tt .name , function (t )
39+ assert :Equal (t , tt .value , tt .value )
40+ end )
41+ end
42+ end
43+
44+ function TestAssertNotEqual (t )
45+ for _ , tt in pairs (tests ) do
46+ t :Run (tt .name , function (t )
47+ assert :NotEqual (t , " DON'T MATCH" , tt .value )
48+ end )
49+ end
50+ end
51+
52+ function TestObjectsInspectEqual (t )
53+ local t1 = {
54+ foo = {
55+ bar = { " baz" , " buz" , " biz" }
56+ }
57+ }
58+
59+ local t2 = {
60+ foo = {
61+ bar = { " baz" , " buz" , " biz" }
62+ }
63+ }
64+ require :Equal (t , inspect (t1 ), inspect (t2 ))
65+ end
0 commit comments