Beispiel #1
0
        // TODO: Test move minutia

        #region Do Test Routines

        private void DoTestBeginTemplating()
        {
            using (Fake.CreateScope())
            {
                // EXECUTE
                // TODO: IntegrityCheck on valid image?
                m_IViewModel.BeginTemplating(CAPTURE_NO_TEMPLATE);

                // ASSERT
                Assert.AreEqual(CAPTURE_NO_TEMPLATE, m_ViewModel.Capture);
                Assert.AreEqual(DEFAULT_MINUTIA_TYPE, m_ViewModel.InputMinutiaType);
                Assert.AreEqual(0, m_ViewModel.Minutae.Count);
                Assert.IsFalse(m_IViewModel.IsSaveTemplatePermitted);
                IEnumerable <UserActionRequiredEventArgs> userActionEvents = m_Monitor.GetEventResponses <UserActionRequiredEventArgs>("UserActionRequired");
                Assert.AreEqual(1, userActionEvents.Count());
                Assert.AreEqual(INPUT_MINUTIA_PROMPT, userActionEvents.ElementAt(0).PromptText);
                IEnumerable <PropertyChangedEventArgs> propertyChangedEvents = m_Monitor.GetEventResponses <PropertyChangedEventArgs>("PropertyChanged");
                Assert.AreEqual(1, propertyChangedEvents.Count());
                Assert.AreEqual("Capture", propertyChangedEvents.ElementAt(0).PropertyName);

                // Assert IDispatcherHelper interaction
                // Minutia are cleared upon starting templating with a new capture
                A.CallTo(() => m_DispatcherHelper.Invoke(A <Action> ._)).MustHaveHappened(Repeated.Exactly.Once);
            }
        }