add packaging
[platform/upstream/nettle.git] / testsuite / random-prime-test.c
1 #include "testutils.h"
2
3 #include "knuth-lfib.h"
4
5 void
6 test_main(void)
7 {
8   struct knuth_lfib_ctx lfib;
9   mpz_t p;
10   unsigned bits;
11
12   knuth_lfib_init(&lfib, 17);
13
14   mpz_init(p);
15   for (bits = 6; bits < 1000; bits = bits + 1 + bits/20)
16     {
17       if (verbose)
18         fprintf(stderr, "bits = %d\n", bits);
19       
20       nettle_random_prime(p, bits, 0,
21                           &lfib, (nettle_random_func *) knuth_lfib_random,
22                           NULL, NULL);
23       ASSERT (mpz_sizeinbase (p, 2) == bits);
24       ASSERT (mpz_probab_prime_p(p, 25));
25     }
26
27   mpz_clear(p);
28 }