aboutsummaryrefslogtreecommitdiff
path: root/test/src
diff options
context:
space:
mode:
authorJ08nY2018-04-05 21:31:49 +0200
committerJ08nY2018-04-07 14:38:24 +0200
commit0e4cfed57e2e23c7854b7a3f85efbc952deabcda (patch)
treed6490f2ccab472c9d86c3442b62003bfb9f951de /test/src
parent99e192422d95240adbe806a53caabfa9ddb258c3 (diff)
downloadecgen-0e4cfed57e2e23c7854b7a3f85efbc952deabcda.tar.gz
ecgen-0e4cfed57e2e23c7854b7a3f85efbc952deabcda.tar.zst
ecgen-0e4cfed57e2e23c7854b7a3f85efbc952deabcda.zip
Diffstat (limited to 'test/src')
-rw-r--r--test/src/cm/test_p1363.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/src/cm/test_p1363.c b/test/src/cm/test_p1363.c
new file mode 100644
index 0000000..fdc1823
--- /dev/null
+++ b/test/src/cm/test_p1363.c
@@ -0,0 +1,33 @@
+/*
+ * ecgen, tool for generating Elliptic curve domain parameters
+ * Copyright (C) 2017 J08nY
+ */
+
+#include <criterion/criterion.h>
+#include "test/default.h"
+#include "cm/p1363.h"
+
+
+TestSuite(p1363, .init = default_setup, .fini = default_teardown);
+
+Test(p1363, test_p1363_forms) {
+ GEN D = stoi(71);
+ p1363_form_t **forms;
+ size_t nforms = p1363_forms(D, &forms);
+
+ p1363_form_t expected[7] = {
+ {gen_1, gen_0, stoi(71)},
+ {stoi(3), gen_1, stoi(24)},
+ {stoi(3), gen_m1, stoi(24)},
+ {stoi(8), gen_1, stoi(9)},
+ {stoi(8), gen_m1, stoi(9)},
+ {stoi(5), stoi(2), stoi(15)},
+ {stoi(5), stoi(-2), stoi(15)}
+ };
+ cr_assert_eq(nforms, 7,);
+ for (size_t i = 0; i < nforms; ++i) {
+ cr_assert(equalii(forms[i]->A, expected[i].A), );
+ cr_assert(equalii(forms[i]->B, expected[i].B), );
+ cr_assert(equalii(forms[i]->C, expected[i].C), );
+ }
+} \ No newline at end of file