//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldBootstrapWhenBootstrappable() throws Throwable //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void ShouldBootstrapWhenBootstrappable() { // given //JAVA TO C# CONVERTER TODO TASK: Method reference arbitrary object instance method syntax is not converted by Java to C# Converter: IDictionary <MemberId, CoreServerInfo> members = IntStream.range(0, _minCoreHosts).mapToObj(i => Pair.of(new MemberId(System.Guid.randomUUID()), TestTopology.addressesForCore(i, false))).collect(Collectors.toMap(Pair::first, Pair::other)); CoreTopology bootstrappableTopology = new CoreTopology(null, true, members); CoreTopologyService topologyService = mock(typeof(CoreTopologyService)); when(topologyService.LocalCoreServers()).thenReturn(bootstrappableTopology); when(topologyService.SetClusterId(any(), eq("default"))).thenReturn(true); CoreSnapshot snapshot = mock(typeof(CoreSnapshot)); when(_coreBootstrapper.bootstrap(any())).thenReturn(snapshot); ClusterBinder binder = ClusterBinder(new StubSimpleStorage <ClusterId>(this), topologyService); // when BoundState boundState = binder.BindToCluster(); // then verify(_coreBootstrapper).bootstrap(any()); Optional <ClusterId> clusterId = binder.Get(); assertTrue(clusterId.Present); verify(topologyService).setClusterId(clusterId.get(), "default"); assertTrue(boundState.Snapshot().Present); assertEquals(boundState.Snapshot().get(), snapshot); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldReturnNoWriteEndpointsIfThereIsNoAddressForTheLeader() throws Exception //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void ShouldReturnNoWriteEndpointsIfThereIsNoAddressForTheLeader() { // given //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.neo4j.causalclustering.discovery.CoreTopologyService topologyService = mock(org.neo4j.causalclustering.discovery.CoreTopologyService.class); CoreTopologyService topologyService = mock(typeof(CoreTopologyService)); IDictionary <MemberId, CoreServerInfo> coreMembers = new Dictionary <MemberId, CoreServerInfo>(); coreMembers[member(0)] = addressesForCore(0, false); when(topologyService.LocalCoreServers()).thenReturn(new CoreTopology(_clusterId, false, coreMembers)); when(topologyService.LocalReadReplicas()).thenReturn(new ReadReplicaTopology(emptyMap())); LeaderLocator leaderLocator = mock(typeof(LeaderLocator)); when(leaderLocator.Leader).thenReturn(member(1)); LegacyGetServersProcedure procedure = new LegacyGetServersProcedure(topologyService, leaderLocator, Config, Instance); // when ClusterView clusterView = Run(procedure); // then ClusterView.Builder builder = new ClusterView.Builder(); builder.ReadAddress(addressesForCore(0, false).connectors().boltAddress()); builder.RouteAddress(addressesForCore(0, false).connectors().boltAddress()); assertEquals(builder.Build(), clusterView); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void ttlShouldBeInSeconds() throws Exception //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void TtlShouldBeInSeconds() { // given //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.neo4j.causalclustering.discovery.CoreTopologyService coreTopologyService = mock(org.neo4j.causalclustering.discovery.CoreTopologyService.class); CoreTopologyService coreTopologyService = mock(typeof(CoreTopologyService)); LeaderLocator leaderLocator = mock(typeof(LeaderLocator)); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.neo4j.causalclustering.discovery.CoreTopology clusterTopology = new org.neo4j.causalclustering.discovery.CoreTopology(clusterId, false, new java.util.HashMap<>()); CoreTopology clusterTopology = new CoreTopology(_clusterId, false, new Dictionary <MemberId, CoreServerInfo>()); when(coreTopologyService.LocalCoreServers()).thenReturn(clusterTopology); when(coreTopologyService.LocalReadReplicas()).thenReturn(new ReadReplicaTopology(emptyMap())); // set the TTL in minutes Config.augment(cluster_routing_ttl, "10m"); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final LegacyGetServersProcedure proc = new LegacyGetServersProcedure(coreTopologyService, leaderLocator, config, getInstance()); LegacyGetServersProcedure proc = new LegacyGetServersProcedure(coreTopologyService, leaderLocator, Config, Instance); // when IList <object[]> results = new IList <object[]> { proc.Apply(null, new object[0], null) }; // then object[] rows = results[0]; long ttlInSeconds = ( long )rows[0]; assertEquals(600, ttlInSeconds); }
public virtual int NumberOfCoreMembersReportedByTopology() { //JAVA TO C# CONVERTER TODO TASK: Method reference constructor syntax is not converted by Java to C# Converter: CoreClusterMember aCoreGraphDb = _coreMembers.Values.Where(member => member.database() != null).First().orElseThrow(System.ArgumentException::new); CoreTopologyService coreTopologyService = aCoreGraphDb.Database().DependencyResolver.resolveDependency(typeof(CoreTopologyService)); return(coreTopologyService.LocalCoreServers().members().Count); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldReturnEndpointsInDifferentOrders() throws Exception //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void ShouldReturnEndpointsInDifferentOrders() { // given //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.neo4j.causalclustering.discovery.CoreTopologyService coreTopologyService = mock(org.neo4j.causalclustering.discovery.CoreTopologyService.class); CoreTopologyService coreTopologyService = mock(typeof(CoreTopologyService)); LeaderLocator leaderLocator = mock(typeof(LeaderLocator)); when(leaderLocator.Leader).thenReturn(member(0)); IDictionary <MemberId, CoreServerInfo> coreMembers = new Dictionary <MemberId, CoreServerInfo>(); coreMembers[member(0)] = addressesForCore(0, false); coreMembers[member(1)] = addressesForCore(1, false); coreMembers[member(2)] = addressesForCore(2, false); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.neo4j.causalclustering.discovery.CoreTopology clusterTopology = new org.neo4j.causalclustering.discovery.CoreTopology(clusterId, false, coreMembers); CoreTopology clusterTopology = new CoreTopology(_clusterId, false, coreMembers); when(coreTopologyService.LocalCoreServers()).thenReturn(clusterTopology); when(coreTopologyService.LocalReadReplicas()).thenReturn(new ReadReplicaTopology(emptyMap())); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final LegacyGetServersProcedure proc = new LegacyGetServersProcedure(coreTopologyService, leaderLocator, config, getInstance()); LegacyGetServersProcedure proc = new LegacyGetServersProcedure(coreTopologyService, leaderLocator, _config, Instance); // when object[] endpoints = GetEndpoints(proc); //then object[] endpointsInDifferentOrder = GetEndpoints(proc); for (int i = 0; i < 100; i++) { if (Arrays.deepEquals(endpointsInDifferentOrder, endpoints)) { endpointsInDifferentOrder = GetEndpoints(proc); } else { //Different order of servers, no need to retry. break; } } assertFalse(Arrays.deepEquals(endpoints, endpointsInDifferentOrder)); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test(expected = java.util.concurrent.TimeoutException.class) public void shouldTimeoutIfPublishContinuallyFailsWithTransientErrors() throws Throwable //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void ShouldTimeoutIfPublishContinuallyFailsWithTransientErrors() { // given //JAVA TO C# CONVERTER TODO TASK: Method reference arbitrary object instance method syntax is not converted by Java to C# Converter: IDictionary <MemberId, CoreServerInfo> members = IntStream.range(0, _minCoreHosts).mapToObj(i => Pair.of(new MemberId(System.Guid.randomUUID()), TestTopology.addressesForCore(i, false))).collect(Collectors.toMap(Pair::first, Pair::other)); CoreTopology bootstrappableTopology = new CoreTopology(null, true, members); CoreTopologyService topologyService = mock(typeof(CoreTopologyService)); when(topologyService.SetClusterId(any(), anyString())).thenThrow(typeof(OperationTimeoutException)); // Causes a retry when(topologyService.LocalCoreServers()).thenReturn(bootstrappableTopology); ClusterBinder binder = ClusterBinder(new StubSimpleStorage <ClusterId>(this), topologyService); // when binder.BindToCluster(); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldBindToClusterIdPublishedByAnotherMember() throws Throwable //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void ShouldBindToClusterIdPublishedByAnotherMember() { // given ClusterId publishedClusterId = new ClusterId(System.Guid.randomUUID()); CoreTopology unboundTopology = new CoreTopology(null, false, emptyMap()); CoreTopology boundTopology = new CoreTopology(publishedClusterId, false, emptyMap()); CoreTopologyService topologyService = mock(typeof(CoreTopologyService)); when(topologyService.LocalCoreServers()).thenReturn(unboundTopology).thenReturn(boundTopology); ClusterBinder binder = ClusterBinder(new StubSimpleStorage <ClusterId>(this), topologyService); // when binder.BindToCluster(); // then Optional <ClusterId> clusterId = binder.Get(); assertTrue(clusterId.Present); assertEquals(publishedClusterId, clusterId.get()); verify(topologyService, atLeast(2)).localCoreServers(); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldTimeoutWhenNotBootstrappableAndNobodyElsePublishesClusterId() throws Throwable //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void ShouldTimeoutWhenNotBootstrappableAndNobodyElsePublishesClusterId() { // given CoreTopology unboundTopology = new CoreTopology(null, false, emptyMap()); CoreTopologyService topologyService = mock(typeof(CoreTopologyService)); when(topologyService.LocalCoreServers()).thenReturn(unboundTopology); ClusterBinder binder = ClusterBinder(new StubSimpleStorage <ClusterId>(this), topologyService); try { // when binder.BindToCluster(); fail("Should have timed out"); } catch (TimeoutException) { // expected } // then verify(topologyService, atLeast(2)).localCoreServers(); }