aboutsummaryrefslogtreecommitdiff
path: root/testlabel.lua
diff options
context:
space:
mode:
Diffstat (limited to 'testlabel.lua')
-rw-r--r--testlabel.lua33
1 files changed, 30 insertions, 3 deletions
diff --git a/testlabel.lua b/testlabel.lua
index 7461206..d60bb54 100644
--- a/testlabel.lua
+++ b/testlabel.lua
@@ -237,12 +237,39 @@ assert(r == nil and l == 'fail' and poserr == 1)
237 237
238p = #(m.P"a" * m.T(1)) 238p = #(m.P"a" * m.T(1))
239r, l, poserr = p:match("abc") 239r, l, poserr = p:match("abc")
240assert(r == nil and l == 'fail' and poserr == 1) 240assert(r == nil and l == 'fail' and poserr == 2)
241 241
242p = #(m.P"a" * m.P'a') 242p = #(m.P"a" * m.P'a')
243r, l, poserr = p:match("abc") 243r, l, poserr = p:match("abc")
244assert(r == nil and l == 'fail' and poserr == 1) 244assert(r == nil and l == 'fail' and poserr == 2)
245 245
246p = m.P'a' * #m.P('a')
247r, l, poserr = p:match("abc")
248assert(r == nil and l == 'fail' and poserr == 2)
249
250p = m.P'a' * #m.P('ba')
251r, l, poserr = p:match("abc")
252assert(r == nil and l == 'fail' and poserr == 3)
253
254p = m.P'a' * -m.P('b')
255r, l, poserr = p:match("abc")
256assert(r == nil and l == 'fail' and poserr == 2)
257
258p = m.P'a' * -m.P('bc')
259r, l, poserr = p:match("abc")
260assert(r == nil and l == 'fail' and poserr == 4)
261
262p = m.P'a' * #m.T('a')
263r, l, poserr = p:match("abc")
264assert(r == nil and l == 'fail' and poserr == 2)
265
266p = m.P'a' * #(m.P'b' * m.T('a'))
267r, l, poserr = p:match("abc")
268assert(r == nil and l == 'fail' and poserr == 3)
269
270p = m.P'a' * (m.P'b' * m.T('a'))
271r, l, poserr = p:match("abc")
272assert(r == nil and l == 'a' and poserr == 3)
246 273
247p = -(-m.T(1)) 274p = -(-m.T(1))
248r, l, poserr = p:match("bbc") 275r, l, poserr = p:match("bbc")
@@ -295,7 +322,7 @@ p = m.P{
295 ["22"] = m.T(15) 322 ["22"] = m.T(15)
296} 323}
297r, l, poserr = p:match("abc") 324r, l, poserr = p:match("abc")
298assert(r == nil and l == 'fail' and poserr == 1) 325assert(r == nil and l == 'fail' and poserr == 2)
299 326
300 327
301-- tests related to repetition 328-- tests related to repetition