diff options
| author | J08nY | 2017-08-29 16:59:14 +0200 |
|---|---|---|
| committer | J08nY | 2017-08-29 16:59:14 +0200 |
| commit | 3e9be5f5db1bccb5eb11d51cf615182eb394afb6 (patch) | |
| tree | 93977fbc769daaf1b89620753070e4f408b7bf41 /test/src/math/test_subgroups.c | |
| parent | f98b11a252ca227cf0376a3cd7cf1d69f6686385 (diff) | |
| parent | 4b5d03eda289aa477e693cad8b598a398bb7e04c (diff) | |
| download | ecgen-3e9be5f5db1bccb5eb11d51cf615182eb394afb6.tar.gz ecgen-3e9be5f5db1bccb5eb11d51cf615182eb394afb6.tar.zst ecgen-3e9be5f5db1bccb5eb11d51cf615182eb394afb6.zip | |
Diffstat (limited to 'test/src/math/test_subgroups.c')
| -rw-r--r-- | test/src/math/test_subgroups.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/test/src/math/test_subgroups.c b/test/src/math/test_subgroups.c new file mode 100644 index 0000000..ad42282 --- /dev/null +++ b/test/src/math/test_subgroups.c @@ -0,0 +1,28 @@ +/* + * ecgen, tool for generating Elliptic curve domain parameters + * Copyright (C) 2017 J08nY + */ +#include "gen/types.h" +#include "math/subgroups.h" +#include <criterion/criterion.h> +#include "test/utils.h" + +TestSuite(subgroups, .init=default_setup, .fini=default_teardown); + +Test(subgroups, test_prime_factors) { + curve_t curve = {.order = stoi(12)}; + config_t cfg = {.prime = false}; + GEN divs = subgroups_prime(&curve, &cfg); + GEN vec = gtocol0(gen_0, 2); + gel(vec, 1) = stoi(2); + gel(vec, 2) = stoi(3); + cr_assert(gequal(divs, vec), "Factors not equal!"); +} + +Test(subgroups, test_prime_prime) { + curve_t curve = {.order = stoi(5)}; + config_t cfg = {.prime = true}; + GEN divs = subgroups_prime(&curve, &cfg); + GEN vec = gtocol(stoi(5)); + cr_assert(gequal(divs, vec), "Factors not equal!"); +}
\ No newline at end of file |
