summaryrefslogtreecommitdiff
path: root/test/ios/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'test/ios/README.md')
-rw-r--r--test/ios/README.md7
1 files changed, 7 insertions, 0 deletions
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.