예제 #1
0
    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)
예제 #2
0
    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)
예제 #3
0
    def test_Expressio6(self):
        text = "${10000 != 0 +  0 + 10000}"
        template = engine.create(text)
        render = template.render()

        self.assertEqual("False", render)
예제 #4
0
 def test_Expressio5(self):
     text = "${10000 + 2 *  4 * 10}"
     template = engine.create(text)
     render = template.render()
     self.assertEqual(10080, float(render))
예제 #5
0
 def test_expressio4(self):
     text = "${3000-1000+8-8+8-8}"
     template = engine.create(text)
     render = template.render()
     self.assertEqual(2000, float(render))
예제 #6
0
 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)
예제 #7
0
    def test_and_expression(self):
        text = "${4==5&&5==5}"
        template = engine.create(text)
        render = template.render()

        self.assertEqual("False", render)
예제 #8
0
 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))
예제 #9
0
 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)
예제 #10
0
 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)
예제 #11
0
 def test_reference(self):
     text = "$str.upper()"
     template = engine.create(text)
     template.set("str", "hello jnt4py")
     render = template.render()
     self.assertEqual("HELLO JNT4PY", render)
예제 #12
0
 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)
예제 #13
0
 def test_if4(self):
     text = "$if(v1 || 5<2)yes${else}no${end}"
     template = engine.create(text)
     render = template.render()
     self.assertEqual("no", render)
예제 #14
0
 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))
예제 #15
0
 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)
예제 #16
0
 def test_variable(self):
     text = "($a)人"
     template = engine.create(text)
     template.set("a", "1")
     render = template.render()
     self.assertEqual("(1)人", render)
예제 #17
0
    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))
예제 #18
0
 def test_coment(self):
     text = "你好,$*使用简写符加星号可对代码注释*$欢迎使用"
     template = engine.create(text)
     template.set("name", "jntemplate")
     render = template.render()
     self.assertEqual("你好,欢迎使用", render)
예제 #19
0
    def test_or_expression(self):
        text = "${4==5||5==5}"
        template = engine.create(text)
        render = template.render()

        self.assertEqual("True", render)
예제 #20
0
 def test_expression(self):
     text = "${8+2*5}"
     template = engine.create(text)
     render = template.render()
     self.assertEqual(18, float(render))
예제 #21
0
# 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])
예제 #22
0
 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)