1 package civitas.common.encryptedchoice.tests;
2
3 import static org.mockito.ArgumentMatchers.any;
4 import static org.mockito.ArgumentMatchers.eq;
5 import static org.mockito.Mockito.mock;
6 import static org.mockito.Mockito.when;
7
8 import civitas.common.ballot.tests.BallotTestData;
9 import civitas.common.encryptedchoice.EncryptChoice;
10 import civitas.common.encryptedchoice.EncryptedChoice;
11 import civitas.crypto.oneoflreencryption.tests.ElGamal1OfLReencryptionTestData;
12
13 public class EncryptChoiceStub implements BallotTestData, ElGamal1OfLReencryptionTestData {
14
15 public static EncryptChoice stub() {
16 EncryptChoice mock = mock(EncryptChoice.class);
17 for (Integer piece : VOTE_PIECES) {
18 when(mock.apply(any(), any(), any(), eq(piece)))
19 .thenReturn(new EncryptedChoice(
20 ELGAMAL_REENCRYPT_FACTOR_EPRIME,
21 EL_GAMAL_1_OF_L_REENCRYPTION_MAP.get(BALLOT.matrix[piece])));
22 }
23 return mock;
24 }
25 }