def test_if2(self): text = "${if(dd)}yes${else}no$end" template = engine.create(text) template.set("dd", object()) render = template.render() self.assertEqual("yes", render)
def test_strip_white_space(self): text = "\ your data is:\ $set(key1=1)\ $set(key2=2)\ $set(key3=3)\ $set(key4=4)\ $set(key5=5)\ $set(key6=6)\ $key5" template = engine.create(text) #template.Context.StripWhiteSpace = true render = template.render() self.assertEqual("your data is:5", render)
def test_Expressio6(self): text = "${10000 != 0 + 0 + 10000}" template = engine.create(text) render = template.render() self.assertEqual("False", render)
def test_Expressio5(self): text = "${10000 + 2 * 4 * 10}" template = engine.create(text) render = template.render() self.assertEqual(10080, float(render))
def test_expressio4(self): text = "${3000-1000+8-8+8-8}" template = engine.create(text) render = template.render() self.assertEqual(2000, float(render))
def test_if1(self): text = "${if(3==row.id)}true${else}false${end}" template = engine.create(text) template.set("entity",{ "key":"111" }) render = template.render() self.assertEqual("false", render)
def test_and_expression(self): text = "${4==5&&5==5}" template = engine.create(text) render = template.render() self.assertEqual("False", render)
def test_complicated_expression(self): text = "${(8+2)*(5+5) - ((2+8)/2)}" template = engine.create(text) render = template.render() self.assertEqual(95, float(render))
def test_set(self): text = "$set(aGroupName = \"Begin\"+value)$aGroupName" template = engine.create(text) template.set("value", 30) render = template.render() self.assertEqual("Begin30", render)
def test_tuple(self): text = "$data[2]" template = engine.create(text) template.set("data", (7, 0, 2, 0, 6)) render = template.render() self.assertEqual("2", render)
def test_reference(self): text = "$str.upper()" template = engine.create(text) template.set("str", "hello jnt4py") render = template.render() self.assertEqual("HELLO JNT4PY", render)
def test_if5(self): text = "$if(v1 || v2)yes${else}no${end}" template = engine.create(text) template.set("v2", 9) render = template.render() self.assertEqual("yes", render)
def test_if4(self): text = "$if(v1 || 5<2)yes${else}no${end}" template = engine.create(text) render = template.render() self.assertEqual("no", render)
def test_negative(self): text = "$test(8,-2)" template = engine.create(text) template.set("test", lambda x, y: x + y) render = template.render() self.assertEqual(6, float(render))
def test_foreach(self): text = "${foreach(i in list)}${i}${end}" template = engine.create(text) template.set("list", [7, 0, 2, 0, 6]) render = template.render() self.assertEqual("70206", render)
def test_variable(self): text = "($a)人" template = engine.create(text) template.set("a", "1") render = template.render() self.assertEqual("(1)人", render)
def test_expressio7(self): text = "${10000 * 2 + 2 * 4 * 10 / 8 - 24 + 0 + 0 + 0 + 0 * 1 * 2 * 3 * 4}" template = engine.create(text) render = template.render() self.assertEqual(19986, float(render))
def test_coment(self): text = "你好,$*使用简写符加星号可对代码注释*$欢迎使用" template = engine.create(text) template.set("name", "jntemplate") render = template.render() self.assertEqual("你好,欢迎使用", render)
def test_or_expression(self): text = "${4==5||5==5}" template = engine.create(text) render = template.render() self.assertEqual("True", render)
def test_expression(self): text = "${8+2*5}" template = engine.create(text) render = template.render() self.assertEqual(18, float(render))
# arr = [1,2,3,4,5,6,7] # print(arr[2:-3]) # print(arr[2:len(arr)-3]) # g = lambda x,y: x +y # text = "${g(2,8)}vvvvv" # template = Template(text) # template.set("g",g) # print( template.render()) engine.configure() # text = "$str.upper()" # template = engine.create_template(text) # template.set("str","hello jnt4py") # render = template.render() template = engine.create("$data[2]") template.set("data", [7, 0, 2, 0, 6]) render = template.render() print(render) # list = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11"] # print(list[1:3]) # print(list[1:]) #print(type(time.time())) # dic = {"aaa":1,"bbb":2} # for n in dic: # print(dic[n])
def test_if(self): text = "${if(3==8)}3=8 success${elseif(3>8)}3>8 success${elseif(2<5)}2<5 success${else}null${end}" template = engine.create(text) render = template.render() self.assertEqual("2<5 success", render)