상속: Suite
예제 #1
0
        public void find_all_workspaces_from_a_project()
        {
            hierarchy =
            DataMother.BuildHierarchy(
            @"
            s1/t4,Success
            s1/t5,Success
            s1/t6,Failure
            s1/s2/t7,Success
            s1/s2/t8,Failure
            s1/s2/s3/t9,Success
            s1/s2/s3/t10,Success
            s1/s2/s3/s4/t11,Success
            s5/t12,Failure
            s5/s6/t13,Success
            s5/s6/s7/t14,Success
            s5/s6/s7/s8/t15,Success
            s9/t16,Success
            s9/t17,Success
            s9/t18,Failure
            ");

            var project = new Project();
            hierarchy.FindAllWorkspaces(project).Select(x => x.Name).ShouldHaveTheSameElementsAs("s1", "s5", "s9");
        }
        public void can_create_screen_for_hierarchy()
        {
            var hierarchy = new Hierarchy("the suite");
            ObjectFactory.Inject(hierarchy);

            var subject = _objectLocator.BuildSubject(hierarchy).ShouldBeOfType<ScreenLocator<Hierarchy>>();
            var presenter = subject.CreateScreen(factory).ShouldBeOfType<SuitePresenter>();

            presenter.Subject.ShouldBeTheSameAs(hierarchy);
        }
예제 #3
0
        public void get_path_under_a_hierarchy()
        {
            var hierarchy = new Hierarchy("project");
            hierarchy.AddTest("t1");
            hierarchy.AddTest("s1/t1");
            hierarchy.AddTest("s1/s2/t1");
            hierarchy.AddTest("s1/s2/s3/t1");

            hierarchy.FindTest("t1").GetPath().Locator.ShouldEqual("t1");
            hierarchy.FindTest("s1/t1").GetPath().Locator.ShouldEqual("s1/t1");
            hierarchy.FindTest("s1/s2/t1").GetPath().Locator.ShouldEqual("s1/s2/t1");
            hierarchy.FindTest("s1/s2/s3/t1").GetPath().Locator.ShouldEqual("s1/s2/s3/t1");
        }
예제 #4
0
        public static Hierarchy BuildHierarchy(string text)
        {
            var hierarchy = new Hierarchy("new hierarchy");

            var reader = new StringReader(text);
            string lineText;
            while ((lineText = reader.ReadLine()) != null)
            {
                if (lineText.Trim() == string.Empty) continue;

                buildTest(lineText, hierarchy);
            }

            return hierarchy;
        }
예제 #5
0
        public void SetUp()
        {
            hierarchy =
                DataMother.BuildHierarchy(
                    @"
            t1,Success
            t2,Failure
            t3,Success
            s1/t4,Success
            s1/t5,Success
            s1/t6,Failure
            s1/s2/t7,Success
            s1/s2/t8,Failure
            s1/s2/s3/t9,Success
            s1/s2/s3/t10,Success
            s1/s2/s3/s4/t11,Success
            s5/t12,Success
            s5/s6/t13,Success
            s5/s6/s7/t14,Success
            s5/s6/s7/s8/t15,Success
            ");

            visitor = MockRepository.GenerateMock<IHierarchyVisitor>();
        }
예제 #6
0
        private static void buildTest(string lineText, Hierarchy hierarchy)
        {
            string[] parts = lineText.Split(',');
            Test test = hierarchy.AddTest(parts[0]);

            if (test.LastResult == null)
            {
                test.LastResult = new TestResult();
            }

            switch (parts[1])
            {
                case "Success":
                    test.LastResult.Counts.IncrementRights();
                    break;

                case "Failure":
                    test.LastResult.Counts.IncrementWrongs();
                    break;

                case "Unknown":
                    test.LastResult = null;
                    break;

                default:
                    throw new NotImplementedException();
            }

            if (parts.Length >= 3)
            {
                test.Lifecycle = (Lifecycle)Enum.Parse(typeof(Lifecycle), parts[2]);
            }
        }
 public void SetUp()
 {
     runner = TestRunnerBuilder.For(x => x.AddFixturesFromAssemblyContaining<GrammarMarker>());
     hierarchy = DataMother.GrammarProject().LoadTests();
 }
예제 #8
0
        public Hierarchy LoadTests()
        {
            var hierarchy = new Hierarchy(this);

            new HierarchyLoader(GetTestFolder(), hierarchy, this).Load();

            return hierarchy;
        }
        public void SetUp()
        {
            hierarchy =
                DataMother.BuildHierarchy(
                    @"
            t1,Success
            t2,Failure
            t3,Success
            s1/t4,Success
            s1/t5,Success
            s1/t6,Failure
            s1/s2/t7,Success
            s1/s2/t8,Failure
            s1/s2/s3/t9,Success
            s1/s2/s3/t10,Success
            s1/s2/s3/s4/t11,Success
            s5/t12,Success
            s5/s6/t13,Success
            s5/s6/s7/t14,Success
            s5/s6/s7/s8/t15,Success
            s9/t16,Success
            s9/t17,Success
            s9/t18,Success
            ");

            view = new StubExplorerView();
            events = MockRepository.GenerateMock<IEventAggregator>();

            explorer = new TestExplorer(view, events, new TestFilterBar());
            explorer.Handle(hierarchy);
        }
예제 #10
0
 public void SetUp()
 {
     hierarchy = new Hierarchy("some project");
 }
예제 #11
0
        private void initialize(Func<IProject> getProject)
        {
            if (_project != null)
            {
                Dispose();
            }

            _project = getProject();
            _engine = new TestEngine();
            _engine.StopConditions.TimeoutInSeconds = _project.TimeoutInSeconds;
            _engine.Handle(new ProjectLoaded(_project));
            _engine.UseTeamCityListener();

            _hierarchy = _project.LoadTests();
        }
예제 #12
0
        private void initialize(Func<IProject> getProject)
        {
            if (_project != null)
            {
                Dispose();
            }

            _project = getProject();
            _engine = new TestEngine();
            _engine.StopConditions.TimeoutInSeconds = _project.TimeoutInSeconds;
            _engine.Handle(new ProjectLoaded(_project));

            // TODO -- Bring this back when it gets smarter: https://github.com/DarthFubuMVC/StoryTeller2/issues/2
            //_engine.UseTeamCityListener();

            _hierarchy = _project.LoadTests();
        }
 public void SetUp()
 {
     hierarchy =
         DataMother.BuildHierarchy(
             @"
     t1,Success
     t2,Failure
     t3,Success
     s1/t4,Success,Regression
     s1/t5,Success,Regression
     s1/t6,Failure,Regression
     s1/s2/t7,Success
     s1/s2/t8,Failure,Regression
     s1/s2/s3/t9,Success
     s1/s2/s3/t10,Success
     s1/s2/s3/s4/t11,Success
     s5/t12,Success
     s5/s6/t13,Success
     s5/s6/s7/t14,Success
     s5/s6/s7/s8/t15,Success
     s9/t16,Success,Regression
     s9/t17,Unknown
     s9/t18,Unknown
     ");
     events = new NulloEventAggregator();
     view = new StubExplorerView();
     explorer = new TestExplorer(view, events, new TestFilterBar());
     explorer.Handle(hierarchy);
 }
예제 #14
0
 public void get_the_test_path_of_a_test_at_the_hierarchy_scope()
 {
     var project = new Project(@"c:\a\b\c\d\project.proj")
     {
         TestFolder = "tests"
     };
     var hierarchy = new Hierarchy("something");
     var test = new Test("t0");
     hierarchy.AddTest(test);
     project.GetTestPath(test).ShouldEqual(@"c:\a\b\c\d\tests\t0.xml");
 }
예제 #15
0
        public void is_in_workspace()
        {
            var hierarchy = new Hierarchy("project");
            hierarchy.AddTest("s1/t1");
            hierarchy.AddTest("s1/s2/t2");
            hierarchy.AddTest("s1/s2/s3/t3");

            var test = hierarchy.FindTest("s1/t1");
            test.IsInWorkspace("s1").ShouldBeTrue();
            test.IsInWorkspace("s2").ShouldBeFalse();
            test.IsInWorkspace("s3").ShouldBeFalse();

            var test2 = hierarchy.FindTest("s1/s2/t2");
            test2.IsInWorkspace("s1").ShouldBeTrue();
            test2.IsInWorkspace("s2").ShouldBeFalse();
            test2.IsInWorkspace("s3").ShouldBeFalse();

            var test3 = hierarchy.FindTest("s1/s2/s3/t3");
            test3.IsInWorkspace("s1").ShouldBeTrue();
            test3.IsInWorkspace("s2").ShouldBeFalse();
            test3.IsInWorkspace("s3").ShouldBeFalse();
        }
 public void SetUp()
 {
     runner = new GrammarRunner();
     hierarchy = DataMother.GrammarProject().LoadTests();
 }
예제 #17
0
        public void SetUp()
        {
            hierarchy =
            DataMother.BuildHierarchy(
            @"
            t1,Success
            t2,Failure
            t3,Success
            s1/t4,Success
            s1/t5,Success
            s1/t6,Failure
            s1/s2/t7,Success
            s1/s2/t8,Failure
            s1/s2/s3/t9,Success
            s1/s2/s3/t10,Success
            s1/s2/s3/s4/t11,Success
            s5/t12,Failure
            s5/s6/t13,Success
            s5/s6/s7/t14,Success
            s5/s6/s7/s8/t15,Success
            s9/t16,Success
            s9/t17,Success
            s9/t18,Failure
            ");

            filter = new TestFilter();
        }
예제 #18
0
 public void Rebuild(Hierarchy hierarchy)
 {
     Rebuild(hierarchy.GetAllTests());
 }
예제 #19
0
        public static void TestWasVisited(this IHierarchyVisitor visitor, Hierarchy hierarchy, string path)
        {
            Test test = hierarchy.FindTest(path);
            test.ShouldNotBeNull();

            visitor.AssertWasCalled(x => x.Test(test));
        }
예제 #20
0
 public HierarchyLoader(string topFolder, Hierarchy hierarchy, IProject project)
 {
     _topFolder = topFolder;
     _hierarchy = hierarchy;
     _project = project;
 }
예제 #21
0
        public void get_path_with_hierarchy_at_top()
        {
            var hierarchy = new Hierarchy("hier");
            hierarchy.AddTest("s1/s2/s3/t1");

            hierarchy.FindSuite("s1/s2/s3").GetPath().Locator.ShouldEqual("s1/s2/s3");
            hierarchy.FindSuite("s1/s2").GetPath().Locator.ShouldEqual("s1/s2");
            hierarchy.FindSuite("s1").GetPath().Locator.ShouldEqual("s1");
        }
 public void SetUp()
 {
     project = DataMother.MathProject();
     hierarchy = project.LoadTests();
 }
예제 #23
0
        public void get_project_name()
        {
            var hierarchy = new Hierarchy("hier");
            hierarchy.AddTest("s1/s2/s3/t1");

            Suite suite = hierarchy.FindSuite("s1/s2/s3");
            suite.GetProjectName().ShouldEqual(hierarchy.Name);
        }
예제 #24
0
        public static void SuiteWasVisited(this IHierarchyVisitor visitor, Hierarchy hierarchy, string path)
        {
            Suite suite = hierarchy.FindSuite(path);
            suite.ShouldNotBeNull();

            visitor.AssertWasCalled(x => x.StartSuite(suite));
            visitor.AssertWasCalled(x => x.EndSuite(suite));
        }
예제 #25
0
 public HierarchyLoader(string topFolder, Hierarchy hierarchy)
 {
     _topFolder = topFolder;
     _hierarchy = hierarchy;
 }