diff options
Diffstat (limited to 't/utils.py')
| -rw-r--r-- | t/utils.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/t/utils.py b/t/utils.py new file mode 100644 index 0000000..fe9db26 --- /dev/null +++ b/t/utils.py @@ -0,0 +1,34 @@ +from aergia.aergia import Aergia +import unittest + + +class AergiaUnitTestCase(unittest.TestCase): + + interval = 0.01 + Aergia = Aergia(interval) + + def setUp(self): + self.Aergia.clear() + + def assertFuncContains(self, func_name, samples_expected, samples): + samples_actual = self.extract_values_by_func(samples, + func_name) + self.assertTrue(len(samples_expected) == len(samples_actual)) + s1 = sorted(samples_expected) + s2 = sorted(samples_actual) + for v1, v2 in zip(s1, s2): + self.assertRoughlyEqual(v1, v2) + + def assertRoughlyEqual(self, v1, v2): + print(f'{v1}, {v2}') + a = abs(v1 - v2) + self.assertTrue(a <= 1) + + def expected_samples(self, total_seconds): + return (total_seconds / self.interval) + + def extract_values_by_func(self, samples, func_name): + return [ + value for key, value in samples.items() + if key.func == func_name + ] |
