aboutsummaryrefslogtreecommitdiff
path: root/test/test_filter.py
diff options
context:
space:
mode:
authorJ08nY2018-11-20 00:36:46 +0100
committerJ08nY2019-03-14 18:03:54 +0100
commite0a6e7c452cd55365096bc3e4b8f36f5f9660ae7 (patch)
treebf1c80e015cdfd47d864665946f44a072f7b38db /test/test_filter.py
downloadpyecsca-e0a6e7c452cd55365096bc3e4b8f36f5f9660ae7.tar.gz
pyecsca-e0a6e7c452cd55365096bc3e4b8f36f5f9660ae7.tar.zst
pyecsca-e0a6e7c452cd55365096bc3e4b8f36f5f9660ae7.zip
Diffstat (limited to 'test/test_filter.py')
-rw-r--r--test/test_filter.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/test/test_filter.py b/test/test_filter.py
new file mode 100644
index 0000000..a454d98
--- /dev/null
+++ b/test/test_filter.py
@@ -0,0 +1,35 @@
+from unittest import TestCase
+
+import numpy as np
+from pyecsca import Trace, filter_lowpass, filter_highpass, filter_bandpass, filter_bandstop
+from .utils import plot
+
+
+class FilterTests(TestCase):
+
+ def setUp(self):
+ self._trace = Trace(None, None, np.array([5, 12, 15, 13, 15, 11, 7, 2, -4, -8, -10, -8, -13, -9, -11, -8, -5], dtype=np.dtype("i1")))
+
+ def test_lowpass(self):
+ result = filter_lowpass(self._trace, 100, 20)
+ self.assertIsNotNone(result)
+ self.assertEqual(len(self._trace.samples), len(result.samples))
+ plot(self, self._trace, result)
+
+ def test_highpass(self):
+ result = filter_highpass(self._trace, 128, 20)
+ self.assertIsNotNone(result)
+ self.assertEqual(len(self._trace.samples), len(result.samples))
+ plot(self, self._trace, result)
+
+ def test_bandpass(self):
+ result = filter_bandpass(self._trace, 128, 20, 60)
+ self.assertIsNotNone(result)
+ self.assertEqual(len(self._trace.samples), len(result.samples))
+ plot(self, self._trace, result)
+
+ def test_bandstop(self):
+ result = filter_bandstop(self._trace, 128, 20, 60)
+ self.assertIsNotNone(result)
+ self.assertEqual(len(self._trace.samples), len(result.samples))
+ plot(self, self._trace, result)