示例#1
0
 def test_round_function(self):
     self.assertEqual(3, e.eval(self.row, 'round(3.4)'))
     self.assertEqual(
         66.7,
         e.eval(
             self.row,
             'round(#affected+m+children / #affected+f+adults * 1000) / 10')
     )
示例#2
0
 def test_order_of_operations(self):
     self.assertEqual(7, e.eval(self.row, '1 + 2 * 3'))
     self.assertEqual(
         20100,
         e.eval(self.row,
                '#affected+f+children + #affected+m+children * 100'))
     self.assertEqual(
         30000,
         e.eval(self.row,
                '(#affected+f+children + #affected+m+children) * 100'))
示例#3
0
 def test_datedif_function(self):
     columns = [
         hxl.model.Column.parse(tag)
         for tag in ['#date+start', '#date+end']
     ]
     row = hxl.model.Row(columns=columns,
                         values=['2018-01-01', '2018-02-03'])
     self.assertEqual(5, e.eval(row,
                                'datedif(#date+start, #date+end, "W")'))
 def test_simple(self):
     self.assertEqual(2, e.eval(self.row, '1 + 1'))
示例#5
0
 def test_tolower_function(self):
     self.assertEqual("coast region", e.eval(self.row, 'tolower(#adm1)'))
示例#6
0
 def test_max_function(self):
     self.assertEqual(400, e.eval(self.row, 'max(#affected)'))
示例#7
0
 def test_tagpatterns(self):
     self.assertEqual(
         300, e.eval(self.row,
                     '#affected+f+children + #affected+m+children'))
示例#8
0
 def test_string_in_calc(self):
     self.assertEqual(100, e.eval(self.row, "#org + #affected+f+children"))
     self.assertEqual(0, e.eval(self.row, "#org * #affected+f+children"))
 def test_min_function(self):
     self.assertEqual(100, e.eval(self.row, 'min(#affected)'))
示例#10
0
 def test_tagpatterns(self):
     self.assertEqual(300, e.eval(self.row, '#affected+f+children + #affected+m+children'))
示例#11
0
 def test_complex_results(self):
     self.assertEqual(50, e.eval(self.row, '#affected+m+children / #affected+m+adults * 100'))
示例#12
0
 def test_order_of_operations(self):
     self.assertEqual(7, e.eval(self.row, '1 + 2 * 3'))
     self.assertEqual(20100, e.eval(self.row, '#affected+f+children + #affected+m+children * 100'))
     self.assertEqual(30000, e.eval(self.row, '(#affected+f+children + #affected+m+children) * 100'))
示例#13
0
 def test_div0(self):
     self.assertEqual('NaN', e.eval(self.row, '#affected+m+children / 0'))
     self.assertEqual('NaN', e.eval(self.row, '#affected+m+children / #org'))
示例#14
0
 def test_string_in_calc(self):
     self.assertEqual(100, e.eval(self.row, "#org + #affected+f+children"))
     self.assertEqual(0, e.eval(self.row, "#org * #affected+f+children"))
示例#15
0
 def test_non_existant_tag(self):
     # non-existant should be zero in numeric calculations
     self.assertEqual(0, e.eval(self.row, "#xxx * 100"))
示例#16
0
 def test_simple(self):
     self.assertEqual(2, e.eval(self.row, '1 + 1'))
示例#17
0
 def test_non_existant_tag(self):
     # non-existant should be zero in numeric calculations
     self.assertEqual(0, e.eval(self.row, "#xxx * 100"))
示例#18
0
 def test_max_function(self):
     self.assertEqual(400, e.eval(self.row, 'max(#affected)'))
示例#19
0
 def test_div0(self):
     self.assertEqual('NaN', e.eval(self.row, '#affected+m+children / 0'))
     self.assertEqual('NaN', e.eval(self.row,
                                    '#affected+m+children / #org'))
示例#20
0
 def test_round_function(self):
     self.assertEqual(3, e.eval(self.row, 'round(3.4)'))
     self.assertEqual(66.7, e.eval(self.row, 'round(#affected+m+children / #affected+f+adults * 1000) / 10'))
示例#21
0
 def test_complex_results(self):
     self.assertEqual(
         50,
         e.eval(self.row,
                '#affected+m+children / #affected+m+adults * 100'))
示例#22
0
 def test_datedif_function(self):
     columns = [hxl.model.Column.parse(tag) for tag in ['#date+start', '#date+end']]
     row = hxl.model.Row(columns=columns, values=['2018-01-01', '2018-02-03'])
     self.assertEqual(5, e.eval(row, 'datedif(#date+start, #date+end, "W")'))
示例#23
0
 def test_min_function(self):
     self.assertEqual(100, e.eval(self.row, 'min(#affected)'))
示例#24
0
 def test_nested_functions(self):
     self.assertEqual(5, e.eval(self.row, 'round(round(3.4) + round(1.9))'))
示例#25
0
 def test_order_of_operations(self):
     self.assertEqual(7, e.eval(self.row, '1 + 2 * 3'))
示例#26
0
 def test_round_function(self):
     self.assertEqual(3, e.eval(self.row, 'round(3.4)'))
示例#27
0
 def test_toupper_function(self):
     self.assertEqual("COAST REGION", e.eval(self.row, 'toupper(#adm1)'))
示例#28
0
 def test_constant(self):
     self.assertEqual(10, e.eval(self.row, '10'))
示例#29
0
 def test_nested_functions(self):
     self.assertEqual(5, e.eval(self.row, 'round(round(3.4) + round(1.9))'))
示例#30
0
 def test_constant(self):
     self.assertEqual(10, e.eval(self.row, '10'))