示例#1
0
        private void SetupAndTestStatusEvent(Action <ITestEngine, List <EventArgs> > configuration)
        {
            using (var engine = new MockedTestEngine(MockedTestEngine.GetTestMethod(1)))
            {
                var completionEvents = new List <EventArgs>();

                configuration.Invoke(engine.TestEngine, completionEvents);
                engine.ParserState.OnParseRequested(engine);

                if (engine.ParserState.Status != ParserState.Ready)
                {
                    Assert.Inconclusive("Parser Error");
                }

                engine.TestEngine.Run(engine.TestEngine.Tests);

                Mock.Verify(engine.Dispatcher, engine.VbeInteraction, engine.WrapperProvider);
                Assert.AreEqual(1, completionEvents.Count);
            }
        }
示例#2
0
        public void TestEngine_RaisesRefreshEvent_EveryParserRun()
        {
            const int parserRuns = 5;

            using (var engine = new MockedTestEngine(MockedTestEngine.GetTestMethod(1)))
            {
                var refreshCount = 0;
                engine.TestEngine.TestsRefreshed += (sender, args) => refreshCount++;

                for (var parse = 1; parse <= parserRuns; parse++)
                {
                    engine.ParserState.OnParseRequested(engine);

                    if (engine.ParserState.Status != ParserState.Ready)
                    {
                        Assert.Inconclusive("Parser Error");
                    }

                    Assert.AreEqual(parse, refreshCount);
                    Assert.AreEqual(1, engine.TestEngine.Tests.Count());
                }
            }
        }
示例#3
0
        private void SetupAndTestAssertAndReturn(Action action, TestResult expected)
        {
            using (var engine = new MockedTestEngine(MockedTestEngine.GetTestMethod(1)))
            {
                var completionEvents = new List <TestCompletedEventArgs>();

                engine.SetupAssertCompleted(action);
                engine.TestEngine.TestCompleted += (source, args) => completionEvents.Add(args);
                engine.ParserState.OnParseRequested(engine);

                if (engine.ParserState.Status != ParserState.Ready)
                {
                    Assert.Inconclusive("Parser Error");
                }

                engine.TestEngine.Run(engine.TestEngine.Tests);
                Thread.SpinWait(25);

                Mock.Verify(engine.Dispatcher, engine.VbeInteraction, engine.WrapperProvider, engine.TypeLib);
                Assert.AreEqual(1, completionEvents.Count);
                Assert.AreEqual(expected, completionEvents.First().Result);
            }
        }