MT#17841 ngcp/utils.lua: implement utils.string.explode_values()

utils.string.explode_values("123") => {'1','12','123'}

Change-Id: Ifa2260b6f53714d1fdae70485e3ccff3e0872a31
changes/69/4569/7
Victor Seva 10 years ago
parent da71d44227
commit 34ad538775

@ -256,6 +256,22 @@ function utils.explode(delimiter, text)
return list return list
end end
-- from string to table with all the values of that string from 1 to len
-- "123" -> {'1', '12', '123'}
function us.explode_values(str)
local list = {}
local len
if not str then
error("string is nil")
end
len = string.len(str)
for i=1,len do
table.insert(list, string.sub(str, 1, i))
end
return list
end
function us.starts(String,Start) function us.starts(String,Start)
return string.sub(String,1,string.len(Start))==Start return string.sub(String,1,string.len(Start))==Start
end end

@ -161,6 +161,13 @@ TestUtils = {}
assertItemsEquals(utils.explode('=>',"1=>2=>3"), {'1','2','3'}) assertItemsEquals(utils.explode('=>',"1=>2=>3"), {'1','2','3'})
end end
function TestUtils:test_string_explode_values()
assertError(utils.string.explode_values, nil)
assertItemsEquals(utils.string.explode_values(''), {})
assertItemsEquals(utils.string.explode_values('1'), {'1'})
assertItemsEquals(utils.string.explode_values('123'), {'1','12','123'})
end
function TestUtils:test_starts() function TestUtils:test_starts()
assertError(utils.string.stats, nil, "g") assertError(utils.string.stats, nil, "g")
assertTrue(utils.string.starts("goga", "g")) assertTrue(utils.string.starts("goga", "g"))

Loading…
Cancel
Save