Add secp256k1_scalar_add_bit
This commit is contained in:
19
src/tests.c
19
src/tests.c
@@ -382,6 +382,25 @@ void scalar_test(void) {
|
||||
CHECK(secp256k1_scalar_eq(&r1, &r2));
|
||||
}
|
||||
|
||||
{
|
||||
/* Test add_bit. */
|
||||
int bit = secp256k1_rand32() % 256;
|
||||
secp256k1_scalar_t b;
|
||||
secp256k1_scalar_clear(&b);
|
||||
secp256k1_scalar_add_bit(&b, 0);
|
||||
CHECK(secp256k1_scalar_is_one(&b));
|
||||
for (int i = 0; i < bit; i++) {
|
||||
secp256k1_scalar_add(&b, &b, &b);
|
||||
}
|
||||
secp256k1_scalar_t r1 = s1, r2 = s1;
|
||||
secp256k1_scalar_add(&r1, &r1, &b);
|
||||
if (!(secp256k1_scalar_get_bits(&s1, 255, 1) == 1 && secp256k1_scalar_get_bits(&r1, 255, 1) == 0)) {
|
||||
/* No overflow happened. */
|
||||
secp256k1_scalar_add_bit(&r2, bit);
|
||||
CHECK(secp256k1_scalar_eq(&r1, &r2));
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
/* Test commutativity of mul. */
|
||||
secp256k1_scalar_t r1, r2;
|
||||
|
||||
Reference in New Issue
Block a user