From b8b65767b55a3ec2017e064ff3fc5fe89076ac96 Mon Sep 17 00:00:00 2001 From: James Roseborough Date: Thu, 13 Dec 2007 01:03:02 +0000 Subject: [PATCH] More test cases for string.sub() --- src/test/res/strlib.lua | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/test/res/strlib.lua b/src/test/res/strlib.lua index 30f31315..6cfb85be 100644 --- a/src/test/res/strlib.lua +++ b/src/test/res/strlib.lua @@ -47,3 +47,24 @@ print( pcall( badpat ) ) for k, v in string.gmatch("w=200&h=150", "(%w+)=(%w+)") do print(k, v) end + +-- string.sub +function t(str) + local i = { 0, 1, 2, 8, -1 } + for ki,vi in ipairs(i) do + local s,v = pcall( string.sub, str, vi ) + print( 'string.sub("'..str..'",'..tostring(vi)..')='..tostring(s)..','..tostring(v) ) + local j = { 0, 1, 2, 4, 8, -1 } + for kj,vj in ipairs(j) do + local s,v = pcall( string.sub, str, vi, vj ) + print( 'string.sub("'..str..'",'..tostring(vi)..','..tostring(vj)..')='..tostring(s)..','..tostring(v) ) + end + end +end +t( 'abcdefghijklmn' ) +t( 'abcdefg' ) +t( 'abcd' ) +t( 'abc' ) +t( 'ab' ) +t( 'a' ) +t( '' )