/// <summary>
        /// Gets all suites.
        /// </summary>
        /// <param name="subSuitesCore">The sub suites core.</param>
        /// <returns>list of all suites</returns>
        public static ObservableCollection<Suite> GetAllSuites(ITestSuiteCollection subSuitesCore)
        {
            ObservableCollection<Suite> subSuites = new ObservableCollection<Suite>();
            foreach (ITestSuiteBase currentSuite in subSuitesCore)
            {
                if (currentSuite != null)
                {
                    currentSuite.Refresh();
                    ObservableCollection<Suite> childred = null;
                    if (currentSuite is IStaticTestSuite)
                    {
                        IStaticTestSuite suite = currentSuite as IStaticTestSuite;
                        if (suite.SubSuites != null && suite.SubSuites.Count > 0)
                        {
                            childred = GetAllSuites(suite.SubSuites);
                        }
                    }
                    Suite newSuite = new Suite(currentSuite.Title, currentSuite.Id, childred);

                    // Cannot add suites to requirements based suite
                    if (currentSuite is IRequirementTestSuite)
                    {
                        newSuite.IsPasteEnabled = false;
                        newSuite.IsSuiteAddEnabled = false;
                        newSuite.IsAddSuiteAllowed = false;
                        newSuite.IsPasteAllowed = false;
                    }
                    SetParentToAllChildrenSuites(childred, newSuite);
                 
                    subSuites.Add(newSuite);
                }
            }

            return subSuites;
        }
Exemplo n.º 2
0
        public void ExistingModulesMergedWithDiscoveredOnes()
        {
            var fs = new TestFileSystemDirectory("root",
                                                 new TestFileSystemDirectory("src",
                                                                             new TestFileSystemDirectory("Module1",
                                                                                                         new TestFileSystemDirectory
                                                                                                             ("Project11"))));

            var suite = new Suite(fs);

            var module1 = suite.GetModule("Module1");
            var projectA = module1.GetProject("ProjectA");

            module1.Projects.Should().HaveCount(1);
            module1.Projects.Should().HaveElementAt(0, projectA);

            var discovery = new ModuleProjectDiscovery(fs);
            discovery.ExtendWithDiscoveries(suite);

            suite.Modules.Should().HaveCount(1);
            suite.Modules.Should().HaveElementAt(0, module1);
            module1.Projects.Should().HaveCount(2);
            module1.Projects.Should().Contain(projectA);
            module1.Projects.Should().Contain(p => p.Name == "Project11");
        }
Exemplo n.º 3
0
 /// <summary>
 /// Initializes the class
 /// </summary>
 /// <param name="suite">Active suite</param>
 /// <param name="projectGuidManagement">Project GUID management service</param>
 /// <param name="sourceSetName">Source set name</param>
 /// <param name="targetDir">Target directory where the compiled files will be placed</param>
 public ReferencesSection(Suite suite, IProjectGuidManagement projectGuidManagement, string sourceSetName, [TargetRoot] IFileSystemDirectory targetDir)
     : base(suite)
 {
     this.projectGuidManagement = projectGuidManagement;
     this.sourceSetName = sourceSetName;
     this.targetDir = targetDir;
 }
Exemplo n.º 4
0
 public Card(Suite suite, string text, int value, bool shown=true)
 {
     Suite = suite;
     Title = text;
     Value = value;
     _shown = shown;
 }
Exemplo n.º 5
0
 public void SuiteNameCanBeModified()
 {
     var suite = new Suite(new TestFileSystemDirectory("root")) {Name = "test"};
     suite.Name.Should().Be("test");
     suite.Name = "test2";
     suite.Name.Should().Be("test2");
 }
Exemplo n.º 6
0
        public void ExtendWithDiscoveries(Suite suite)
        {           
            var scriptsDir = suite.SuiteRoot.GetChildDirectory("scripts");
            if (scriptsDir != null)
            {
                BuildScriptMappings mappings;
                if (suite.HasParameters("build-scripts"))
                {
                    mappings = suite.GetParameters<BuildScriptMappings>("build-scripts");
                }
                else 
                {
                    mappings = new BuildScriptMappings();
                    suite.AddParameters("build-scripts", mappings);
                }

                foreach (var scriptFile in scriptsDir.Files)
                {
                    var ext = Path.GetExtension(scriptFile);
                    if (ext != null && ext.ToLowerInvariant() == ".py")
                    {
                        var script = new SimplePythonBuildScript(
                            new SuiteRelativePath(Path.Combine("scripts", scriptFile)),
                            suite.SuiteRoot);

                        mappings.Add(script.SourceSetName, script);

                        log.DebugFormat("Discovered build script: {0}", script.Name);
                    }
                }
            }
        }
Exemplo n.º 7
0
        /// <summary>
        /// Extends suite model with discovered information based on bari conventions
        /// </summary>        
        /// <param name="suite">The suite model to be extended with discoveries</param>
        public void ExtendWithDiscoveries(Suite suite)
        {
            var srcDir = suiteRoot.GetChildDirectory("src");
            srcDir.With(s => s.ChildDirectories.Do(
                moduleName =>
                {
                    Module module = suite.GetModule(moduleName);

                    var moduleDir = srcDir.GetChildDirectory(moduleName);
                    foreach (var projectName in moduleDir.ChildDirectories)
                    {
                        if (projectName.Equals("tests", StringComparison.InvariantCultureIgnoreCase))
                        {
                            // This is the special subdirectory for test projects
                            var testsDir = moduleDir.GetChildDirectory(projectName);
                            foreach (var testProjectName in testsDir.ChildDirectories)
                            {
                                var testProject = module.GetTestProject(testProjectName);
                                DiscoverProjectSources(testProject, testsDir.GetChildDirectory(testProjectName));
                            }
                        }
                        else
                        {
                            // This is a project directory

                            Project project = module.GetProject(projectName);
                            DiscoverProjectSources(project, moduleDir.GetChildDirectory(projectName));
                        }
                    }
                }));
        }
Exemplo n.º 8
0
 public Deck(bool isAceHigh, bool useTrumps, Suite trump)
     : this()
 {
     Card.isAceHigh = isAceHigh;
     Card.useTrumps = useTrumps;
     Card.trump = trump;
 }
Exemplo n.º 9
0
 public PropertiesSection(Suite suite, IProjectGuidManagement projectGuidManagement, [TargetRoot] IFileSystemDirectory targetDir, IProjectPlatformManagement platformManagement)
     : base(suite)
 {
     this.projectGuidManagement = projectGuidManagement;
     this.targetDir = targetDir;
     this.platformManagement = platformManagement;
 }
Exemplo n.º 10
0
        public void StoresReferenceToRoot()
        {
            var fs = new TestFileSystemDirectory("root");
            var suite = new Suite(fs);

            suite.SuiteRoot.Should().Be(fs);
        }
Exemplo n.º 11
0
        public void SetUp()
        {
            kernel = new StandardKernel();
            Kernel.RegisterCoreBindings(kernel);
            kernel.Bind<IFileSystemDirectory>().ToConstant(new TestFileSystemDirectory("root")).WhenTargetHas
                <SuiteRootAttribute>();

            output = new TestUserOutput();
            kernel.Bind<IUserOutput>().ToConstant(output).InSingletonScope();

            suite = kernel.Get<Suite>();
            suite.Name = "test suite";
            var mod1 = suite.GetModule("first module");
            var mod2 = suite.GetModule("other module");
            var mod3 = suite.GetModule("last module");

            var proj11 = mod1.GetProject("project 1.1");
            var proj12 = mod1.GetProject("project 1.2");
            var proj31 = mod3.GetProject("project 3.1");

            mod1.GetTestProject("test1");
            mod2.GetTestProject("test2");

            var cs = proj31.GetSourceSet("cs");
            var vb = proj31.GetSourceSet("vb");
            var fs = proj31.GetSourceSet("fs");

            cs.Add(new SuiteRelativePath("a.cs"));
            cs.Add(new SuiteRelativePath("b.cs"));
            cs.Add(new SuiteRelativePath("c.cs"));
            
            vb.Add(new SuiteRelativePath("x.vb"));
        }
Exemplo n.º 12
0
 public AddonSupportSolutionItemProvider([TargetRoot] IFileSystemDirectory targetRoot, Suite suite, [Current] ICommand currentCommand, ICommandTargetParser targetParser)
 {
     this.targetRoot = targetRoot;
     this.suite = suite;
     this.currentCommand = currentCommand;
     this.targetParser = targetParser;
 }
Exemplo n.º 13
0
        public void ProjectsDiscovered()
        {
            var fs = new TestFileSystemDirectory("root",
                                     new TestFileSystemDirectory("src",
                                                                 new TestFileSystemDirectory("Module1",
                                                                     new TestFileSystemDirectory("Project11")),
                                                                 new TestFileSystemDirectory("Module2"),
                                                                 new TestFileSystemDirectory("Module3",
                                                                     new TestFileSystemDirectory("Project31"),
                                                                     new TestFileSystemDirectory("Project32"))),
                                     new TestFileSystemDirectory("output"));

            var suite = new Suite(fs);

            suite.Modules.Should().BeEmpty();

            var discovery = new ModuleProjectDiscovery(fs);
            discovery.ExtendWithDiscoveries(suite);

            suite.Modules.Should().HaveCount(3);
            suite.Modules.Should().OnlyContain(m => m.Name == "Module1" ||
                                                    m.Name == "Module2" ||
                                                    m.Name == "Module3");

            suite.GetModule("Module1").Projects.Should().HaveCount(1);
            suite.GetModule("Module1").Projects.Should().Contain(p => p.Name == "Project11");
            suite.GetModule("Module2").Projects.Should().HaveCount(0);
            suite.GetModule("Module3").Projects.Should().HaveCount(2);
            suite.GetModule("Module3").Projects.Should().Contain(p => p.Name == "Project31");
            suite.GetModule("Module3").Projects.Should().Contain(p => p.Name == "Project32");
        }
        public void can_create_screen_for_suite()
        {
            var suite = new Suite("the suite");
            var subject = _objectLocator.BuildSubject(suite).ShouldBeOfType<ScreenLocator<Suite>>();
            var presenter = subject.CreateScreen(factory).ShouldBeOfType<SuitePresenter>();

            presenter.Subject.ShouldBeTheSameAs(suite);
        }
Exemplo n.º 15
0
        /// <summary>
        /// Initializes the GUID management service
        /// </summary>
        /// <param name="cacheRoot">Cache root directory</param>
        /// <param name="suite">Active suite</param>
        public DefaultProjectGuidManagement([CacheRoot] Lazy<IFileSystemDirectory> cacheRoot, Suite suite)
        {
            Contract.Requires(cacheRoot != null);
            Contract.Requires(suite != null);

            this.cacheRoot = cacheRoot;
            this.suite = suite;
        }
 public PythonScriptedPostProcessorFactory(Suite suite, IPostProcessorScriptRunner scriptRunner)
 {
     this.scriptRunner = scriptRunner;
     if (suite.HasParameters("post-processor-scripts"))
         scriptMappings = suite.GetParameters<PostProcessorScriptMappings>("post-processor-scripts");
     else
         scriptMappings = new PostProcessorScriptMappings();
 }
Exemplo n.º 17
0
        public void HasModuleWorksCorrectly()
        {
            var suite = new Suite(new TestFileSystemDirectory("root"));

            suite.HasModule("mod").Should().BeFalse();
            suite.GetModule("mod");
            suite.HasModule("mod").Should().BeTrue();
        }
Exemplo n.º 18
0
        public void GetModuleReturnsTheSameInstanceIfCalledTwice()
        {
            var suite = new Suite(new TestFileSystemDirectory("root"));
            var mod1 = suite.GetModule("mod");
            var mod2 = suite.GetModule("mod");

            mod1.Should().BeSameAs(mod2);
        } 
Exemplo n.º 19
0
        public void GetModuleCreatesInstanceIfMissing()
        {
            var suite = new Suite(new TestFileSystemDirectory("root"));
            var mod1 = suite.GetModule("mod");

            mod1.Should().NotBeNull();
            mod1.Name.Should().Be("mod");
        }
Exemplo n.º 20
0
        public InnoSetupProductPackager(IInnoSetupCompiler compiler, Suite suite, IUserOutput output)
        {
            Contract.Requires(compiler != null);
            Contract.Requires(suite != null);

            this.compiler = compiler;
            this.suite = suite;
            this.output = output;
        }
Exemplo n.º 21
0
        /// <summary>
        /// Runs all the available explorers to add their discoveries
        /// to the suite model.
        /// </summary>
        /// <param name="suite">The suite model to be extended.</param>
        public void RunAll(Suite suite)
        {
            Contract.Requires(suite != null);

            foreach (var suiteExplorer in explorers)
            {
                suiteExplorer.ExtendWithDiscoveries(suite);
            }
        }
        public PythonScriptedPostProcessorFactory(Suite suite, IPythonScriptedBuilderFactory builderFactory)
        {
            this.builderFactory = builderFactory;

            if (suite.HasParameters("post-processor-scripts"))
                scriptMappings = suite.GetParameters<PostProcessorScriptMappings>("post-processor-scripts");
            else
                scriptMappings = new PostProcessorScriptMappings();
        }
Exemplo n.º 23
0
        public void SetUp()
        {
            var root = new TestFileSystemDirectory("root");
            var goalx86 = new Goal("debug-x86", new[] { Suite.DebugGoal, new Goal("x86") });
            var goalx64 = new Goal("debug-x64", new[] { Suite.DebugGoal, new Goal("x64") });

            x86Suite = new Suite(root, new[] {goalx86, goalx64}, goalx86);
            x64Suite = new Suite(root, new[] {goalx86, goalx64}, goalx64);
        }
Exemplo n.º 24
0
 private void visit(Suite suite, IHierarchyVisitor visitor)
 {
     if (SuiteFilter(suite))
     {
         visitor.StartSuite(suite);
         propagateToChildren(suite, visitor);
         visitor.EndSuite(suite);
     }
 }
Exemplo n.º 25
0
        public void find_test_recursive()
        {
            var test = new Test("some name");

            Suite top =
                new Suite("top").Add(x => { x.Suite("child").Add(o => { o.Suite("grandchild").AddTest(test); }); });

            top.FindTest("child/grandchild/some name").ShouldBeTheSameAs(test);
        }
Exemplo n.º 26
0
        public void get_path_with_parent()
        {
            var suite = new Suite("s1");
            var test = new Test("t1");

            suite.AddTest(test);

            test.GetPath().Locator.ShouldEqual("s1/t1");
        }
        public PythonScriptedProjectBuilderFactory(Suite suite, ISourceSetFingerprintFactory fingerprintFactory, IProjectBuildScriptRunner scriptRunner)
        {
            if (suite.HasParameters("build-scripts"))
                buildScriptMappings = suite.GetParameters<BuildScriptMappings>("build-scripts");
            else
                buildScriptMappings = new BuildScriptMappings();

            this.fingerprintFactory = fingerprintFactory;
            this.scriptRunner = scriptRunner;
        }
        public PythonScriptedProjectBuilderFactory(Suite suite, IPythonScriptedBuilderFactory builderFactory, ICoreBuilderFactory coreBuilderFactory)
        {
            if (suite.HasParameters("build-scripts"))
                buildScriptMappings = suite.GetParameters<BuildScriptMappings>("build-scripts");
            else
                buildScriptMappings = new BuildScriptMappings();

            this.builderFactory = builderFactory;
            this.coreBuilderFactory = coreBuilderFactory;
        }
Exemplo n.º 29
0
        public void adding_a_test_to_a_suite_sets_the_suite_as_the_tests_parent()
        {
            var suite = new Suite("Suite 1");
            var test = new Test("Test 1");

            suite.AddTest(test);

            test.Parent.ShouldEqual(suite);
            suite.Contains(test).ShouldBeTrue();
        }
Exemplo n.º 30
0
        public bool Run(Suite suite, string[] parameters)
        {
            if (parameters.Length == 1)
                PublishProduct(suite, parameters[0]);
            else
                throw new InvalidCommandParameterException("publish",
                                                           "The 'publish' command must be called with a product name!");

            return true;
        }
Exemplo n.º 31
0
 public void WritePath(string parentPath)
 {
     path = Suite.JoinPath(parentPath, name);
 }
Exemplo n.º 32
0
 public Card(Rank rank, Suite suite)
 {
     this.Rank     = rank;
     this.Suite    = suite;
     this.IsFaceUp = true;
 }
Exemplo n.º 33
0
 public static void Main(string[] args)
 {
     Suite.Run(new NullListener(), NUnit.Core.TestFilter.Empty);
 }
Exemplo n.º 34
0
 public Tests() : this(Suite.CreateServices())
 {
 }
Exemplo n.º 35
0
 public void Test1()
 {
     // Forward the call
     Suite.RunNUnitTest(this, myTestServices);
 }
Exemplo n.º 36
0
 /// <summary>
 /// Initializes the class
 /// </summary>
 /// <param name="suite">Active suite</param>
 /// <param name="projectGuidManagement">Project GUID management service</param>
 public StaticLibraryReferencesSection(Suite suite, IProjectGuidManagement projectGuidManagement)
     : base(suite)
 {
     this.projectGuidManagement = projectGuidManagement;
 }
Exemplo n.º 37
0
 public string SuitePath()
 {
     return(Suite.SuitePathOf(path));
 }