diff options
Diffstat (limited to 'test/src')
| -rw-r--r-- | test/src/exhaustive/test_ansi.c | 44 | ||||
| -rw-r--r-- | test/src/gen/test_gp.c | 48 | ||||
| -rw-r--r-- | test/src/gen/test_point.c | 18 | ||||
| -rw-r--r-- | test/src/io/test_cli.c | 30 | ||||
| -rw-r--r-- | test/src/math/test_subgroups.c | 25 | ||||
| -rw-r--r-- | test/src/test/default.c | 2 | ||||
| -rw-r--r-- | test/src/test/input.c | 4 | ||||
| -rw-r--r-- | test/src/test/output.c | 4 |
8 files changed, 71 insertions, 104 deletions
diff --git a/test/src/exhaustive/test_ansi.c b/test/src/exhaustive/test_ansi.c index 3e3e4e1..370cf7e 100644 --- a/test/src/exhaustive/test_ansi.c +++ b/test/src/exhaustive/test_ansi.c @@ -5,6 +5,7 @@ #include <criterion/criterion.h> #include <criterion/parameterized.h> +#include <misc/config.h> #include "exhaustive/ansi.h" #include "gen/field.h" #include "gen/seed.h" @@ -32,8 +33,8 @@ TestSuite(ansi, .init = ansi_suite_setup, .fini = ansi_suite_teardown); Test(ansi, test_seed_random) { curve_t curve = {}; - config_t cfg = {.bits = 256}; - int ret = ansi_gen_seed_random(&curve, &cfg, NULL, OFFSET_SEED); + cfg->bits = 256; + int ret = ansi_gen_seed_random(&curve, NULL, OFFSET_SEED); cr_assert_eq(ret, 1, ); cr_assert_not_null(curve.seed, ); @@ -44,8 +45,9 @@ Test(ansi, test_seed_random) { Test(ansi, test_seed_argument) { curve_t curve = {}; char *seed = "abcdefabcdefabcdefabcdefabcdefabcdefabcd"; - config_t cfg = {.seed = seed, .bits = 256}; - int ret = ansi_gen_seed_argument(&curve, &cfg, NULL, OFFSET_SEED); + cfg->seed = seed; + cfg->bits = 256; + int ret = ansi_gen_seed_argument(&curve, NULL, OFFSET_SEED); cr_assert_eq(ret, 1, ); cr_assert_not_null(curve.seed, ); @@ -59,8 +61,9 @@ Test(ansi, test_seed_argument) { Test(ansi, test_seed_argument_hex) { curve_t curve = {}; char *seed = "0xabcdefabcdefabcdefabcdefabcdefabcdefabcd"; - config_t cfg = {.seed = seed, .bits = 256}; - int ret = ansi_gen_seed_argument(&curve, &cfg, NULL, OFFSET_SEED); + cfg->seed = seed; + cfg->bits = 256; + int ret = ansi_gen_seed_argument(&curve, NULL, OFFSET_SEED); cr_assert_eq(ret, 1, ); cr_assert_not_null(curve.seed, ); @@ -74,9 +77,9 @@ Test(ansi, test_seed_argument_hex) { Test(ansi, test_seed_input) { curve_t curve = {}; char *seed = "abcdefabcdefabcdefabcdefabcdefabcdefabcd"; - config_t cfg = {.bits = 256}; + cfg->bits = 256; fprintf(write_in, "%s\n", seed); - int ret = ansi_gen_seed_input(&curve, &cfg, NULL, OFFSET_SEED); + int ret = ansi_gen_seed_input(&curve, NULL, OFFSET_SEED); cr_assert_eq(ret, 1, ); cr_assert_not_null(curve.seed, ); @@ -90,9 +93,8 @@ Test(ansi, test_seed_input) { Test(ansi, test_seed_input_short) { curve_t curve = {}; char *seed = "abcdef"; - config_t cfg = {}; fprintf(write_in, "%s\n", seed); - int ret = ansi_gen_seed_input(&curve, &cfg, NULL, OFFSET_SEED); + int ret = ansi_gen_seed_input(&curve, NULL, OFFSET_SEED); cr_assert_eq(ret, 0, ); } @@ -167,18 +169,17 @@ ParameterizedTestParameters(ansi, test_seed_prime_examples) { return cr_make_param_array(struct prime_params, params, nb_params, NULL); } ParameterizedTest(struct prime_params *param, ansi, test_seed_prime_examples) { - config_t cfg = {}; - cfg.bits = param->bits; - cfg.field = FIELD_PRIME; - cfg.seed = param->seed; + cfg->bits = param->bits; + cfg->field = FIELD_PRIME; + cfg->seed = param->seed; curve_t curve = {}; bits_t *p = bits_from_hex(param->p); curve.field = bits_to_i(p); - int ret = ansi_gen_seed_argument(&curve, &cfg, NULL, OFFSET_SEED); + int ret = ansi_gen_seed_argument(&curve, NULL, OFFSET_SEED); cr_assert_eq(ret, 1, ); - ret = ansi_gen_equation(&curve, &cfg, NULL, OFFSET_SEED); + ret = ansi_gen_equation(&curve, NULL, OFFSET_SEED); cr_assert_eq(ret, 1, ); GEN expected_r = bits_to_i(bits_from_hex(param->r)); cr_assert(gequal(curve.seed->ansi.r, expected_r), ); @@ -268,20 +269,19 @@ ParameterizedTestParameters(ansi, test_seed_binary_examples) { } ParameterizedTest(struct binary_params *param, ansi, test_seed_binary_examples) { - config_t cfg = {}; - cfg.bits = param->bits; - cfg.field = FIELD_BINARY; - cfg.seed = param->seed; + cfg->bits = param->bits; + cfg->field = FIELD_BINARY; + cfg->seed = param->seed; curve_t curve = {}; curve.field = poly_gen(¶m->field); GEN expected_b = bits_to_i(bits_from_hex(param->b)); bits_t *b = bits_from_i(expected_b); - int ret = ansi_gen_seed_argument(&curve, &cfg, NULL, OFFSET_SEED); + int ret = ansi_gen_seed_argument(&curve, NULL, OFFSET_SEED); cr_assert_eq(ret, 1, ); - ret = ansi_gen_equation(&curve, &cfg, NULL, OFFSET_SEED); + ret = ansi_gen_equation(&curve, NULL, OFFSET_SEED); cr_assert_eq(ret, 1, ); GEN curve_b = field_elementi(curve.b); cr_assert(gequal(curve_b, expected_b), ); diff --git a/test/src/gen/test_gp.c b/test/src/gen/test_gp.c index 3f7a777..8ec5e2c 100644 --- a/test/src/gen/test_gp.c +++ b/test/src/gen/test_gp.c @@ -12,10 +12,9 @@ TestSuite(gp, .init = default_setup, .fini = default_teardown); Test(gp, test_gp_gen_seed) { curve_t curve = {0}; - config_t cfg = {}; arg_t arg = {.args = "() -> { return(Vecsmall([1,0])); }", .nargs = 1}; - int ret = gp_gen(&curve, &cfg, &arg, OFFSET_SEED); + int ret = gp_gen(&curve, &arg, OFFSET_SEED); cr_assert_eq(ret, 1,); cr_assert_not_null(curve.seed,); cr_assert_not_null(curve.seed->seed,); @@ -24,40 +23,36 @@ Test(gp, test_gp_gen_seed) { Test(gp, test_gp_gen_field) { curve_t curve = {0}; - config_t cfg = {}; arg_t arg = {.args = "(seed) -> { return(19); }", .nargs = 1}; - int ret = gp_gen(&curve, &cfg, &arg, OFFSET_FIELD); + int ret = gp_gen(&curve, &arg, OFFSET_FIELD); cr_assert_eq(ret, 1,); cr_assert(gequal(curve.field, stoi(19)),); } Test(gp, test_gp_gen_a) { curve_t curve = {.field = stoi(19)}; - config_t cfg = {}; arg_t arg = {.args = "(seed, field) -> { return(Mod(3,field)); }", .nargs = 1}; - int ret = gp_gen(&curve, &cfg, &arg, OFFSET_A); + int ret = gp_gen(&curve, &arg, OFFSET_A); cr_assert_eq(ret, 1,); cr_assert(gequal(curve.a, mkintmodu(3, 19)),); } Test(gp, test_gp_gen_b) { curve_t curve = {.field = stoi(19), .a = mkintmodu(3, 19)}; - config_t cfg = {}; arg_t arg = {.args = "(seed, field, a) -> { return(a * 2); }", .nargs = 1}; - int ret = gp_gen(&curve, &cfg, &arg, OFFSET_B); + int ret = gp_gen(&curve, &arg, OFFSET_B); cr_assert_eq(ret, 1,); cr_assert(gequal(curve.b, mkintmodu(6, 19)),); } Test(gp, test_gp_gen_curve) { curve_t curve = {.field = stoi(19), .a = mkintmodu(3, 19), .b = mkintmodu(6, 19)}; - config_t cfg = {}; arg_t arg = {.args = "(seed, field, a, b) -> { return(ellinit([a,b], field)); }", .nargs = 1}; - int ret = gp_gen(&curve, &cfg, &arg, OFFSET_CURVE); + int ret = gp_gen(&curve, &arg, OFFSET_CURVE); cr_assert_eq(ret, 1,); cr_assert(gequal(curve.curve, ellinit(mkvec2(curve.a, curve.b), curve.field, 0)),); } @@ -65,10 +60,9 @@ Test(gp, test_gp_gen_curve) { Test(gp, test_gp_gen_order) { curve_t curve = {.field = stoi(19), .a = mkintmodu(3, 19), .b = mkintmodu(6, 19), .curve = ellinit(mkvec2(stoi(3), stoi(6)), stoi(19), 0)}; - config_t cfg = {}; arg_t arg = {.args = "(seed, field, a, b, curve) -> { return(ellsea(curve)); }", .nargs = 1}; - int ret = gp_gen(&curve, &cfg, &arg, OFFSET_ORDER); + int ret = gp_gen(&curve, &arg, OFFSET_ORDER); cr_assert_eq(ret, 1,); cr_assert(gequal(ellsea(curve.curve, 0), curve.order),); } @@ -77,10 +71,9 @@ Test(gp, test_gp_gen_generators) { curve_t curve = {.field = stoi(19), .a = mkintmodu(3, 19), .b = mkintmodu(6, 19), .curve = ellinit(mkvec2(stoi(3), stoi(6)), stoi(19), 0), .order = stoi(16) }; - config_t cfg = {}; arg_t arg = {.args = "(seed, field, a, b, curve, order) -> { return(ellgenerators(curve)); }", .nargs = 1}; - int ret = gp_gen(&curve, &cfg, &arg, OFFSET_GENERATORS); + int ret = gp_gen(&curve, &arg, OFFSET_GENERATORS); cr_assert_eq(ret, 1,); GEN ellgens = ellgenerators(curve.curve); @@ -100,10 +93,9 @@ Test(gp, test_gp_gen_points) { curve.generators = generators; curve.ngens = 1; - config_t cfg = {}; arg_t arg = {.args = "(seed, field, a, b, curve, order, gens) -> { return([ellmul(curve,gens[1],2)]); }", .nargs = 1}; - int ret = gp_gen(&curve, &cfg, &arg, OFFSET_POINTS); + int ret = gp_gen(&curve, &arg, OFFSET_POINTS); cr_assert_eq(ret, 1,); cr_assert_eq(curve.npoints, 1,); cr_assert(gequal(curve.points[0]->point, ellmul(curve.curve, gen.point, stoi(2))),); @@ -113,10 +105,9 @@ Test(gp, test_gp_check_seed) { seed_t seed = {.seed = bits_from_hex("ff")}; curve_t curve = {.seed = &seed}; - config_t cfg = {}; arg_t arg = {.args="(seed) -> { return(1);}"}; - int ret = gp_check(&curve, &cfg, &arg, OFFSET_SEED); + int ret = gp_check(&curve, &arg, OFFSET_SEED); cr_assert_eq(ret, 1,); } @@ -124,10 +115,9 @@ Test(gp, test_gp_check_field) { seed_t seed = {.seed = bits_from_hex("ff")}; curve_t curve = {.seed = &seed, .field = stoi(19)}; - config_t cfg = {}; arg_t arg = {.args="(seed, field) -> { if(field == 19, return(1));}"}; - int ret = gp_check(&curve, &cfg, &arg, OFFSET_FIELD); + int ret = gp_check(&curve, &arg, OFFSET_FIELD); cr_assert_eq(ret, 1,); } @@ -135,10 +125,9 @@ Test(gp, test_gp_check_a) { seed_t seed = {.seed = bits_from_hex("ff")}; curve_t curve = {.seed = &seed, .field = stoi(19), .a = mkintmodu(3, 19)}; - config_t cfg = {}; arg_t arg = {.args="(seed, field, a) -> { if(a == Mod(3,19), return(1));}"}; - int ret = gp_check(&curve, &cfg, &arg, OFFSET_A); + int ret = gp_check(&curve, &arg, OFFSET_A); cr_assert_eq(ret, 1,); } @@ -146,10 +135,9 @@ Test(gp, test_gp_check_b) { seed_t seed = {.seed = bits_from_hex("ff")}; curve_t curve = {.seed = &seed, .field = stoi(19), .a = mkintmodu(3, 19), .b = mkintmodu(5, 19)}; - config_t cfg = {}; arg_t arg = {.args="(seed, field, a, b) -> { if(b == Mod(5,19), return(1));}"}; - int ret = gp_check(&curve, &cfg, &arg, OFFSET_B); + int ret = gp_check(&curve, &arg, OFFSET_B); cr_assert_eq(ret, 1,); } @@ -158,10 +146,9 @@ Test(gp, test_gp_check_curve) { curve_t curve = {.seed = &seed, .field = stoi(19), .a = mkintmodu(3, 19), .b = mkintmodu(5, 19), .curve = ellinit(mkvec2(stoi(3), stoi(5)), stoi(19), 0)}; - config_t cfg = {}; arg_t arg = {.args="(seed, field, a, b, curve) -> { if(curve == ellinit([3, 5], 19), return(1));}"}; - int ret = gp_check(&curve, &cfg, &arg, OFFSET_CURVE); + int ret = gp_check(&curve, &arg, OFFSET_CURVE); cr_assert_eq(ret, 1,); } @@ -170,10 +157,9 @@ Test(gp, test_gp_check_order) { curve_t curve = {.seed = &seed, .field = stoi(19), .a = mkintmodu(3, 19), .b = mkintmodu(5, 19), .curve = ellinit(mkvec2(stoi(3), stoi(5)), stoi(19), 0), .order = stoi(16)}; - config_t cfg = {}; arg_t arg = {.args="(seed, field, a, b, curve, order) -> { if(order == 16, return(1));}"}; - int ret = gp_check(&curve, &cfg, &arg, OFFSET_ORDER); + int ret = gp_check(&curve, &arg, OFFSET_ORDER); cr_assert_eq(ret, 1,); } @@ -187,10 +173,9 @@ Test(gp, test_gp_check_generators) { curve.generators = generators; curve.ngens = 1; - config_t cfg = {}; arg_t arg = {.args="(seed, field, a, b, curve, order, gens) -> { if(gens == ellgenerators(curve), return(1));}"}; - int ret = gp_check(&curve, &cfg, &arg, OFFSET_GENERATORS); + int ret = gp_check(&curve, &arg, OFFSET_GENERATORS); cr_assert_eq(ret, 1,); } @@ -206,9 +191,8 @@ Test(gp, test_gp_check_points) { curve.points = generators; curve.npoints = 1; - config_t cfg = {}; arg_t arg = {.args="(seed, field, a, b, curve, order, gens, points) -> { if(points == ellgenerators(curve), return(1));}"}; - int ret = gp_check(&curve, &cfg, &arg, OFFSET_POINTS); + int ret = gp_check(&curve, &arg, OFFSET_POINTS); cr_assert_eq(ret, 1,); }
\ No newline at end of file diff --git a/test/src/gen/test_point.c b/test/src/gen/test_point.c index d185e9a..86eede1 100644 --- a/test/src/gen/test_point.c +++ b/test/src/gen/test_point.c @@ -13,8 +13,7 @@ Test(point, test_point_random) { // curve = ellinit([1, 3], 23), order = 27 GEN e = ellinit(mkvec2s(1, 3), stoi(23), -1); curve_t curve = {.order = stoi(27), .curve = e}; - config_t cfg = {}; - int ret = point_gen_random(&curve, &cfg, NULL, OFFSET_POINTS); + int ret = point_gen_random(&curve, NULL, OFFSET_POINTS); cr_assert_eq(ret, 1, "Point wasn't generated."); cr_assert_eq(curve.npoints, 1, "Incorrect number of points."); @@ -31,10 +30,9 @@ Test(point, test_points_random) { // curve = ellinit([1, 3], 23), order = 27 GEN e = ellinit(mkvec2s(1, 3), stoi(23), -1); curve_t curve = {.order = stoi(27), .curve = e}; - config_t cfg = {}; size_t npoints = 3; arg_t arg = {.args = &npoints, .nargs = 1}; - int ret = points_gen_random(&curve, &cfg, &arg, OFFSET_POINTS); + int ret = points_gen_random(&curve, &arg, OFFSET_POINTS); cr_assert_eq(ret, 1, "Points weren't generated."); cr_assert_eq(curve.npoints, npoints, "Incorrect number of points."); @@ -59,10 +57,9 @@ Test(point, test_points_trial) { gens[0]->point = mkvec2(mkintmodu(15, 23), mkintmodu(14, 23)); curve_t curve = { .order = stoi(27), .curve = e, .ngens = 1, .generators = gens}; - config_t cfg = {}; pari_ulong prime = 3; arg_t arg = {.args = &prime, .nargs = 1}; - int ret = points_gen_trial(&curve, &cfg, &arg, OFFSET_POINTS); + int ret = points_gen_trial(&curve, &arg, OFFSET_POINTS); cr_assert_eq(ret, 1, "Points weren't generated."); cr_assert_eq(curve.npoints, 1, "Incorrect number of points."); @@ -88,9 +85,8 @@ Test(point, test_points_prime) { gens[0]->point = mkvec2(mkintmodu(15, 23), mkintmodu(14, 23)); curve_t curve = { .order = stoi(27), .curve = e, .ngens = 1, .generators = gens}; - config_t cfg = {}; pari_ulong prime = 3; - int ret = points_gen_prime(&curve, &cfg, NULL, OFFSET_POINTS); + int ret = points_gen_prime(&curve, NULL, OFFSET_POINTS); cr_assert_eq(ret, 1, "Points weren't generated."); cr_assert_eq(curve.npoints, 1, "Incorrect number of points."); @@ -116,10 +112,9 @@ Test(point, test_points_all) { gens[0]->point = mkvec2(mkintmodu(15, 23), mkintmodu(14, 23)); curve_t curve = { .order = stoi(27), .curve = e, .ngens = 1, .generators = gens}; - config_t cfg = {}; GEN orders = mkvec3s(3, 9, 27); size_t npoints = 3; - int ret = points_gen_allgroups(&curve, &cfg, NULL, OFFSET_POINTS); + int ret = points_gen_allgroups(&curve, NULL, OFFSET_POINTS); cr_assert_eq(ret, 1, "Points weren't generated."); cr_assert_eq(curve.npoints, npoints, "Incorrect number of points."); @@ -147,10 +142,9 @@ Test(point, test_points_nonprime) { gens[0]->point = mkvec2(mkintmodu(15, 23), mkintmodu(14, 23)); curve_t curve = { .order = stoi(27), .curve = e, .ngens = 1, .generators = gens}; - config_t cfg = {}; GEN orders = mkvec2s(9, 27); size_t npoints = 2; - int ret = points_gen_nonprime(&curve, &cfg, NULL, OFFSET_POINTS); + int ret = points_gen_nonprime(&curve, NULL, OFFSET_POINTS); cr_assert_eq(ret, 1, "Points weren't generated."); cr_assert_eq(curve.npoints, npoints, "Incorrect number of points."); diff --git a/test/src/io/test_cli.c b/test/src/io/test_cli.c index 448fd0c..1701a4e 100644 --- a/test/src/io/test_cli.c +++ b/test/src/io/test_cli.c @@ -17,49 +17,39 @@ TestSuite(cli, .init = default_setup, .fini = default_teardown); Test(cli, test_memory) { int argc = 4; char *argv[] = {"ecgen", "--memory=2k", "--fp", "1"}; - config_t cfg; - memset(&cfg, 0, sizeof(cfg)); - int ret = argp_parse(&test_argp, argc, argv, 0, 0, &cfg); + int ret = argp_parse(&test_argp, argc, argv, 0, 0, cfg); cr_assert_eq(ret, 0, ); - cr_assert_eq(cfg.memory, 2000, ); + cr_assert_eq(cfg->memory, 2000, ); } Test(cli, test_thread_memory) { int argc = 4; char *argv[] = {"ecgen", "--thread-stack=2k", "--fp", "1"}; - config_t cfg; - memset(&cfg, 0, sizeof(cfg)); - int ret = argp_parse(&test_argp, argc, argv, 0, 0, &cfg); + int ret = argp_parse(&test_argp, argc, argv, 0, 0, cfg); cr_assert_eq(ret, 0, ); - cr_assert_eq(cfg.thread_memory, 2000, ); + cr_assert_eq(cfg->thread_memory, 2000, ); } Test(cli, test_threads) { int argc = 4; char *argv[] = {"ecgen", "--threads=2", "--fp", "1"}; - config_t cfg; - memset(&cfg, 0, sizeof(cfg)); - int ret = argp_parse(&test_argp, argc, argv, 0, 0, &cfg); + int ret = argp_parse(&test_argp, argc, argv, 0, 0, cfg); cr_assert_eq(ret, 0, ); - cr_assert_eq(cfg.threads, 2, ); + cr_assert_eq(cfg->threads, 2, ); } Test(cli, test_auto_threads) { int argc = 4; char *argv[] = {"ecgen", "--threads=auto", "--fp", "1"}; - config_t cfg; - memset(&cfg, 0, sizeof(cfg)); - int ret = argp_parse(&test_argp, argc, argv, 0, 0, &cfg); + int ret = argp_parse(&test_argp, argc, argv, 0, 0, cfg); cr_assert_eq(ret, 0, ); - cr_assert_eq(cfg.threads, sysconf(_SC_NPROCESSORS_ONLN), ); + cr_assert_eq(cfg->threads, sysconf(_SC_NPROCESSORS_ONLN), ); } Test(cli, test_timeout) { int argc = 4; char *argv[] = {"ecgen", "--timeout=10m", "--fp", "1"}; - config_t cfg; - memset(&cfg, 0, sizeof(cfg)); - int ret = argp_parse(&test_argp, argc, argv, 0, 0, &cfg); + int ret = argp_parse(&test_argp, argc, argv, 0, 0, cfg); cr_assert_eq(ret, 0, ); - cr_assert_eq(cfg.timeout, 600, ); + cr_assert_eq(cfg->timeout, 600, ); }
\ No newline at end of file diff --git a/test/src/math/test_subgroups.c b/test/src/math/test_subgroups.c index 8a3c8da..a4de20e 100644 --- a/test/src/math/test_subgroups.c +++ b/test/src/math/test_subgroups.c @@ -3,6 +3,7 @@ * Copyright (C) 2017 J08nY */ #include <criterion/criterion.h> +#include <misc/config.h> #include "gen/point.h" #include "math/subgroups.h" #include "test/default.h" @@ -11,24 +12,24 @@ 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); + cfg->prime = false; + GEN divs = subgroups_prime(&curve); GEN vec = mkvec2s(2, 3); cr_assert(gequal(divs, vec), "Factors not equal!"); } Test(subgroups, test_prime_factors_other) { curve_t curve = {.order = stoi(27)}; - config_t cfg = {.prime = false}; - GEN divs = subgroups_prime(&curve, &cfg); + cfg->prime = false; + GEN divs = subgroups_prime(&curve); GEN vec = gtovec(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); + cfg->prime = true; + GEN divs = subgroups_prime(&curve); GEN vec = gtovec(stoi(5)); cr_assert(gequal(divs, vec), "Factors not equal!"); } @@ -36,8 +37,8 @@ Test(subgroups, test_prime_prime) { Test(subgroups, test_nonprime_factors) { // curve = ellinit([1, 3], 23), order = 27 curve_t curve = {.order = stoi(27), .ngens = 1}; - config_t cfg = {.prime = false}; - GEN divs = subgroups_nonprime(&curve, &cfg); + cfg->prime = false; + GEN divs = subgroups_nonprime(&curve); GEN vec = mkvec2s(9, 27); cr_assert(gequal(divs, vec), "Factors not equal!"); } @@ -45,8 +46,8 @@ Test(subgroups, test_nonprime_factors) { Test(subgroups, test_all_factors) { // curve = ellinit([1, 3], 23), order = 27 curve_t curve = {.order = stoi(27), .ngens = 1}; - config_t cfg = {.prime = false}; - GEN divs = subgroups_all(&curve, &cfg); + cfg->prime = false; + GEN divs = subgroups_all(&curve); GEN vec = mkvec3s(3, 9, 27); cr_assert(gequal(divs, vec), "Factors not equal!"); } @@ -64,8 +65,8 @@ Test(subgroups, test_all_factors_two_gens) { gens[1]->point = mkvec2(mkintmodu(20, 23), mkintmodu(19, 23)); curve_t curve = {.order = stoi(24), .ngens = 2, .generators = gens}; - config_t cfg = {.prime = false}; - GEN divs = subgroups_all(&curve, &cfg); + cfg->prime = false; + GEN divs = subgroups_all(&curve); GEN vec = mkvecn(8, stoi(2), stoi(3), stoi(4), stoi(6), stoi(12), stoi(2), stoi(3), stoi(6)); cr_assert(gequal(divs, vec), "Factors not equal!"); diff --git a/test/src/test/default.c b/test/src/test/default.c index 8ce6cc9..3587032 100644 --- a/test/src/test/default.c +++ b/test/src/test/default.c @@ -5,8 +5,10 @@ #include "default.h" #include <criterion/criterion.h> #include <pari/pari.h> +#include "misc/config.h" void default_setup(void) { + memset(cfg, 0, sizeof(config_t)); pari_init(1000000, 1000000); // set_mem_funcs(cr_malloc, cr_simple_calloc, cr_realloc, cr_free); } diff --git a/test/src/test/input.c b/test/src/test/input.c index f171ca8..8332d3e 100644 --- a/test/src/test/input.c +++ b/test/src/test/input.c @@ -8,9 +8,7 @@ FILE *write_in; void input_setup(void) { - config_t cfg; - memset(&cfg, 0, sizeof(cfg)); - input_init(&cfg); + input_init(); int in_fd[2]; pipe(in_fd); diff --git a/test/src/test/output.c b/test/src/test/output.c index 663db4b..280d80a 100644 --- a/test/src/test/output.c +++ b/test/src/test/output.c @@ -21,9 +21,7 @@ static void setup_stream(FILE **original_out, FILE **redirected_out) { } void output_setup(void) { - config_t cfg; - memset(&cfg, 0, sizeof(cfg)); - output_init(&cfg); + output_init(); int in_fd[2]; pipe(in_fd); |
