Difference between revisions of "Module:StringHelpers"

From Data JW United
Jump to navigation Jump to search
Line 2: Line 2:
  
 
function p.getParagraphFromQuestion(param)
 
function p.getParagraphFromQuestion(param)
dashIndex = string.find(param.args[1], '-', 1, true);
+
dashIndex = string.find(param.args[1], '-', 1, true);
if((dashIndex ~= nil) and tonumber(string.sub(param.args[1], dashIndex-2, dashIndex-2)))
+
if (dashIndex ~= nil)  
 
then
 
then
  return "simple question"
+
return "simple question"
else
+
end
  return "complex question"
+
 
end
+
if( tonumber(string.sub(param.args[1], dashIndex-2, dashIndex-2)))
 +
then
 +
return "simple question"
 +
 
 
 
 
 
end
 
end
 
+
end
 
return p
 
return p

Revision as of 15:53, 12 April 2020

Module supports numbers with max 3 digits.

Tests

Simple question

Expected Actual
150 Lua error at line 10: attempt to perform arithmetic on global 'dashIndex' (a nil value).
15 Lua error at line 10: attempt to perform arithmetic on global 'dashIndex' (a nil value).
7 Lua error at line 10: attempt to perform arithmetic on global 'dashIndex' (a nil value).
150 Lua error at line 10: attempt to perform arithmetic on global 'dashIndex' (a nil value).
15 Lua error at line 10: attempt to perform arithmetic on global 'dashIndex' (a nil value).
7 Lua error at line 10: attempt to perform arithmetic on global 'dashIndex' (a nil value).

Complex question

Expected Actual
6 simple question
7 simple question
10 simple question
99 simple question
101 simple question
6 simple question
7 simple question
10 simple question
99 simple question
101 simple question

local p = {}

function p.getParagraphFromQuestion(param)
	dashIndex = string.find(param.args[1], '-', 1, true);
	if (dashIndex ~= nil) 
		then
			return "simple question"
	end

	if( tonumber(string.sub(param.args[1], dashIndex-2, dashIndex-2)))
		then
			return "simple question"
		
	 
end
end
return p