Beispiel #1
0
        public void ClassObjectHasTestList()
        {
            StubExecutorWrapper wrapper = CreateStubExecutor();

            TestAssembly assembly = TestAssemblyBuilder.Build(wrapper);

            TestClass testClass = assembly.EnumerateClasses().First();
            IEnumerable <TestMethod> testMethods = testClass.EnumerateTestMethods();

            Assert.True(testMethods.Any(tm => tm.TestClass == testClass &&
                                        tm.MethodName == "NonSkipMethod" &&
                                        tm.DisplayName == "ThisIsTheType.NonSkipMethod" &&
                                        tm.RunResults.Count == 0 &&
                                        tm.Traits.Count == 0));
            Assert.True(testMethods.Any(tm => tm.TestClass == testClass &&
                                        tm.MethodName == "TestMethodWithTraits" &&
                                        tm.DisplayName == "This is a custom display name" &&
                                        tm.RunResults.Count == 0 &&
                                        tm.Traits["Category"].FirstOrDefault() == "Foo" &&
                                        tm.Traits["Author"].FirstOrDefault() == "Dumb Attribute"));
            Assert.True(testMethods.Any(tm => tm.TestClass == testClass &&
                                        tm.MethodName == "SkipMethod" &&
                                        tm.DisplayName == "ThisIsTheType.SkipMethod" &&
                                        tm.RunResults.Count == 1 &&
                                        ((TestSkippedResult)tm.RunResults[0]).Reason == "Skip Reason" &&
                                        tm.Traits.Count == 0));
        }
Beispiel #2
0
        public void NullTestClassListThrows()
        {
            StubExecutorWrapper wrapper = new StubExecutorWrapper();

            Exception ex = Record.Exception(() => new TestAssembly(wrapper, null));

            Assert.IsType<ArgumentNullException>(ex);
        }
Beispiel #3
0
        public void NullTestClassListThrows()
        {
            StubExecutorWrapper wrapper = new StubExecutorWrapper();

            Exception ex = Record.Exception(() => new TestAssembly(wrapper, null));

            Assert.IsType <ArgumentNullException>(ex);
        }
Beispiel #4
0
        public void DisposingAssemblyDisposesExecutorWrapper()
        {
            StubExecutorWrapper wrapper = new StubExecutorWrapper();
            var assembly = new TestAssembly(wrapper, new TestClass[0]);

            assembly.Dispose();

            Assert.True(wrapper.Dispose__Called);
        }
Beispiel #5
0
        public void SetsTestAssemblyOnTestClasses()
        {
            StubExecutorWrapper wrapper = new StubExecutorWrapper();
            TestClass testClass = new TestClass("typeName", new TestMethod[0]);

            var assembly = new TestAssembly(wrapper, new[] { testClass });

            Assert.Same(assembly, testClass.TestAssembly);
        }
Beispiel #6
0
        public void DisposingAssemblyDisposesExecutorWrapper()
        {
            StubExecutorWrapper wrapper = new StubExecutorWrapper();
            var assembly = new TestAssembly(wrapper, new TestClass[0]);

            assembly.Dispose();

            Assert.True(wrapper.Dispose__Called);
        }
Beispiel #7
0
        public void SetsTestAssemblyOnTestClasses()
        {
            StubExecutorWrapper wrapper   = new StubExecutorWrapper();
            TestClass           testClass = new TestClass("typeName", new TestMethod[0]);

            var assembly = new TestAssembly(wrapper, new[] { testClass });

            Assert.Same(assembly, testClass.TestAssembly);
        }
Beispiel #8
0
        public void CreatesAssemblyObjectWithAssemblyInformation()
        {
            StubExecutorWrapper wrapper = CreateStubExecutor(@"C:\Foo\Bar.dll", @"C:\Biff\Baz.config");

            TestAssembly assembly = TestAssemblyBuilder.Build(wrapper);

            Assert.Equal(@"C:\Foo\Bar.dll", assembly.AssemblyFilename);
            Assert.Equal(@"C:\Biff\Baz.config", assembly.ConfigFilename);
            Assert.Equal(wrapper.XunitVersion, assembly.XunitVersion);
            Assert.Same(wrapper, assembly.ExecutorWrapper);
        }
Beispiel #9
0
        private static TestableTestRunner Create()
        {
            Mock <IRunnerLogger> logger   = new Mock <IRunnerLogger>();
            StubExecutorWrapper  executor = new StubExecutorWrapper
            {
                AssemblyFilename = @"C:\foo\bar.dll",
                XunitVersion     = "abcd",
            };

            return(new TestableTestRunner(executor, logger));
        }
Beispiel #10
0
        public void AssemblyObjectHasClassList()
        {
            StubExecutorWrapper wrapper = CreateStubExecutor();

            TestAssembly assembly = TestAssemblyBuilder.Build(wrapper);

            var testClasses = assembly.EnumerateClasses();

            Assert.Equal(2, testClasses.Count());
            TestClass testClass = testClasses.First();

            Assert.Equal("ThisIsTheType", testClass.TypeName);
        }
Beispiel #11
0
        public void FilterWithFalsePredicate()
        {
            var wrapper       = new StubExecutorWrapper();
            var class1Method1 = new TestMethod("method1", null, null);
            var class1Method2 = new TestMethod("method2", null, null);
            var class2Method3 = new TestMethod("method3", null, null);
            var class1        = new TestClass("foo", new[] { class1Method1, class1Method2 });
            var class2        = new TestClass("bar", new[] { class2Method3 });
            var assembly      = new TestAssembly(wrapper, new[] { class1, class2 });

            var tests = assembly.EnumerateTestMethods(testMethod => false);

            Assert.Equal(0, tests.Count());
        }
Beispiel #12
0
        public void FilterWithFalsePredicate()
        {
            var wrapper = new StubExecutorWrapper();
            var class1Method1 = new TestMethod("method1", null, null);
            var class1Method2 = new TestMethod("method2", null, null);
            var class2Method3 = new TestMethod("method3", null, null);
            var class1 = new TestClass("foo", new[] { class1Method1, class1Method2 });
            var class2 = new TestClass("bar", new[] { class2Method3 });
            var assembly = new TestAssembly(wrapper, new[] { class1, class2 });

            var tests = assembly.EnumerateTestMethods(testMethod => false);

            Assert.Equal(0, tests.Count());
        }
Beispiel #13
0
        public void UnfilteredReturnsAllTestsFromAllClasses()
        {
            var wrapper       = new StubExecutorWrapper();
            var class1Method1 = new TestMethod("method1", null, null);
            var class1Method2 = new TestMethod("method2", null, null);
            var class2Method3 = new TestMethod("method3", null, null);
            var class1        = new TestClass("foo", new[] { class1Method1, class1Method2 });
            var class2        = new TestClass("bar", new[] { class2Method3 });
            var assembly      = new TestAssembly(wrapper, new[] { class1, class2 });

            var tests = assembly.EnumerateTestMethods();

            Assert.Equal(3, tests.Count());
            Assert.Contains(class1Method1, tests);
            Assert.Contains(class1Method2, tests);
            Assert.Contains(class2Method3, tests);
        }
Beispiel #14
0
        private static TestableTestRunner Create()
        {
            Mock<IRunnerLogger> logger = new Mock<IRunnerLogger>();
            StubExecutorWrapper executor = new StubExecutorWrapper
                                                {
                                                    AssemblyFilename = @"C:\foo\bar.dll",
                                                    XunitVersion = "abcd",
                                                };

            return new TestableTestRunner(executor, logger);
        }
Beispiel #15
0
 private TestableTestRunner(StubExecutorWrapper executor, Mock<IRunnerLogger> logger)
     : base(executor, logger.Object)
 {
     Executor = executor;
     Logger = logger;
 }
Beispiel #16
0
        public void UnfilteredReturnsAllTestsFromAllClasses()
        {
            var wrapper = new StubExecutorWrapper();
            var class1Method1 = new TestMethod("method1", null, null);
            var class1Method2 = new TestMethod("method2", null, null);
            var class2Method3 = new TestMethod("method3", null, null);
            var class1 = new TestClass("foo", new[] { class1Method1, class1Method2 });
            var class2 = new TestClass("bar", new[] { class2Method3 });
            var assembly = new TestAssembly(wrapper, new[] { class1, class2 });

            var tests = assembly.EnumerateTestMethods();

            Assert.Equal(3, tests.Count());
            Assert.Contains(class1Method1, tests);
            Assert.Contains(class1Method2, tests);
            Assert.Contains(class2Method3, tests);
        }
Beispiel #17
0
 private TestableTestRunner(StubExecutorWrapper executor, Mock <IRunnerLogger> logger)
     : base(executor, logger.Object)
 {
     Executor = executor;
     Logger   = logger;
 }