summaryrefslogtreecommitdiff
path: root/t/utils.py
diff options
context:
space:
mode:
authorbd <bdunahu@operationnull.com>2025-07-19 22:21:10 -0600
committerbd <bdunahu@operationnull.com>2025-07-19 22:21:10 -0600
commitac55d9ff0b588b91202ccad72ee71e508e33ad08 (patch)
tree4933b49b67f1affa16f8e7c63e0d214bfa7d62e8 /t/utils.py
parentd08f067f8f470b440b563293397116d6036c4d71 (diff)
Reformat repository to allow for new unit tests
Diffstat (limited to 't/utils.py')
-rw-r--r--t/utils.py34
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
+ ]