summaryrefslogtreecommitdiffstats
path: root/ipc/ipdl/test/cxx/app
diff options
context:
space:
mode:
Diffstat (limited to 'ipc/ipdl/test/cxx/app')
-rw-r--r--ipc/ipdl/test/cxx/app/TestIPDL.cpp24
-rw-r--r--ipc/ipdl/test/cxx/app/moz.build20
2 files changed, 44 insertions, 0 deletions
diff --git a/ipc/ipdl/test/cxx/app/TestIPDL.cpp b/ipc/ipdl/test/cxx/app/TestIPDL.cpp
new file mode 100644
index 0000000000..3891aead62
--- /dev/null
+++ b/ipc/ipdl/test/cxx/app/TestIPDL.cpp
@@ -0,0 +1,24 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+#define MOZ_IPDL_TESTS
+#include "mozilla/Bootstrap.h"
+
+#if defined(XP_WIN)
+# include <windows.h>
+# include "nsWindowsWMain.cpp"
+#endif
+
+using namespace mozilla;
+
+int main(int argc, char** argv) {
+ // the first argument specifies which IPDL test case/suite to load
+ if (argc < 2) return 1;
+
+ Bootstrap::UniquePtr bootstrap = GetBootstrap();
+ if (!bootstrap) {
+ return 2;
+ }
+ return bootstrap->XRE_RunIPDLTest(argc, argv);
+}
diff --git a/ipc/ipdl/test/cxx/app/moz.build b/ipc/ipdl/test/cxx/app/moz.build
new file mode 100644
index 0000000000..909360062a
--- /dev/null
+++ b/ipc/ipdl/test/cxx/app/moz.build
@@ -0,0 +1,20 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+GeckoProgram("ipdlunittest", linkage="dependent")
+
+SOURCES += [
+ "TestIPDL.cpp",
+]
+include("/ipc/chromium/chromium-config.mozbuild")
+
+LOCAL_INCLUDES += [
+ "/toolkit/xre",
+ "/xpcom/base",
+]
+
+if CONFIG["CC_TYPE"] == "clang-cl":
+ WIN32_EXE_LDFLAGS += ["-ENTRY:wmainCRTStartup"]