private static MergeRuleSets CreateTask(DummyBuildEngine buildEngine, string primaryRuleset, params string[] rulesetsToInclude)
        {
            MergeRuleSets task = new MergeRuleSets();

            task.BuildEngine              = buildEngine;
            task.PrimaryRulesetFilePath   = primaryRuleset;
            task.IncludedRulesetFilePaths = rulesetsToInclude;

            return(task);
        }
        public void MergeRulesets_PrimaryRulesetDoesNotExist()
        {
            // Arrange
            DummyBuildEngine dummyEngine = new DummyBuildEngine();
            MergeRuleSets    task        = CreateTask(dummyEngine, "missing.ruleset");

            // Act and Assert
            FileNotFoundException ex = AssertException.Expects <FileNotFoundException>(() => task.Execute());

            Assert.AreEqual("missing.ruleset", ex.FileName);
        }
        private void ExecuteAndCheckSuccess(string primaryRuleset, params string[] rulesetsToInclude)
        {
            this.TestContext.AddResultFile(primaryRuleset);

            DummyBuildEngine dummyEngine = new DummyBuildEngine();
            MergeRuleSets    task        = CreateTask(dummyEngine, primaryRuleset, rulesetsToInclude);

            bool taskSucess = task.Execute();

            Assert.IsTrue(taskSucess, "Expecting the task to succeed");
            dummyEngine.AssertNoErrors();
            dummyEngine.AssertNoWarnings();
        }
Exemple #4
0
        public void MergeRulesets_PrimaryRulesetDoesNotExist()
        {
            // Arrange
            string projectDir            = this.TestContext.TestDeploymentDir;
            string targetRulesetFilePath = Path.Combine(projectDir, "merged.ruleset.txt");

            DummyBuildEngine dummyEngine = new DummyBuildEngine();
            MergeRuleSets    task        = CreateTask(dummyEngine, projectDir, "missing.ruleset", targetRulesetFilePath);

            // Act and Assert
            FileNotFoundException ex = AssertException.Expects <FileNotFoundException>(() => task.Execute());

            Assert.AreEqual("missing.ruleset", ex.FileName);
        }
Exemple #5
0
        private static MergeRuleSets CreateTask(DummyBuildEngine buildEngine,
                                                string projectDir,
                                                string primaryRuleset,
                                                string targetRulesetFilePath,
                                                params string[] rulesetsToInclude)
        {
            var task = new MergeRuleSets
            {
                BuildEngine              = buildEngine,
                ProjectDirectoryPath     = projectDir,
                PrimaryRulesetFilePath   = primaryRuleset,
                MergedRuleSetFilePath    = targetRulesetFilePath,
                IncludedRulesetFilePaths = rulesetsToInclude
            };

            return(task);
        }
Exemple #6
0
        public void MergeRulesets_MergedRulesetAlreadyExists()
        {
            // Arrange
            string projectDir            = this.TestContext.TestDeploymentDir;
            string primaryRuleset        = this.CreateValidRuleset("valid.ruleset.txt");
            string targetRulesetFilePath = Path.Combine(projectDir, "merged.ruleset.txt");

            File.WriteAllText(targetRulesetFilePath, "dummy existing ruleset");

            DummyBuildEngine dummyEngine = new DummyBuildEngine();
            MergeRuleSets    task        = CreateTask(dummyEngine, projectDir, primaryRuleset, targetRulesetFilePath);

            // Act and Assert
            InvalidOperationException ex = AssertException.Expects <InvalidOperationException>(() => task.Execute());

            Assert.IsTrue(ex.Message.Contains(targetRulesetFilePath));
        }
Exemple #7
0
        private string ExecuteAndCheckSuccess(string projectDirectory, string primaryRuleset, params string[] rulesetsToInclude)
        {
            string mergedRulesetFileName = primaryRuleset + ".merged.txt";

            DummyBuildEngine dummyEngine = new DummyBuildEngine();
            MergeRuleSets    task        = CreateTask(dummyEngine, projectDirectory, primaryRuleset, mergedRulesetFileName, rulesetsToInclude);

            bool taskSucess = task.Execute();

            Assert.IsTrue(taskSucess, "Expecting the task to succeed");
            dummyEngine.AssertNoErrors();
            dummyEngine.AssertNoWarnings();

            Assert.IsTrue(File.Exists(mergedRulesetFileName), "Expecting the merged ruleset to have been created: {0}", mergedRulesetFileName);
            this.TestContext.AddResultFile(primaryRuleset);
            this.TestContext.AddResultFile(mergedRulesetFileName);

            return(mergedRulesetFileName);
        }
        private static MergeRuleSets CreateTask(DummyBuildEngine buildEngine, string primaryRuleset, params string[] rulesetsToInclude)
        {
            MergeRuleSets task = new MergeRuleSets();
            task.BuildEngine = buildEngine;
            task.PrimaryRulesetFilePath = primaryRuleset;
            task.IncludedRulesetFilePaths = rulesetsToInclude;

            return task;
        }