public void BadSSLTests(string uri, SecurityCheckState expected) { var pipeline = new SecurityCheckPipeline(new[] { CreateSecurityCheck() }); var result = pipeline.Run(new System.Uri(uri)); Assert.Equal(expected, result.First().SecurityCheckResult.State); }
protected void AssertSecurityCheckStateWhenNoHeaderIsSet(string headerName, SecurityCheckState securityCheckState = SecurityCheckState.Bad) { var securityCheck = CreateSecurityCheck(); var response = CreateResponseMessage(); var result = securityCheck.Check(response); Assert.True(result.State == securityCheckState, $"{nameof(securityCheckState)}:{result.State}"); }
public void NoCertificateError(SslPolicyErrors sslPolicyErrors, SecurityCheckState expected) { var response = CreateResponseMessage(); AddServerCertificateInfo(response, sslPolicyErrors); var result = RunCheck(response); Assert.Equal(expected, result.State); }
protected void AssertSecurityCheckState(string headerName, string value, SecurityCheckState securityCheckState) { var securityCheck = CreateSecurityCheck(); var response = CreateResponseMessage(); response.Headers.Add(headerName, value); var result = securityCheck.Check(response); Assert.True(result.State == securityCheckState, $"{nameof(securityCheckState)}:{result.State}"); }
protected string GetText(SecurityCheckState securityCheckState) { switch (securityCheckState) { case SecurityCheckState.None: return("None"); case SecurityCheckState.Skipped: return("Skipped"); case SecurityCheckState.Bad: return("Bad"); case SecurityCheckState.Good: return("Good"); case SecurityCheckState.Best: return("Best Practice"); default: throw new ArgumentOutOfRangeException(); } }
private (string Text, ConsoleColor Color) GetTextAndColor(SecurityCheckState securityCheckState) { switch (securityCheckState) { case SecurityCheckState.None: return(GetText(securityCheckState), Console.ForegroundColor); case SecurityCheckState.Skipped: return(GetText(securityCheckState), ConsoleColor.Blue); case SecurityCheckState.Bad: return(GetText(securityCheckState), ConsoleColor.Red); case SecurityCheckState.Good: return(GetText(securityCheckState), ConsoleColor.Green); case SecurityCheckState.Best: return(GetText(securityCheckState), ConsoleColor.Green); default: throw new ArgumentOutOfRangeException(); } }
public void CheckValue(string value, SecurityCheckState securityCheckState) { AssertSecurityCheckState(HeaderName, value, securityCheckState); }
public void CheckState(bool https, SecurityCheckState expectedSecurityCheckState) { var result = RunCheck(https); Assert.Equal(expectedSecurityCheckState, result.State); }
public HeaderValueCheck(SecurityCheckState securityCheckState, Predicate <string> when, string recommendation = "") { _when = when; SecurityCheckState = securityCheckState; Recommendation = recommendation; }
private SecurityCheckResult(SecurityCheckState state, string recommandation, string value = "") { State = state; Recommandation = recommandation; Value = value; }
public static SecurityCheckResult Create(SecurityCheckState state, string recommandation = "", string value = "") => new SecurityCheckResult(state, recommandation, value);