コード例 #1
0
        public void RunAllUnprocessors_Runs_All_Unprocessors_For_All_Views()
        {
            TrackingProcessor trackingProcessor2 = new TrackingProcessor();

            SupportView view = new SupportView();
            ObjectWhichExtendsSupportView viewA = new ObjectWhichExtendsSupportView();

            ViewProcessorMapping mapping  = new ViewProcessorMapping(new TypeMatcher().AllOf(view.GetType()).CreateTypeFilter(), trackingProcessor);
            ViewProcessorMapping mappingA = new ViewProcessorMapping(new TypeMatcher().AllOf(viewA.GetType()).CreateTypeFilter(), trackingProcessor2);

            viewProcessorFactory.RunProcessors(view, view.GetType(), new ViewProcessorMapping[1] {
                mapping
            });
            viewProcessorFactory.RunProcessors(viewA, viewA.GetType(), new ViewProcessorMapping[2] {
                mapping, mappingA
            });

            viewProcessorFactory.RunAllUnprocessors();

            Assert.That(trackingProcessor.UnprocessedViews, Is.EquivalentTo(new object[2] {
                view, viewA
            }), "trackingProcessor unprocessed all views");
            Assert.That(trackingProcessor2.UnprocessedViews, Is.EquivalentTo(new object[1] {
                viewA
            }), "trackingProcessor2 unprocessed all views");
        }
コード例 #2
0
        public void Create_Mediator_Instantiates_Mediator_For_View_When_Mapped()
        {
            instance.Map(typeof(SupportView)).ToProcess(new MediatorCreator(typeof(SupportMediator)));

            SupportView objA = new SupportView();

            instance.HandleView(objA, objA.GetType());
            objA.AddThisView();

            string[] expectedNotifications = new string[1] {
                "SupportMediator"
            };
            Assert.That(expectedNotifications, Is.EquivalentTo(mediatorWatcher.Notifications));
        }
コード例 #3
0
 public void Unmapping_From_All_Processes_Removes_All_Processes()
 {
     viewProcessorMap.Map(matchingView.GetType()).ToProcess(typeof(TrackingProcessor));
     viewProcessorMap.Map(matchingView.GetType()).ToProcess(trackingProcessor2);
     viewProcessorMap.Unmap(matchingView.GetType()).FromAll();
     viewProcessorMap.Process(matchingView);
     AssertThatProcessorHasProcessedThese(FromInjector(typeof(TrackingProcessor)), new object[0]);
     AssertThatProcessorHasProcessedThese(trackingProcessor2, new object[0]);
 }