public void TestInitialize()
        {
            this.serviceProvider = new ConfigurableServiceProvider();

            this.outputPane = new ConfigurableVsOutputWindowPane();
            this.serviceProvider.RegisterService(typeof(SVsGeneralOutputWindowPane), this.outputPane);

            this.shell = new ConfigurableVsShell();
            this.shell.RegisterPropertyGetter((int)__VSSPROPID2.VSSPROPID_InstallRootDir, () => this.VsInstallRoot);
            this.serviceProvider.RegisterService(typeof(SVsShell), this.shell);

            this.testSubject = new RuleSetInspector(this.serviceProvider);

            Directory.CreateDirectory(this.VsRuleSetsDirectory);
            Directory.CreateDirectory(this.SonarQubeRuleSetFolder);
            Directory.CreateDirectory(this.ProjectRuleSetFolder);
            Directory.CreateDirectory(this.SolutionSharedRuleSetFolder);

            this.temporaryFiles = new TempFileCollection();
        }
        public void RuleSetInspector_IsBaselineWeakend()
        {
            // X -> Error
            RuleSetInspector.IsBaselineWeakend(RuleAction.Error, RuleAction.Error).Should().BeFalse();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Warning, RuleAction.Error).Should().BeFalse();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Info, RuleAction.Error).Should().BeFalse();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Hidden, RuleAction.Error).Should().BeFalse();
            RuleSetInspector.IsBaselineWeakend(RuleAction.None, RuleAction.Error).Should().BeFalse();

            // X -> Warning
            RuleSetInspector.IsBaselineWeakend(RuleAction.Error, RuleAction.Warning).Should().BeTrue();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Warning, RuleAction.Warning).Should().BeFalse();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Info, RuleAction.Warning).Should().BeFalse();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Hidden, RuleAction.Warning).Should().BeFalse();
            RuleSetInspector.IsBaselineWeakend(RuleAction.None, RuleAction.Warning).Should().BeFalse();

            // X -> Info
            RuleSetInspector.IsBaselineWeakend(RuleAction.Error, RuleAction.Info).Should().BeTrue();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Warning, RuleAction.Info).Should().BeTrue();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Info, RuleAction.Info).Should().BeFalse();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Hidden, RuleAction.Info).Should().BeFalse();
            RuleSetInspector.IsBaselineWeakend(RuleAction.None, RuleAction.Info).Should().BeFalse();

            // X -> Hidden
            RuleSetInspector.IsBaselineWeakend(RuleAction.Error, RuleAction.Hidden).Should().BeTrue();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Warning, RuleAction.Hidden).Should().BeTrue();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Info, RuleAction.Hidden).Should().BeTrue();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Hidden, RuleAction.Hidden).Should().BeFalse();
            RuleSetInspector.IsBaselineWeakend(RuleAction.None, RuleAction.Hidden).Should().BeFalse();

            // X -> None
            RuleSetInspector.IsBaselineWeakend(RuleAction.Error, RuleAction.None).Should().BeTrue();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Warning, RuleAction.None).Should().BeTrue();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Info, RuleAction.None).Should().BeTrue();
            RuleSetInspector.IsBaselineWeakend(RuleAction.Hidden, RuleAction.None).Should().BeTrue();
            RuleSetInspector.IsBaselineWeakend(RuleAction.None, RuleAction.None).Should().BeFalse();
        }
Esempio n. 3
0
        public void RuleSetInspector_IsBaselineWeakend()
        {
            // X -> Error
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.Error, RuleAction.Error));
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.Warning, RuleAction.Error));
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.Info, RuleAction.Error));
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.Hidden, RuleAction.Error));
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.None, RuleAction.Error));

            // X -> Warning
            Assert.IsTrue(RuleSetInspector.IsBaselineWeakend(RuleAction.Error, RuleAction.Warning));
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.Warning, RuleAction.Warning));
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.Info, RuleAction.Warning));
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.Hidden, RuleAction.Warning));
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.None, RuleAction.Warning));

            // X -> Info
            Assert.IsTrue(RuleSetInspector.IsBaselineWeakend(RuleAction.Error, RuleAction.Info));
            Assert.IsTrue(RuleSetInspector.IsBaselineWeakend(RuleAction.Warning, RuleAction.Info));
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.Info, RuleAction.Info));
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.Hidden, RuleAction.Info));
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.None, RuleAction.Info));

            // X -> Hidden
            Assert.IsTrue(RuleSetInspector.IsBaselineWeakend(RuleAction.Error, RuleAction.Hidden));
            Assert.IsTrue(RuleSetInspector.IsBaselineWeakend(RuleAction.Warning, RuleAction.Hidden));
            Assert.IsTrue(RuleSetInspector.IsBaselineWeakend(RuleAction.Info, RuleAction.Hidden));
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.Hidden, RuleAction.Hidden));
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.None, RuleAction.Hidden));

            // X -> None
            Assert.IsTrue(RuleSetInspector.IsBaselineWeakend(RuleAction.Error, RuleAction.None));
            Assert.IsTrue(RuleSetInspector.IsBaselineWeakend(RuleAction.Warning, RuleAction.None));
            Assert.IsTrue(RuleSetInspector.IsBaselineWeakend(RuleAction.Info, RuleAction.None));
            Assert.IsTrue(RuleSetInspector.IsBaselineWeakend(RuleAction.Hidden, RuleAction.None));
            Assert.IsFalse(RuleSetInspector.IsBaselineWeakend(RuleAction.None, RuleAction.None));
        }