41 lines
1.5 KiB
Python
41 lines
1.5 KiB
Python
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()
|