public void Warnings_LogRuleWasExplicitlyDisabled() { var testLogger = new TestMessageLogger(); var binaryAnalysisContext = new TestAnalysisContext(); binaryAnalysisContext.Logger = testLogger; string ruleId = nameof(ruleId); Warnings.LogRuleExplicitlyDisabled(binaryAnalysisContext, ruleId); testLogger.Messages.Should().BeNull(); testLogger.ToolNotifications.Should().BeNull(); testLogger.ConfigurationNotifications.Count.Should().Equals(1); testLogger.ConfigurationNotifications[0].Descriptor.Id.Should().Equals(ruleId); }
public void Warnings_ObsoleteOption() { var testContext = new Mock <IAnalysisContext>(); var testLogger = new Mock <IAnalysisLogger>(); testLogger.Setup(x => x.LogConfigurationNotification(It.IsAny <Notification>())); testContext.SetupProperty(x => x.RuntimeErrors); testContext.Setup(x => x.Logger).Returns(testLogger.Object); Warnings.LogObsoleteOption(testContext.Object, "testObsoleteOption"); testLogger.Verify(x => x.LogConfigurationNotification(It.IsAny <Notification>()), Times.Once); Assert.Equal(RuntimeConditions.ObsoleteOption, testContext.Object.RuntimeErrors); // We don't verify the specifics of the output string Warnings.LogObsoleteOption(testContext.Object, "testObsoleteOption", "testReplacement"); testLogger.Verify(x => x.LogConfigurationNotification(It.IsAny <Notification>()), Times.Exactly(2)); Assert.Equal(RuntimeConditions.ObsoleteOption, testContext.Object.RuntimeErrors); }