From 85844b86cc25be69bf9db365dec8f9bf915a7f51 Mon Sep 17 00:00:00 2001 From: Christoph Borchert Date: Tue, 19 Apr 2016 15:10:43 +0200 Subject: [PATCH] ecos_kernel_test: compare serial output for coptermock benchmark Change-Id: Ic4f13035d55c811bda7fa020114141b816a11ed8 --- src/experiments/ecos_kernel_test/experiment.cc | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/experiments/ecos_kernel_test/experiment.cc b/src/experiments/ecos_kernel_test/experiment.cc index cb1cd657..5b0b50e4 100644 --- a/src/experiments/ecos_kernel_test/experiment.cc +++ b/src/experiments/ecos_kernel_test/experiment.cc @@ -768,6 +768,19 @@ bool EcosKernelTestExperiment::faultInjection() { bool output_correct; if (m_variant != "mibench") { output_correct = ecos_test_passed && !ecos_test_failed; + + if (m_benchmark == "coptermock") { + std::vector serial_correct = loadFile(filename_serial(m_variant, m_benchmark)); + if (serial_correct.size() == 0) { + log << "sanity check failed, golden run should have had output" << endl; + simulator.terminate(0); + } + std::string serial_actual = sol.getOutput(); + if (serial_actual.size() != serial_correct.size() || + !equal(serial_actual.begin(), serial_actual.end(), serial_correct.begin())) { + output_correct = false; + } + } log << "Ecos Test " << (output_correct ? "PASS" : "FAIL") << endl; } else { std::vector serial_correct = loadFile(filename_serial(m_variant, m_benchmark));