@@ -33,6 +33,7 @@ use serde::{Deserialize, Serialize};
3333use sp_authority_discovery:: AuthorityId as AuthorityDiscoveryId ;
3434use sp_consensus_babe:: AuthorityId as BabeId ;
3535use sp_core:: { crypto:: UncheckedInto , sr25519, Pair , Public } ;
36+ use sp_mixnet:: types:: AuthorityId as MixnetId ;
3637use sp_runtime:: {
3738 traits:: { IdentifyAccount , Verify } ,
3839 Perbill ,
@@ -72,8 +73,9 @@ fn session_keys(
7273 babe : BabeId ,
7374 im_online : ImOnlineId ,
7475 authority_discovery : AuthorityDiscoveryId ,
76+ mixnet : MixnetId ,
7577) -> SessionKeys {
76- SessionKeys { grandpa, babe, im_online, authority_discovery }
78+ SessionKeys { grandpa, babe, im_online, authority_discovery, mixnet }
7779}
7880
7981fn staging_testnet_config_genesis ( ) -> RuntimeGenesisConfig {
@@ -93,6 +95,7 @@ fn staging_testnet_config_genesis() -> RuntimeGenesisConfig {
9395 BabeId ,
9496 ImOnlineId ,
9597 AuthorityDiscoveryId ,
98+ MixnetId ,
9699 ) > = vec ! [
97100 (
98101 // 5Fbsd6WXDGiLTxunqeK5BATNiocfCqu9bS1yArVjCgeBLkVy
@@ -111,6 +114,9 @@ fn staging_testnet_config_genesis() -> RuntimeGenesisConfig {
111114 // 5EZaeQ8djPcq9pheJUhgerXQZt9YaHnMJpiHMRhwQeinqUW8
112115 array_bytes:: hex2array_unchecked( "6e7e4eb42cbd2e0ab4cae8708ce5509580b8c04d11f6758dbf686d50fe9f9106" )
113116 . unchecked_into( ) ,
117+ // 5EZaeQ8djPcq9pheJUhgerXQZt9YaHnMJpiHMRhwQeinqUW8
118+ array_bytes:: hex2array_unchecked( "6e7e4eb42cbd2e0ab4cae8708ce5509580b8c04d11f6758dbf686d50fe9f9106" )
119+ . unchecked_into( ) ,
114120 ) ,
115121 (
116122 // 5ERawXCzCWkjVq3xz1W5KGNtVx2VdefvZ62Bw1FEuZW4Vny2
@@ -129,6 +135,9 @@ fn staging_testnet_config_genesis() -> RuntimeGenesisConfig {
129135 // 5DhLtiaQd1L1LU9jaNeeu9HJkP6eyg3BwXA7iNMzKm7qqruQ
130136 array_bytes:: hex2array_unchecked( "482dbd7297a39fa145c570552249c2ca9dd47e281f0c500c971b59c9dcdcd82e" )
131137 . unchecked_into( ) ,
138+ // 5DhLtiaQd1L1LU9jaNeeu9HJkP6eyg3BwXA7iNMzKm7qqruQ
139+ array_bytes:: hex2array_unchecked( "482dbd7297a39fa145c570552249c2ca9dd47e281f0c500c971b59c9dcdcd82e" )
140+ . unchecked_into( ) ,
132141 ) ,
133142 (
134143 // 5DyVtKWPidondEu8iHZgi6Ffv9yrJJ1NDNLom3X9cTDi98qp
@@ -147,6 +156,9 @@ fn staging_testnet_config_genesis() -> RuntimeGenesisConfig {
147156 // 5DhKqkHRkndJu8vq7pi2Q5S3DfftWJHGxbEUNH43b46qNspH
148157 array_bytes:: hex2array_unchecked( "482a3389a6cf42d8ed83888cfd920fec738ea30f97e44699ada7323f08c3380a" )
149158 . unchecked_into( ) ,
159+ // 5DhKqkHRkndJu8vq7pi2Q5S3DfftWJHGxbEUNH43b46qNspH
160+ array_bytes:: hex2array_unchecked( "482a3389a6cf42d8ed83888cfd920fec738ea30f97e44699ada7323f08c3380a" )
161+ . unchecked_into( ) ,
150162 ) ,
151163 (
152164 // 5HYZnKWe5FVZQ33ZRJK1rG3WaLMztxWrrNDb1JRwaHHVWyP9
@@ -165,6 +177,9 @@ fn staging_testnet_config_genesis() -> RuntimeGenesisConfig {
165177 // 5C4vDQxA8LTck2xJEy4Yg1hM9qjDt4LvTQaMo4Y8ne43aU6x
166178 array_bytes:: hex2array_unchecked( "00299981a2b92f878baaf5dbeba5c18d4e70f2a1fcd9c61b32ea18daf38f4378" )
167179 . unchecked_into( ) ,
180+ // 5C4vDQxA8LTck2xJEy4Yg1hM9qjDt4LvTQaMo4Y8ne43aU6x
181+ array_bytes:: hex2array_unchecked( "00299981a2b92f878baaf5dbeba5c18d4e70f2a1fcd9c61b32ea18daf38f4378" )
182+ . unchecked_into( ) ,
168183 ) ,
169184 ] ;
170185
@@ -217,14 +232,15 @@ where
217232/// Helper function to generate stash, controller and session key from seed.
218233pub fn authority_keys_from_seed (
219234 seed : & str ,
220- ) -> ( AccountId , AccountId , GrandpaId , BabeId , ImOnlineId , AuthorityDiscoveryId ) {
235+ ) -> ( AccountId , AccountId , GrandpaId , BabeId , ImOnlineId , AuthorityDiscoveryId , MixnetId ) {
221236 (
222237 get_account_id_from_seed :: < sr25519:: Public > ( & format ! ( "{}//stash" , seed) ) ,
223238 get_account_id_from_seed :: < sr25519:: Public > ( seed) ,
224239 get_from_seed :: < GrandpaId > ( seed) ,
225240 get_from_seed :: < BabeId > ( seed) ,
226241 get_from_seed :: < ImOnlineId > ( seed) ,
227242 get_from_seed :: < AuthorityDiscoveryId > ( seed) ,
243+ get_from_seed :: < MixnetId > ( seed) ,
228244 )
229245}
230246
@@ -237,6 +253,7 @@ pub fn testnet_genesis(
237253 BabeId ,
238254 ImOnlineId ,
239255 AuthorityDiscoveryId ,
256+ MixnetId ,
240257 ) > ,
241258 initial_nominators : Vec < AccountId > ,
242259 root_key : AccountId ,
@@ -306,7 +323,13 @@ pub fn testnet_genesis(
306323 (
307324 x. 0 . clone ( ) ,
308325 x. 0 . clone ( ) ,
309- session_keys ( x. 2 . clone ( ) , x. 3 . clone ( ) , x. 4 . clone ( ) , x. 5 . clone ( ) ) ,
326+ session_keys (
327+ x. 2 . clone ( ) ,
328+ x. 3 . clone ( ) ,
329+ x. 4 . clone ( ) ,
330+ x. 5 . clone ( ) ,
331+ x. 6 . clone ( ) ,
332+ ) ,
310333 )
311334 } )
312335 . collect :: < Vec < _ > > ( ) ,
@@ -367,6 +390,7 @@ pub fn testnet_genesis(
367390 ..Default :: default ( )
368391 } ,
369392 glutton : Default :: default ( ) ,
393+ mixnet : Default :: default ( ) ,
370394 }
371395}
372396
@@ -475,7 +499,7 @@ pub(crate) mod tests {
475499
476500 sc_service_test:: connectivity ( integration_test_config_with_two_authorities ( ) , |config| {
477501 let NewFullBase { task_manager, client, network, sync, transaction_pool, .. } =
478- new_full_base ( config, false , |_, _| ( ) ) ?;
502+ new_full_base ( config, None , false , |_, _| ( ) ) ?;
479503 Ok ( sc_service_test:: TestNetComponents :: new (
480504 task_manager,
481505 client,
0 commit comments