public void ToStringSerialisesAllValues() { DiagnoseSecurityResponse response = new DiagnoseSecurityResponse(); response.ErrorMessages.Add(new ErrorMessage("Error 1")); response.ErrorMessages.Add(new ErrorMessage("Error 2")); response.RequestIdentifier = "request"; response.Result = ResponseResult.Success; response.Timestamp = DateTime.Now; SecurityCheckDiagnostics diagnostics = new SecurityCheckDiagnostics(); diagnostics.IsAllowed = true; diagnostics.Permission = "testing"; diagnostics.Project = "test project"; diagnostics.User = "******"; response.Diagnostics.Add(diagnostics); string actual = response.ToString(); string expected = string.Format(System.Globalization.CultureInfo.CurrentCulture, "<diagnoseSecurityResponse xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" " + "timestamp=\"{2:yyyy-MM-ddTHH:mm:ss.FFFFFFFzzz}\" identifier=\"{0}\" result=\"{1}\">" + "<error>Error 1</error>" + "<error>Error 2</error>" + "<diagnosis permission=\"testing\" project=\"test project\" " + "user=\"test user\" allowed=\"true\" />" + "</diagnoseSecurityResponse>", response.RequestIdentifier, response.Result, response.Timestamp); XDocument.Parse(actual).Should().BeEquivalentTo(XDocument.Parse(expected)); }
public void InitialiseResponseFromRequestSetsTheDefaultValues() { DateTime now = DateTime.Now; ServerRequest request = new ServerRequest(); DiagnoseSecurityResponse response = new DiagnoseSecurityResponse(request); Assert.AreEqual(ResponseResult.Unknown, response.Result, "Result wasn't set to failure"); Assert.AreEqual(request.Identifier, response.RequestIdentifier, "RequestIdentifier wasn't set to the identifier of the request"); Assert.IsTrue((now <= response.Timestamp), "Timestamp was not set"); }
public void DiagnoseSecurityPermissions() { DiagnoseSecurityResponse response = new DiagnoseSecurityResponse(); response.Result = ResponseResult.Success; CruiseServerClient client = new CruiseServerClient( new ServerStub("DiagnoseSecurityPermissions", typeof(DiagnoseSecurityRequest), null, response)); client.DiagnoseSecurityPermissions("johnDoe"); }
public void ToStringSerialisesDefaultValues() { DiagnoseSecurityResponse response = new DiagnoseSecurityResponse(); string actual = response.ToString(); string expected = string.Format(System.Globalization.CultureInfo.CurrentCulture, "<diagnoseSecurityResponse xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" " + "timestamp=\"{1:yyyy-MM-ddTHH:mm:ss.FFFFFFFzzz}\" result=\"{0}\" />", response.Result, response.Timestamp); XDocument.Parse(actual).Should().BeEquivalentTo(XDocument.Parse(expected)); }
public void InitialiseNewResponseSetsTheDefaultValues() { DateTime now = DateTime.Now; DiagnoseSecurityResponse response = new DiagnoseSecurityResponse(); Assert.AreEqual(ResponseResult.Unknown, response.Result, "Result wasn't set to failure"); Assert.IsTrue((now <= response.Timestamp), "Timestamp was not set"); var diagnostics = new List <SecurityCheckDiagnostics>(); response.Diagnostics = diagnostics; Assert.AreSame(diagnostics, response.Diagnostics); }
public void InitialiseResponseFromResponseSetsTheDefaultValues() { DateTime now = DateTime.Now; DiagnoseSecurityResponse response1 = new DiagnoseSecurityResponse(); response1.Result = ResponseResult.Success; response1.RequestIdentifier = "original id"; response1.Timestamp = DateTime.Now.AddMinutes(-1); DiagnoseSecurityResponse response2 = new DiagnoseSecurityResponse(response1); Assert.AreEqual(ResponseResult.Success, response2.Result, "Result wasn't set to failure"); Assert.AreEqual("original id", response2.RequestIdentifier, "RequestIdentifier wasn't set to the identifier of the request"); Assert.IsTrue((response1.Timestamp == response2.Timestamp), "Timestamp was not set"); }
/// <summary> /// Checks the security permissions for a user against one or more projects. /// </summary> /// <returns>A set of diagnostics information.</returns> public override List <SecurityCheckDiagnostics> DiagnoseSecurityPermissions(string userName, params string[] projects) { DiagnoseSecurityRequest request = new DiagnoseSecurityRequest(); request.SessionToken = SessionToken; request.ServerName = TargetServer; request.UserName = userName; request.ServerName = TargetServer; if (projects != null) { request.Projects.AddRange(projects); } DiagnoseSecurityResponse resp = ValidateResponse( connection.SendMessage("DiagnoseSecurityPermissions", request)) as DiagnoseSecurityResponse; return(resp.Diagnostics); }