public static void Verify(APICallLogBuilder callLogBuilder, AstoriaResponse response, Func <APICallLogEntry, APICallLogEntry, bool> compare, params ComplexType[] types) { if (!AstoriaTestProperties.IsLabRun) { StringBuilder builder = new StringBuilder(); builder.AppendLine("------------------------------------"); builder.AppendLine(""); builder.AppendLine("Verifying call order"); builder.AppendLine(""); if (types.Length > 0) { builder.AppendLine("Metadata:"); WriteTypesToLog(builder, types); builder.AppendLine(""); } builder.AppendLine("Request:"); response.Request.LogRequest(builder, true, true); builder.AppendLine(""); builder.AppendLine("Response:"); response.LogResponse(builder, true, true); builder.AppendLine(""); AstoriaTestLog.WriteLineIgnore(builder.ToString()); } try { Verify(callLogBuilder.Entries, response.Request.APICallLogEntries, compare); } catch (Exception ex) { if (types.Length > 0) { StringBuilder builder = new StringBuilder(); builder.AppendLine("Metadata:"); WriteTypesToLog(builder, types); builder.AppendLine(""); AstoriaTestLog.WriteLineIgnore(builder.ToString()); } ResponseVerification.LogFailure(response, ex); } }
public static void Verify(APICallLogBuilder callLogBuilder, AstoriaResponse response, Func<APICallLogEntry, APICallLogEntry, bool> compare, params ComplexType[] types) { if (!AstoriaTestProperties.IsLabRun) { StringBuilder builder = new StringBuilder(); builder.AppendLine("------------------------------------"); builder.AppendLine(""); builder.AppendLine("Verifying call order"); builder.AppendLine(""); if(types.Length > 0) { builder.AppendLine("Metadata:"); WriteTypesToLog(builder, types); builder.AppendLine(""); } builder.AppendLine("Request:"); response.Request.LogRequest(builder, true, true); builder.AppendLine(""); builder.AppendLine("Response:"); response.LogResponse(builder, true, true); builder.AppendLine(""); AstoriaTestLog.WriteLineIgnore(builder.ToString()); } try { Verify(callLogBuilder.Entries, response.Request.APICallLogEntries, compare); } catch (Exception ex) { if (types.Length > 0) { StringBuilder builder = new StringBuilder(); builder.AppendLine("Metadata:"); WriteTypesToLog(builder, types); builder.AppendLine(""); AstoriaTestLog.WriteLineIgnore(builder.ToString()); } ResponseVerification.LogFailure(response, ex); } }
public static void LogFailure(AstoriaResponse response, Exception ex, bool shouldThrow) { StringBuilder builder = new StringBuilder(); builder.AppendLine("Response verification failed"); builder.AppendLine("----------------------------------------"); response.Request.LogRequest(builder, true, true); builder.AppendLine("----------------------------------------"); response.LogResponse(builder, true, true); builder.AppendLine("----------------------------------------"); string log = builder.ToString(); ex = new TestFailedException(log, null, null, ex); if (shouldThrow) { throw ex; } else { AstoriaTestLog.FailAndContinue(ex); } }
public static void LogFailure(AstoriaResponse response, Exception ex, bool shouldThrow) { StringBuilder builder = new StringBuilder(); builder.AppendLine("Response verification failed"); builder.AppendLine("----------------------------------------"); response.Request.LogRequest(builder, true, true); builder.AppendLine("----------------------------------------"); response.LogResponse(builder, true, true); builder.AppendLine("----------------------------------------"); string log = builder.ToString(); ex = new TestFailedException(log, null, null, ex); if (shouldThrow) throw ex; else AstoriaTestLog.FailAndContinue(ex); }