1 package civitas.common.mix.capabilitymix;
2
3 import static org.mockito.Mockito.mock;
4
5 import java.util.function.Supplier;
6
7 import civitas.common.ballot.BallotTestData;
8 import civitas.common.mix.capabilitymixrevelation.MixCapabilityElementRevelationTestData;
9 import civitas.crypto.ciphertext.ElGamalCiphertext;
10 import civitas.crypto.ciphertext.ElGamalCiphertextish;
11 import civitas.crypto.ciphertextlist.ElGamalCiphertextListTestData;
12
13 public interface CapabilityMixTestData
14 extends BallotTestData, ElGamalCiphertextListTestData, MixCapabilityElementRevelationTestData {
15
16 CapabilityMix CAPABILITY_MIX_MOCK = mock(CapabilityMix.class);
17
18 Supplier<CapabilityMix> CAPABILITY_MIX_EMPTY_SUPPLIER =
19 () -> new CapabilityMix(VOTER_BLOCK, new byte[0], new byte[][] {}, new ElGamalCiphertext[0]);
20
21 Supplier<CapabilityMix> CAPABILITY_MIX_COMMITMENT_ADDED_SUPPLIER = () ->
22 new CapabilityMix(VOTER_BLOCK, new byte[0], new byte[][] {SOMESTRING.getBytes()}, new ElGamalCiphertext[0]);
23
24 CapabilityMix CAPABILITY_MIX_CAPABILITY_ADDED =
25 new CapabilityMix(VOTER_BLOCK, new byte[0], new byte[][] {}, new ElGamalCiphertextish[] {
26 ENCRYPTED_SIGNED_VOTE_CAPABILITIES.getFirst()
27 });
28
29 CapabilityMix CAPABILITY_MIX_CAPABILITIES_ADDED =
30 new CapabilityMix(VOTER_BLOCK, new byte[0], new byte[][] {}, new ElGamalCiphertextish[] {
31 ENCRYPTED_SIGNED_VOTE_CAPABILITIES.getFirst(), ENCRYPTED_SIGNED_VOTE_CAPABILITIES.get(1)
32 });
33
34 CapabilityMix CAPABILITY_MIX_REMIXED =
35 new CapabilityMix(VOTER_BLOCK, new byte[0], new byte[][] {}, new ElGamalCiphertextish[] {
36 REENCRYPTED_VOTE_CAPABILITIES.get(1), REENCRYPTED_VOTE_CAPABILITIES.getFirst()
37 });
38
39 CapabilityMix CAPABILITY_MIX_INITIAL = new CapabilityMix(
40 4, new byte[0], new byte[][] {}, new ElGamalCiphertextish[] {ENCRYPTED_SIGNED_VOTE_CAPABILITIES.get(1)});
41 CapabilityMix CAPABILITY_MIX_LEFT = new CapabilityMix(
42 2, new byte[0], new byte[][] {null, CAPABILITY_ELEMENT_RELEVATION_LEFT_HASH}, new ElGamalCiphertextish[] {
43 ENCRYPTED_SIGNED_VOTE_CAPABILITIES.getFirst(), REENCRYPTED_VOTE_CAPABILITIES.get(1)
44 });
45
46 CapabilityMix CAPABILITY_MIX_RIGHT = new CapabilityMix(
47 3,
48 new byte[0],
49 new byte[][] {new byte[0], CAPABILITY_ELEMENT_RELEVATION_RIGHT_HASH},
50 new ElGamalCiphertextish[] {null, REENCRYPTED_VOTE_CAPABILITIES.getFirst()});
51 }