View Javadoc
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  }