blob: e5ecbc62a2ba0d2abc86207029f21262aab2caaf [file] [log] [blame]
// Copyright 2017 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef LIB_INTEGRATION_TESTING_CPP_REPORTING_H_
#define LIB_INTEGRATION_TESTING_CPP_REPORTING_H_
#include <iostream>
#include <fuchsia/testing/runner/cpp/fidl.h>
#include <lib/integration_testing/cpp/testing.h>
#define TEST_PASS(label) std::cerr << "[TEST] PASS: " << (label) << std::endl
#define TEST_FAIL(label) \
{ \
std::cerr << "[TEST] FAIL: " << (label) << std::endl; \
testing::Fail(label); \
}
namespace modular {
namespace testing {
// Helper class to record that a particular condition was reached sometime
// in the life span of an object. If the test point is not marked with Pass()
// by the time the destructor is called, the test point records failure.
class TestPoint {
public:
explicit TestPoint(std::string label);
~TestPoint();
void Pass();
private:
std::string label_;
bool value_{};
};
} // namespace testing
} // namespace modular
#endif // LIB_INTEGRATION_TESTING_CPP_REPORTING_H_