import unittest import quartic_rule class QuarticTest(unittest.TestCase): """docstring for QuarticTest.""" def setUp(self): self.signals = quartic_rule.load_sigs("./raw_data.json") def test_rules(self): check_rules = quartic_rule.Rule.read_rules("./rules.txt") invalids = quartic_rule.validate_sigs(self.signals,check_rules) invalid_idx = [i[2] for i in invalids] expected = [16 ,26 ,37 ,77 ,88 ,96 ,155,172,190] self.assertEqual(invalid_idx ,expected) def test_rules_test(self): check_rules = quartic_rule.Rule.read_rules("./rules_test.txt") invalids = quartic_rule.validate_sigs(self.signals,check_rules) invalid_idx = [i[2] for i in invalids] expected = [1, 9, 45, 53, 85, 109, 110, 119, 122, 142, 152, 199] self.assertEqual(invalid_idx ,expected) def test_rule1(self): check_rules = quartic_rule.Rule.rule_engine_from("ATL3 -> Datetime !> now") invalids = quartic_rule.validate_sigs(self.signals,check_rules) invalid_idx = [i[2] for i in invalids] expected = [26, 37, 96, 172, 190] self.assertEqual(invalid_idx ,expected) def test_rule2(self): check_rules = quartic_rule.Rule.rule_engine_from("ATL2 -> Datetime != 2017-05-13 06:22:35") invalids = quartic_rule.validate_sigs(self.signals,check_rules) invalid_idx = [i[2] for i in invalids] expected = [9] self.assertEqual(invalid_idx ,expected) if __name__ == '__main__': unittest.main()