public TxSubmission(Hash256 hash, EngineResult engineResult, JObject txJson, JObject resultJson) { Hash = hash; EngineResult = engineResult; TxJson = txJson; ResultJson = resultJson; ExpectedFinalResult = null; }
public static void ExecuteAndVerifyResult(this Process process, ILogger logger, ResultExpectation resultExpectation = ResultExpectation.MustNotFail) { Guard.That(process).IsNotNull(); Guard.That(resultExpectation).IsValidValue(); Guard.That(logger).IsNotNull(); logger.LogDebug("Running process \"{0}\"", process.Options.CommandLine); ProcessResult result = process.Run(); VerifyProcessRan(process, result); VerifyExitCode(process, result, resultExpectation, logger); }
static void VerifyExitCode(this Process command, ProcessResult result, ResultExpectation resultExpectation, ILogger logger) { if (result.ExitCode == SuccessExitCode) return; string message = string.Format("Process \"{0}\" failed, exit code {1}. All output: {2}", command.Options.CommandLine, result.ExitCode, result.AllOutput); if (resultExpectation == ResultExpectation.MustNotFail) throw new Exception(message); logger.LogWarning(message); }
static void VerifyExitCode(this Process command, ProcessResult result, ResultExpectation resultExpectation, ILogger logger) { if (result.ExitCode == SuccessExitCode) { return; } string message = string.Format("Process \"{0}\" failed, exit code {1}. All output: {2}", command.Options.CommandLine, result.ExitCode, result.AllOutput); if (resultExpectation == ResultExpectation.MustNotFail) { throw new Exception(message); } logger.LogWarning(message); }