33
44using Autofac ;
55using Autofac . Features . AttributeFilters ;
6+ using Nethermind . Blockchain ;
67using Nethermind . Config ;
8+ using Nethermind . Core ;
79using Nethermind . Core . Crypto ;
810using Nethermind . Core . Test . Builders ;
911using Nethermind . Core . Test . Modules ;
@@ -52,13 +54,21 @@ private DiscoveryV5App CreateDiscoveryV5App(IPAddress externalIp, Action<Contain
5254 IEnode enode = new Enode ( nodeKey . PublicKey , externalIp , networkConfig . P2PPort , networkConfig . DiscoveryPort ) ;
5355 IIPResolver ipResolver = new FixedIpResolver ( networkConfig ) ;
5456 EthereumEcdsa ecdsa = new ( 0 ) ;
57+ IBlockTree blockTree = Substitute . For < IBlockTree > ( ) ;
58+ Block head = Build . A . Block . Genesis . TestObject ;
59+ blockTree . Head . Returns ( head ) ;
60+ IForkInfo forkInfo = Substitute . For < IForkInfo > ( ) ;
61+ forkInfo . GetForkId ( head . Header . Number , head . Header . Timestamp ) . Returns ( new Nethermind . Network . ForkId ( 0 , 0 ) ) ;
5562 ContainerBuilder builder = new ( ) ;
5663 builder . RegisterInstance ( LimboLogs . Instance ) . As < ILogManager > ( ) ;
5764 builder . RegisterInstance ( networkConfig ) . As < INetworkConfig > ( ) ;
5865 builder . RegisterInstance ( enode ) . As < IEnode > ( ) ;
5966 builder . RegisterInstance ( ipResolver ) . As < IIPResolver > ( ) ;
6067 builder . RegisterInstance ( nodeKey ) . Keyed < IProtectedPrivateKey > ( IProtectedPrivateKey . NodeKey ) ;
6168 builder . RegisterInstance ( ecdsa ) . As < IEthereumEcdsa > ( ) . As < IEcdsa > ( ) ;
69+ builder . RegisterInstance ( blockTree ) . As < IBlockTree > ( ) ;
70+ builder . RegisterInstance ( forkInfo ) . As < IForkInfo > ( ) ;
71+ builder . RegisterInstance ( Timestamper . Default ) . As < ITimestamper > ( ) ;
6272 builder . RegisterInstance ( new CryptoRandom ( ) ) . As < ICryptoRandom > ( ) ;
6373 builder . RegisterInstance ( new NetworkStorage ( _discoveryDb , LimboLogs . Instance ) ) . Keyed < INetworkStorage > ( DbNames . DiscoveryV5Nodes ) ;
6474 builder . RegisterInstance ( Substitute . For < INodeStatsManager > ( ) ) . As < INodeStatsManager > ( ) ;
@@ -189,7 +199,7 @@ public void Should_Accept_Public_Ip_Enr()
189199 public void Should_Reject_Consensus_Only_Enr ( )
190200 {
191201 NodeRecord enr = CreateTestEnr ( TestItem . PrivateKeyA , IPAddress . Parse ( "8.8.8.8" ) , includeEth2 : true ) ;
192- NodeRecord decoded = NodeRecord . FromEnrString ( enr . EnrString ) ;
202+ NodeRecord decoded = NodeRecord . FromEnrString ( enr . ToString ( ) ) ;
193203
194204 bool result = _discoveryV5App . TryGetAcceptableNodeFromEnr ( decoded , out Node ? node ) ;
195205
@@ -231,7 +241,7 @@ public async Task AddNodeToDiscovery_ShouldAddValidatedEnrNode()
231241 NodeRecord enr = CreateTestEnr ( TestItem . PrivateKeyA , IPAddress . Parse ( "8.8.8.8" ) , udpPort : 30304 ) ;
232242 Node node = new ( TestItem . PrivateKeyA . PublicKey , "1.1.1.1" , 30303 )
233243 {
234- Enr = enr . EnrString
244+ Enr = enr
235245 } ;
236246
237247 try
@@ -242,7 +252,7 @@ public async Task AddNodeToDiscovery_ShouldAddValidatedEnrNode()
242252 added . Id . Equals ( TestItem . PrivateKeyA . PublicKey ) &&
243253 added . Host == "8.8.8.8" &&
244254 added . Port == 30304 &&
245- added . Enr == enr . EnrString ) ) ;
255+ added . Enr == enr ) ) ;
246256 }
247257 finally
248258 {
@@ -260,7 +270,7 @@ public async Task AddNodeToDiscovery_ShouldSkipMismatchedEnr()
260270 NodeRecord enr = CreateTestEnr ( TestItem . PrivateKeyA , IPAddress . Parse ( "8.8.8.8" ) ) ;
261271 Node node = new ( TestItem . PrivateKeyB . PublicKey , "8.8.8.8" , 30303 )
262272 {
263- Enr = enr . EnrString
273+ Enr = enr
264274 } ;
265275
266276 try
@@ -318,7 +328,7 @@ public void Should_Use_Udp_Port_From_Configured_Enr_Bootnode()
318328 NodeRecord enr = CreateTestEnr ( TestItem . PrivateKeyA , IPAddress . Parse ( "8.8.8.8" ) , udpPort : 9001 , includeTcp : false ) ;
319329 NetworkConfig networkConfig = new ( )
320330 {
321- Bootnodes = [ new NetworkNode ( enr . EnrString ) ]
331+ Bootnodes = [ new NetworkNode ( enr . ToString ( ) ) ]
322332 } ;
323333 DiscoveryConfig discoveryConfig = new ( )
324334 {
@@ -331,7 +341,7 @@ public void Should_Use_Udp_Port_From_Configured_Enr_Bootnode()
331341 {
332342 Assert . That ( bootNodes , Has . Count . EqualTo ( 1 ) ) ;
333343 Assert . That ( bootNodes [ 0 ] . Port , Is . EqualTo ( 9001 ) ) ;
334- Assert . That ( bootNodes [ 0 ] . Enr , Is . EqualTo ( enr . EnrString ) ) ;
344+ Assert . That ( bootNodes [ 0 ] . Enr ? . ToString ( ) , Is . EqualTo ( enr . ToString ( ) ) ) ;
335345 }
336346 }
337347
0 commit comments