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