From 632c5f9d4c42a6e408c0565e34b2d1bd428ff018 Mon Sep 17 00:00:00 2001 From: Juha Alanen Date: Fri, 31 Jan 2020 11:52:12 +0200 Subject: [test] Add iOS unit test runner --- test/ios/README.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 test/ios/README.md (limited to 'test/ios/README.md') diff --git a/test/ios/README.md b/test/ios/README.md new file mode 100644 index 0000000000..5b0d1f6a08 --- /dev/null +++ b/test/ios/README.md @@ -0,0 +1,7 @@ +# iOS UnitTestsRunner App + +This is a blank single-view-controller iOS app, linked against to a C++ static libraries, plus a a simple unit xctest. We use CMake to create an Xcode-friendly out-of-source build system. In another word, the build system is maintained by `CMakeLists` file,instead of a configured `.xcodeproj` file. + +This CMake project can build the executable UnitTestsApp which is linked to the static C++ library 'mbgl-test'. CMakeLists.txt files are the only build configuration kept in source control. This is in contrast to committing the `.xcodeproj` directory which includes the backing XML, which is nonsensically hard to edit by hand. + +The test instantiates ObjC object of class `IosTestRunner` from the app, the class will instantiates a C++ object from the linked library `mbgl-test` and calls running unit test function on it. It subsequently deletes the C++ object pointer. In the end, the test will check the existence of test report, which is an xml file that attach to xctest result. -- cgit v1.2.1