123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- #include <algorithm>
- #include <cstring>
- #include <limits>
- #include <vector>
- #include "epid/common-testhelper/epid_gtest-testhelper.h"
- #include "gtest/gtest.h"
- extern "C" {
- #include "epid/member/api.h"
- }
- #include "epid/common-testhelper/errors-testhelper.h"
- #include "epid/common-testhelper/prng-testhelper.h"
- #include "epid/member/unittests/member-testhelper.h"
- #define COUNT_OF(A) (sizeof(A) / sizeof((A)[0]))
- namespace {
- TEST_F(EpidMemberTest, AddPreSigsFailsGivenNullPointer) {
- Prng my_prng;
- MemberCtxObj member(this->kGroupPublicKey, this->kMemberPrivateKey,
- this->kMemberPrecomp, &Prng::Generate, &my_prng);
- EXPECT_EQ(kEpidBadArgErr, EpidAddPreSigs(nullptr, 1));
- }
- TEST_F(EpidMemberTest, AddPreSigsFailsGivenHugeNumberOfPreSigs) {
- Prng my_prng;
- MemberCtxObj member(this->kGroupPublicKey, this->kMemberPrivateKey,
- this->kMemberPrecomp, &Prng::Generate, &my_prng);
-
- EXPECT_NE(kEpidNoErr, EpidAddPreSigs(member, (SIZE_MAX >> 1) + 2));
- }
- TEST_F(EpidMemberTest,
- AddPreSigsComputesSpecifiedNumberOfPresigsIfInputPresigsNull) {
- Prng my_prng;
- MemberCtxObj member(this->kGroupPublicKey, this->kMemberPrivateKey,
- this->kMemberPrecomp, &Prng::Generate, &my_prng);
- ASSERT_EQ(kEpidNoErr, EpidAddPreSigs(member, 2));
- ASSERT_EQ(kEpidNoErr, EpidAddPreSigs(member, 1));
-
- ASSERT_EQ(kEpidNoErr, EpidAddPreSigs(member, 0));
- EXPECT_EQ((size_t)3, EpidGetNumPreSigs(member));
- }
- TEST_F(EpidMemberTest, AddPreSigsAddsCorrectNumberOfPresigsGivenValidInput) {
- Prng my_prng;
- MemberCtxObj member(this->kGroupPublicKey, this->kMemberPrivateKey,
- this->kMemberPrecomp, &Prng::Generate, &my_prng);
- const size_t presigs1_added = 2;
- const size_t presigs2_added = 3;
-
- ASSERT_EQ(kEpidNoErr, EpidAddPreSigs(member, presigs1_added));
-
- ASSERT_EQ(kEpidNoErr, EpidAddPreSigs(member, presigs2_added));
-
- ASSERT_EQ(kEpidNoErr, EpidAddPreSigs(member, 0));
- EXPECT_EQ(presigs1_added + presigs2_added, EpidGetNumPreSigs(member));
- }
- TEST_F(EpidMemberTest, GetNumPreSigsReturnsZeroGivenNullptr) {
- EXPECT_EQ((size_t)0, EpidGetNumPreSigs(nullptr));
- }
- TEST_F(EpidMemberTest, NumPreSigsForNewleyCreatedContextIsZero) {
- Prng my_prng;
- MemberCtxObj member(this->kGroupPublicKey, this->kMemberPrivateKey,
- this->kMemberPrecomp, &Prng::Generate, &my_prng);
- EXPECT_EQ((size_t)0, EpidGetNumPreSigs(member));
- }
- TEST_F(EpidMemberTest, GetNumPreSigsReturnsNumberOfAddedPresigs) {
- Prng my_prng;
- MemberCtxObj member(this->kGroupPublicKey, this->kMemberPrivateKey,
- this->kMemberPrecomp, &Prng::Generate, &my_prng);
- const size_t presigs_added = 5;
- THROW_ON_EPIDERR(EpidAddPreSigs(member, presigs_added));
- EXPECT_EQ(presigs_added, EpidGetNumPreSigs(member));
- }
- }
|