public void ProjectPropertyManager_GetBooleanProperty() { // Arrange var project = new ProjectMock("foo.proj"); ProjectPropertyManager testSubject = this.CreateTestSubject(); // Test case 1: no property -> null // Arrange project.ClearBuildProperty(TestPropertyName); // Act + Assert testSubject.GetBooleanProperty(project, TestPropertyName).Should().BeNull("Expected null for missing property value"); // Test case 2: bad property -> null // Arrange project.SetBuildProperty(TestPropertyName, "NotABool"); // Act + Assert testSubject.GetBooleanProperty(project, TestPropertyName).Should().BeNull("Expected null for bad property value"); // Test case 3: true property -> true // Arrange project.SetBuildProperty(TestPropertyName, true.ToString()); // Act + Assert testSubject.GetBooleanProperty(project, TestPropertyName).Value.Should().BeTrue("Expected true for 'true' property value"); // Test case 4: false property -> false // Arrange project.SetBuildProperty(TestPropertyName, false.ToString()); // Act + Assert testSubject.GetBooleanProperty(project, TestPropertyName).Value.Should().BeFalse("Expected true for 'true' property value"); }
public void ProjectSystemHelper_ClearProjectProperty_PropertyExists_ClearsProperty() { // Arrange ProjectMock project = this.solutionMock.AddOrGetProject("my.proj"); project.SetBuildProperty("myprop", "val"); // Act testSubject.ClearProjectProperty(project, "myprop"); // Assert project.GetBuildProperty("myprop").Should().BeNull("Expected property value to be cleared"); }
public void ProjectSystemHelper_SetProjectProperty_PropertyExists_OverwritesValue() { // Arrange ProjectMock project = this.solutionMock.AddOrGetProject("my.proj"); project.SetBuildProperty("myprop", "oldval"); // Act testSubject.SetProjectProperty(project, "myprop", "newval"); // Assert project.GetBuildProperty("myprop").Should().Be("newval", "Unexpected property value"); }
public void ProjectSystemHelper_GetProjectProperty_PropertyExists_ReturnsValue() { // Arrange ProjectMock project = this.solutionMock.AddOrGetProject("my.proj"); project.SetBuildProperty("myprop", "myval"); // Act var actualValue = testSubject.GetProjectProperty(project, "myprop"); // Assert actualValue.Should().Be("myval", "Unexpected property value"); }
public void ProjectSystemHelper_ClearProjectProperty_PropertyExists_ClearsProperty() { // Setup ProjectMock project = this.solutionMock.AddOrGetProject("my.proj"); project.SetBuildProperty("myprop", "val"); // Act testSubject.ClearProjectProperty(project, "myprop"); // Verify Assert.IsNull(project.GetBuildProperty("myprop"), "Expected property value to be cleared"); }
public void ProjectSystemHelper_SetProjectProperty_PropertyExists_OverwritesValue() { // Setup ProjectMock project = this.solutionMock.AddOrGetProject("my.proj"); project.SetBuildProperty("myprop", "oldval"); // Act testSubject.SetProjectProperty(project, "myprop", "newval"); // Verify Assert.AreEqual("newval", project.GetBuildProperty("myprop"), "Unexpected property value"); }
public void ProjectSystemHelper_GetProjectProperty_PropertyExists_ReturnsValue() { // Setup ProjectMock project = this.solutionMock.AddOrGetProject("my.proj"); project.SetBuildProperty("myprop", "myval"); // Act var actualValue = testSubject.GetProjectProperty(project, "myprop"); // Verify Assert.AreEqual("myval", actualValue, "Unexpected property value"); }
private void CreateProjectAndRuleSet(bool createRuleSet = true, string analyzerId = "SonarAnalyzer.Foo") { var projectPath = Path.GetTempFileName(); var rulesetName = $"{Guid.NewGuid()}.ruleset"; if (createRuleSet) { var ruleset = TestRuleSetHelper.CreateTestRuleSetWithRuleIds(new[] { "S110" }, analyzerId); ruleset.WriteToFile(Path.Combine(Path.GetDirectoryName(projectPath), rulesetName)); } var project = new ProjectMock(projectPath); projectSystemHelper.Projects = new[] { project }; project.SetBuildProperty(Constants.CodeAnalysisRuleSetPropertyKey, rulesetName); this.ruleSetProvider.RegisterProjectInfo(project, new RuleSetDeclaration(project, new PropertyMock("bar", null), rulesetName, "", "")); }
public void ProjectPropertyManager_GetBooleanProperty() { // Setup var project = new ProjectMock("foo.proj"); ProjectPropertyManager testSubject = this.CreateTestSubject(); // Test case 1: no property -> null // Setup project.ClearBuildProperty(TestPropertyName); // Act + Verify Assert.IsNull(testSubject.GetBooleanProperty(project, TestPropertyName), "Expected null for missing property value"); // Test case 2: bad property -> null // Setup project.SetBuildProperty(TestPropertyName, "NotABool"); // Act + Verify Assert.IsNull(testSubject.GetBooleanProperty(project, TestPropertyName), "Expected null for bad property value"); // Test case 3: true property -> true // Setup project.SetBuildProperty(TestPropertyName, true.ToString()); // Act + Verify Assert.IsTrue(testSubject.GetBooleanProperty(project, TestPropertyName).Value, "Expected true for 'true' property value"); // Test case 4: false property -> false // Setup project.SetBuildProperty(TestPropertyName, false.ToString()); // Act + Verify Assert.IsFalse(testSubject.GetBooleanProperty(project, TestPropertyName).Value, "Expected true for 'true' property value"); }