Exemple #1
0
        /// <exception cref="System.Exception"/>
        public virtual void TestContainerUpdate()
        {
            //Start the node
            node.Handle(new RMNodeStartedEvent(null, null, null));
            NodeId     nodeId = BuilderUtils.NewNodeId("localhost:1", 1);
            RMNodeImpl node2  = new RMNodeImpl(nodeId, rmContext, null, 0, 0, null, null, null
                                               );

            node2.Handle(new RMNodeStartedEvent(null, null, null));
            ContainerId completedContainerIdFromNode1 = BuilderUtils.NewContainerId(BuilderUtils
                                                                                    .NewApplicationAttemptId(BuilderUtils.NewApplicationId(0, 0), 0), 0);
            ContainerId completedContainerIdFromNode2_1 = BuilderUtils.NewContainerId(BuilderUtils
                                                                                      .NewApplicationAttemptId(BuilderUtils.NewApplicationId(1, 1), 1), 1);
            ContainerId completedContainerIdFromNode2_2 = BuilderUtils.NewContainerId(BuilderUtils
                                                                                      .NewApplicationAttemptId(BuilderUtils.NewApplicationId(1, 1), 1), 2);
            RMNodeStatusEvent statusEventFromNode1     = GetMockRMNodeStatusEvent();
            RMNodeStatusEvent statusEventFromNode2_1   = GetMockRMNodeStatusEvent();
            RMNodeStatusEvent statusEventFromNode2_2   = GetMockRMNodeStatusEvent();
            ContainerStatus   containerStatusFromNode1 = Org.Mockito.Mockito.Mock <ContainerStatus
                                                                                   >();
            ContainerStatus containerStatusFromNode2_1 = Org.Mockito.Mockito.Mock <ContainerStatus
                                                                                   >();
            ContainerStatus containerStatusFromNode2_2 = Org.Mockito.Mockito.Mock <ContainerStatus
                                                                                   >();

            Org.Mockito.Mockito.DoReturn(completedContainerIdFromNode1).When(containerStatusFromNode1
                                                                             ).GetContainerId();
            Org.Mockito.Mockito.DoReturn(Sharpen.Collections.SingletonList(containerStatusFromNode1
                                                                           )).When(statusEventFromNode1).GetContainers();
            node.Handle(statusEventFromNode1);
            NUnit.Framework.Assert.AreEqual(1, completedContainers.Count);
            NUnit.Framework.Assert.AreEqual(completedContainerIdFromNode1, completedContainers
                                            [0].GetContainerId());
            completedContainers.Clear();
            Org.Mockito.Mockito.DoReturn(completedContainerIdFromNode2_1).When(containerStatusFromNode2_1
                                                                               ).GetContainerId();
            Org.Mockito.Mockito.DoReturn(Sharpen.Collections.SingletonList(containerStatusFromNode2_1
                                                                           )).When(statusEventFromNode2_1).GetContainers();
            Org.Mockito.Mockito.DoReturn(completedContainerIdFromNode2_2).When(containerStatusFromNode2_2
                                                                               ).GetContainerId();
            Org.Mockito.Mockito.DoReturn(Sharpen.Collections.SingletonList(containerStatusFromNode2_2
                                                                           )).When(statusEventFromNode2_2).GetContainers();
            node2.SetNextHeartBeat(false);
            node2.Handle(statusEventFromNode2_1);
            node2.SetNextHeartBeat(true);
            node2.Handle(statusEventFromNode2_2);
            NUnit.Framework.Assert.AreEqual(2, completedContainers.Count);
            NUnit.Framework.Assert.AreEqual(completedContainerIdFromNode2_1, completedContainers
                                            [0].GetContainerId());
            NUnit.Framework.Assert.AreEqual(completedContainerIdFromNode2_2, completedContainers
                                            [1].GetContainerId());
        }
Exemple #2
0
        private RMNodeStatusEvent GetMockRMNodeStatusEvent()
        {
            NodeHeartbeatResponse response = Org.Mockito.Mockito.Mock <NodeHeartbeatResponse>(
                );
            NodeHealthStatus healthStatus = Org.Mockito.Mockito.Mock <NodeHealthStatus>();
            bool             yes          = true;

            Org.Mockito.Mockito.DoReturn(yes).When(healthStatus).GetIsNodeHealthy();
            RMNodeStatusEvent @event = Org.Mockito.Mockito.Mock <RMNodeStatusEvent>();

            Org.Mockito.Mockito.DoReturn(healthStatus).When(@event).GetNodeHealthStatus();
            Org.Mockito.Mockito.DoReturn(response).When(@event).GetLatestResponse();
            Org.Mockito.Mockito.DoReturn(RMNodeEventType.StatusUpdate).When(@event).GetType();
            return(@event);
        }