@@ -2,8 +2,15 @@ local assertions = require("@assertions")
22
33local assert_eq = assertions .assert_eq
44local assert_ne = assertions .assert_ne
5+ local assert_lt = assertions .assert_lt
6+ local assert_gt = assertions .assert_gt
7+ local assert_le = assertions .assert_le
8+ local assert_ge = assertions .assert_ge
59local assert_match = assertions .assert_match
610local assert_same = assertions .assert_same
11+ local assert_starts_with = assertions .assert_starts_with
12+ local assert_ends_with = assertions .assert_ends_with
13+ local assert_contains = assertions .assert_contains
714
815testing :test (" assert_eq" , function ()
916 assert_eq (1 , 1 )
@@ -53,6 +60,74 @@ testing:test("assert_ne", function()
5360 assert (err :match (" right: nil" ))
5461end )
5562
63+ testing :test (" assert_lt" , function ()
64+ assert_lt (1 , 2 )
65+ assert_lt (- 1 , 0 )
66+
67+ local ok , err = pcall (assert_lt , 1 , 1 )
68+ assert (not ok )
69+ assert (err :match (" assertion `left < right` failed!" ))
70+ assert (err :match (" left: 1" ))
71+ assert (err :match (" right: 1" ))
72+
73+ ok , err = pcall (assert_lt , 2 , 1 , " custom message" )
74+ assert (not ok )
75+ assert (err :match (" assertion `left < right` failed: custom message" ))
76+ assert (err :match (" left: 2" ))
77+ assert (err :match (" right: 1" ))
78+ end )
79+
80+ testing :test (" assert_gt" , function ()
81+ assert_gt (2 , 1 )
82+ assert_gt (0 , - 1 )
83+
84+ local ok , err = pcall (assert_gt , 1 , 1 )
85+ assert (not ok )
86+ assert (err :match (" assertion `left > right` failed!" ))
87+ assert (err :match (" left: 1" ))
88+ assert (err :match (" right: 1" ))
89+
90+ ok , err = pcall (assert_gt , 1 , 2 , " custom message" )
91+ assert (not ok )
92+ assert (err :match (" assertion `left > right` failed: custom message" ))
93+ assert (err :match (" left: 1" ))
94+ assert (err :match (" right: 2" ))
95+ end )
96+
97+ testing :test (" assert_le" , function ()
98+ assert_le (1 , 2 )
99+ assert_le (1 , 1 )
100+
101+ local ok , err = pcall (assert_le , 2 , 1 )
102+ assert (not ok )
103+ assert (err :match (" assertion `left <= right` failed!" ))
104+ assert (err :match (" left: 2" ))
105+ assert (err :match (" right: 1" ))
106+
107+ ok , err = pcall (assert_le , 2 , 1 , " custom message" )
108+ assert (not ok )
109+ assert (err :match (" assertion `left <= right` failed: custom message" ))
110+ assert (err :match (" left: 2" ))
111+ assert (err :match (" right: 1" ))
112+ end )
113+
114+ testing :test (" assert_ge" , function ()
115+ assert_ge (2 , 1 )
116+ assert_ge (1 , 1 )
117+
118+ local ok , err = pcall (assert_ge , 1 , 2 )
119+ assert (not ok )
120+ assert (err :match (" assertion `left >= right` failed!" ))
121+ assert (err :match (" left: 1" ))
122+ assert (err :match (" right: 2" ))
123+
124+ ok , err = pcall (assert_ge , 1 , 2 , " custom message" )
125+ assert (not ok )
126+ assert (err :match (" assertion `left >= right` failed: custom message" ))
127+ assert (err :match (" left: 1" ))
128+ assert (err :match (" right: 2" ))
129+ end )
130+
56131testing :test (" assert_match" , function ()
57132 assert_match (" hello world" , " hello" )
58133 assert_match (" 12345" , " %d+" )
@@ -119,3 +194,55 @@ testing:test("assert_same", function()
119194 assert (err :match (" left%[1%]: table:" ))
120195 assert (err :match (" right%[1%]: table:" ))
121196end )
197+
198+ testing :test (" assert_starts_with" , function ()
199+ assert_starts_with (" hello world" , " hello" )
200+ assert_starts_with (" hello world" , " " )
201+
202+ local ok , err = pcall (assert_starts_with , " hello world" , " bye" )
203+ assert (not ok )
204+ assert (err :match (" assertion `str:starts_with%(prefix%)` failed!" ))
205+ assert (err :match (" prefix: bye" ))
206+ assert (err :match (" str: hello world" ))
207+
208+ ok , err = pcall (assert_starts_with , " foo" , " bar" , " custom message" )
209+ assert (not ok )
210+ assert (err :match (" assertion `str:starts_with%(prefix%)` failed: custom message" ))
211+ assert (err :match (" prefix: bar" ))
212+ assert (err :match (" str: foo" ))
213+ end )
214+
215+ testing :test (" assert_ends_with" , function ()
216+ assert_ends_with (" hello world" , " world" )
217+ assert_ends_with (" hello world" , " " )
218+
219+ local ok , err = pcall (assert_ends_with , " hello world" , " bye" )
220+ assert (not ok )
221+ assert (err :match (" assertion `str:ends_with%(suffix%)` failed!" ))
222+ assert (err :match (" suffix: bye" ))
223+ assert (err :match (" str: hello world" ))
224+
225+ ok , err = pcall (assert_ends_with , " foo" , " bar" , " custom message" )
226+ assert (not ok )
227+ assert (err :match (" assertion `str:ends_with%(suffix%)` failed: custom message" ))
228+ assert (err :match (" suffix: bar" ))
229+ assert (err :match (" str: foo" ))
230+ end )
231+
232+ testing :test (" assert_contains" , function ()
233+ assert_contains (" hello world" , " world" )
234+ assert_contains (" hello world" , " hello" )
235+ assert_contains (" hello world" , " o w" )
236+
237+ local ok , err = pcall (assert_contains , " hello world" , " bye" )
238+ assert (not ok )
239+ assert (err :match (" assertion `str:contains%(substr%)` failed!" ))
240+ assert (err :match (" substr: bye" ))
241+ assert (err :match (" str: hello world" ))
242+
243+ ok , err = pcall (assert_contains , " foo" , " bar" , " custom message" )
244+ assert (not ok )
245+ assert (err :match (" assertion `str:contains%(substr%)` failed: custom message" ))
246+ assert (err :match (" substr: bar" ))
247+ assert (err :match (" str: foo" ))
248+ end )
0 commit comments