Dev2.Core.Tests.mvTest.CloseContextWithCloseTrueAndResourceNotSavedPopupOkExpectsRemoveWorkspaceItemCalledAndContextRemovedAndSaveResourceEventAggregatorMessage C# (CSharp) Method

CloseContextWithCloseTrueAndResourceNotSavedPopupOkExpectsRemoveWorkspaceItemCalledAndContextRemovedAndSaveResourceEventAggregatorMessage() private method

        public void CloseContextWithCloseTrueAndResourceNotSavedPopupOkExpectsRemoveWorkspaceItemCalledAndContextRemovedAndSaveResourceEventAggregatorMessage()
        {
            lock (syncroot)
            {
                CreateFullExportsAndVm();
                Assert.IsTrue(_mainViewModel.Items.Count == 2);
                _firstResource.Setup(r => r.IsWorkflowSaved).Returns(false);
                _popupController.Setup(s => s.Show()).Returns(MessageBoxResult.Yes);

                var activetx =
                    _mainViewModel.Items.ToList()
                                  .First(i => i.WorkSurfaceViewModel.WorkSurfaceContext == WorkSurfaceContext.Workflow);

                _eventAggregator.Setup(e => e.Publish(It.IsAny<TabClosedMessage>()))
                                .Callback<object>((o =>
                                {
                                    var msg = (TabClosedMessage)o;
                                    Assert.IsTrue(msg.Context.Equals(activetx));
                                }));

                _eventAggregator.Setup(e => e.Publish(It.IsAny<SaveResourceMessage>()))
                                .Callback<object>((o =>
                                {
                                    var msg = (SaveResourceMessage)o;
                                    Assert.IsTrue(msg.Resource.Equals(_firstResource.Object));
                                }));

                _mainViewModel.DeactivateItem(activetx, true);
                _mockWorkspaceRepo.Verify(c => c.Remove(_firstResource.Object), Times.Once());
                Assert.IsTrue(_mainViewModel.Items.Count == 1);
                _eventAggregator.Verify(e => e.Publish(It.IsAny<TabClosedMessage>()), Times.Once());
                _eventAggregator.Verify(e => e.Publish(It.IsAny<SaveResourceMessage>()), Times.Once());
            }
        }
mvTest