aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJ08nY2023-10-10 16:45:08 +0200
committerJ08nY2023-10-10 16:45:28 +0200
commit3e35387deafd024b67513db3bd26b287d0e7e5a4 (patch)
treea6cf9d01e8add59df38cbae1e7dae4b5465b2119
parentffbaa1ae62095eb644eda67571aa8845aa6fb09d (diff)
downloadpyecsca-codegen-3e35387deafd024b67513db3bd26b287d0e7e5a4.tar.gz
pyecsca-codegen-3e35387deafd024b67513db3bd26b287d0e7e5a4.tar.zst
pyecsca-codegen-3e35387deafd024b67513db3bd26b287d0e7e5a4.zip
Add regression test for #5.
-rw-r--r--test/test_regress.py49
1 files changed, 49 insertions, 0 deletions
diff --git a/test/test_regress.py b/test/test_regress.py
new file mode 100644
index 0000000..d85d6f6
--- /dev/null
+++ b/test/test_regress.py
@@ -0,0 +1,49 @@
+import pytest
+from pyecsca.ec.configuration import (
+ HashType,
+ RandomMod,
+ Multiplication,
+ Squaring,
+ Reduction,
+ Inversion,
+)
+from pyecsca.ec.mult import LTRMultiplier
+
+from pyecsca.codegen.common import Platform, DeviceConfiguration
+from pyecsca.codegen.render import render_and_build
+
+
+@pytest.mark.xfail(reason="Issue not resolved yet.")
+def test_regress_5(secp128r1, tmp_path):
+ platform = Platform.HOST
+ hash_type = HashType.SHA1
+ mod_rand = RandomMod.REDUCE
+ mult = Multiplication.BASE
+ sqr = Squaring.BASE
+ red = Reduction.BASE
+ inv = Inversion.GCD
+ model = secp128r1.curve.model
+ coords = secp128r1.curve.coordinate_model
+ add = coords.formulas["add-2015-rcb"]
+ dbl = coords.formulas["dbl-2015-rcb"]
+ scl = coords.formulas["z"]
+ formulas = [add, dbl, scl]
+ scalarmult = LTRMultiplier(add, dbl, scl)
+ config = DeviceConfiguration(
+ model,
+ coords,
+ formulas,
+ scalarmult,
+ hash_type,
+ mod_rand,
+ mult,
+ sqr,
+ red,
+ inv,
+ platform,
+ True,
+ True,
+ True,
+ )
+ dir, elf_file, hex_file, res = render_and_build(config, str(tmp_path), True)
+ assert res.returncode == 0