Skip to content

Commit 60525f6

Browse files
committed
Add unit tests for group.h equality functions
1 parent a47cd97 commit 60525f6

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

src/tests.c

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3706,11 +3706,12 @@ static void test_ge(void) {
37063706
secp256k1_ge_clear(&ge[0]);
37073707
secp256k1_ge_set_gej_var(&ge[0], &gej[0]);
37083708
for (i = 0; i < runs; i++) {
3709-
int j;
3709+
int j, k;
37103710
secp256k1_ge g;
37113711
random_group_element_test(&g);
37123712
if (i >= runs - 2) {
37133713
secp256k1_ge_mul_lambda(&g, &ge[1]);
3714+
CHECK(!secp256k1_ge_eq_var(&g, &ge[1]));
37143715
}
37153716
if (i >= runs - 1) {
37163717
secp256k1_ge_mul_lambda(&g, &g);
@@ -3730,6 +3731,16 @@ static void test_ge(void) {
37303731
random_gej_y_magnitude(&gej[1 + j + 4 * i]);
37313732
random_gej_z_magnitude(&gej[1 + j + 4 * i]);
37323733
}
3734+
3735+
for (j = 0; j < 4; ++j) {
3736+
for (k = 0; k < 4; ++k) {
3737+
int expect_equal = (j >> 1) == (k >> 1);
3738+
CHECK(secp256k1_ge_eq_var(&ge[1 + j + 4 * i], &ge[1 + k + 4 * i]) == expect_equal);
3739+
CHECK(secp256k1_gej_eq_var(&gej[1 + j + 4 * i], &gej[1 + k + 4 * i]) == expect_equal);
3740+
CHECK(secp256k1_gej_eq_ge_var(&gej[1 + j + 4 * i], &ge[1 + k + 4 * i]) == expect_equal);
3741+
CHECK(secp256k1_gej_eq_ge_var(&gej[1 + k + 4 * i], &ge[1 + j + 4 * i]) == expect_equal);
3742+
}
3743+
}
37333744
}
37343745

37353746
/* Generate random zf, and zfi2 = 1/zf^2, zfi3 = 1/zf^3 */

0 commit comments

Comments
 (0)