[build] Make test/util.hpp a public interface
We will build the tests as a library and platforms will provide the test runner.
This commit is contained in:
78
test/include/mbgl/test/util.hpp
Normal file
78
test/include/mbgl/test/util.hpp
Normal file
@@ -0,0 +1,78 @@
|
||||
#pragma once
|
||||
|
||||
#ifdef __APPLE__
|
||||
#include <TargetConditionals.h>
|
||||
#endif
|
||||
|
||||
#if ANDROID
|
||||
#define TEST_READ_ONLY 0
|
||||
#undef TEST_HAS_SERVER
|
||||
#define TEST_HAS_SERVER 0
|
||||
#elif TARGET_OS_IOS
|
||||
#define TEST_READ_ONLY 1
|
||||
#undef TEST_HAS_SERVER
|
||||
#define TEST_HAS_SERVER 0
|
||||
#else
|
||||
#define TEST_READ_ONLY 0
|
||||
#ifndef TEST_HAS_SERVER
|
||||
#define TEST_HAS_SERVER 1
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if TARGET_OS_SIMULATOR
|
||||
#define TEST_IS_SIMULATOR 1
|
||||
#else
|
||||
#define TEST_IS_SIMULATOR 0
|
||||
#endif
|
||||
|
||||
#if !TEST_IS_SIMULATOR && !CI_BUILD
|
||||
#define TEST_REQUIRES_ACCURATE_TIMING(name) name
|
||||
#else
|
||||
#define TEST_REQUIRES_ACCURATE_TIMING(name) DISABLED_ ## name
|
||||
#endif
|
||||
|
||||
#if !TEST_READ_ONLY
|
||||
#define TEST_REQUIRES_WRITE(name) name
|
||||
#else
|
||||
#define TEST_REQUIRES_WRITE(name) DISABLED_ ## name
|
||||
#endif
|
||||
|
||||
#if TEST_HAS_SERVER
|
||||
#define TEST_REQUIRES_SERVER(name) name
|
||||
#else
|
||||
#define TEST_REQUIRES_SERVER(name) DISABLED_ ## name
|
||||
#endif
|
||||
|
||||
#if !CI_BUILD
|
||||
#define TEST_DISABLED_ON_CI(name) name
|
||||
#else
|
||||
#define TEST_DISABLED_ON_CI(name) DISABLED_ ## name
|
||||
#endif
|
||||
|
||||
#include <mbgl/util/image.hpp>
|
||||
#include <mbgl/util/chrono.hpp>
|
||||
|
||||
#include <cstdint>
|
||||
#include <memory>
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
namespace mbgl {
|
||||
namespace test {
|
||||
|
||||
class Server {
|
||||
public:
|
||||
Server(const char* script);
|
||||
~Server();
|
||||
|
||||
private:
|
||||
int fd = -1;
|
||||
};
|
||||
|
||||
void checkImage(const std::string& base,
|
||||
const PremultipliedImage& actual,
|
||||
double imageThreshold = 0,
|
||||
double pixelThreshold = 0);
|
||||
|
||||
} // namespace test
|
||||
} // namespace mbgl
|
||||
Reference in New Issue
Block a user