コード例 #1
0
        public void GivenPluginWithGuiSetAndOpenedDuneLocationCalculationsView_WhenUserDefinedTargetProbabilityRemovedFromCollectionAndObserversNotified_ThenViewTitleUpdated()
        {
            // Given
            var mocks             = new MockRepository();
            var projectStore      = mocks.Stub <IStoreProject>();
            var projectMigrator   = mocks.Stub <IMigrateProject>();
            var projectFactory    = mocks.Stub <IProjectFactory>();
            var project           = mocks.Stub <IProject>();
            var assessmentSection = mocks.Stub <IAssessmentSection>();

            mocks.ReplayAll();

            using (var gui = new GuiCore(new MainWindow(), projectStore, projectMigrator, projectFactory, new GuiCoreSettings()))
            {
                gui.Plugins.AddRange(new PluginBase[]
                {
                    new DuneErosionPlugin()
                });

                gui.Run();
                gui.SetProject(project, null);

                const double targetProbability    = 0.1;
                var          removedCalculations  = new DuneLocationCalculationsForTargetProbability(targetProbability);
                var          affectedCalculations = new DuneLocationCalculationsForTargetProbability(targetProbability);
                var          failureMechanism     = new DuneErosionFailureMechanism
                {
                    DuneLocationCalculationsForUserDefinedTargetProbabilities =
                    {
                        removedCalculations,
                        affectedCalculations
                    }
                };

                gui.DocumentViewController.CloseAllViews();
                gui.DocumentViewController.OpenViewForData(new DuneLocationCalculationsForUserDefinedTargetProbabilityContext(affectedCalculations,
                                                                                                                              failureMechanism,
                                                                                                                              assessmentSection));

                IView view = gui.ViewHost.DocumentViews.First();

                // Precondition
                Assert.IsInstanceOf <DuneLocationCalculationsView>(view);
                Assert.IsTrue(AvalonDockViewHostTestHelper.IsTitleSet((AvalonDockViewHost)gui.ViewHost, view, "Hydraulische belastingen - 1/10 (1)"));

                // When
                failureMechanism.DuneLocationCalculationsForUserDefinedTargetProbabilities.Remove(removedCalculations);
                failureMechanism.DuneLocationCalculationsForUserDefinedTargetProbabilities.NotifyObservers();

                // Then
                Assert.IsTrue(AvalonDockViewHostTestHelper.IsTitleSet((AvalonDockViewHost)gui.ViewHost, view, "Hydraulische belastingen - 1/10"));
                mocks.VerifyAll();
            }
        }
コード例 #2
0
        public void SetTitle_ToolView_TitleSet()
        {
            // Setup
            const string titleToSet = "Random title";

            var testView = new TestView();

            using (var avalonDockViewHost = new AvalonDockViewHost())
            {
                avalonDockViewHost.AddToolView(testView, ToolViewLocation.Left, string.Empty, string.Empty, null);

                // Precondition
                Assert.IsFalse(AvalonDockViewHostTestHelper.IsTitleSet(avalonDockViewHost, testView, titleToSet));

                // Call
                avalonDockViewHost.SetTitle(testView, titleToSet);

                // Assert
                Assert.IsTrue(AvalonDockViewHostTestHelper.IsTitleSet(avalonDockViewHost, testView, titleToSet));
            }
        }