+ final NetconfNode netconfNode = new NetconfNodeBuilder()
+ .setHost(new Host(new IpAddress(new Ipv4Address("127.0.0.1"))))
+ .setPort(new PortNumber(10))
+ .setActorResponseWaitTime(ACTOR_RESPONSE_WAIT_TIME).build();
+ final Node node = new NodeBuilder().setNodeId(nodeId).addAugmentation(NetconfNode.class,
+ netconfNode).build();
+
+ final DataObjectModification<Node> dataObjectModification = mock(DataObjectModification.class);
+ doReturn(WRITE).when(dataObjectModification).getModificationType();
+ doReturn(node).when(dataObjectModification).getDataAfter();
+ doReturn(InstanceIdentifier.IdentifiableItem.of(Node.class, new NodeKey(nodeId)))
+ .when(dataObjectModification).getIdentifier();
+
+ final NetconfTopologyContext mockContext = mock(NetconfTopologyContext.class);
+ mockContextMap.put(nodeInstanceId, setup -> mockContext);
+
+ doThrow(new RuntimeException("mock error")).when(clusterSingletonServiceProvider)
+ .registerClusterSingletonService(mockContext);
+
+ netconfTopologyManager.init();
+
+ netconfTopologyManager.onDataTreeChanged(Arrays.asList(
+ new CustomTreeModification(new DataTreeIdentifier<>(LogicalDatastoreType.CONFIGURATION,
+ nodeInstanceId), dataObjectModification)));
+
+ verify(clusterSingletonServiceProvider, times(3)).registerClusterSingletonService(mockContext);
+ verify(mockContext).close();
+ verifyNoMoreInteractions(mockListenerReg);
+
+ netconfTopologyManager.close();
+ verifyNoMoreInteractions(mockContext);