summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/source/bootstrapfixture.cxx4
-rw-r--r--test/source/isheadless.hxx36
-rw-r--r--test/source/vclbootstrapprotector.cxx4
3 files changed, 42 insertions, 2 deletions
diff --git a/test/source/bootstrapfixture.cxx b/test/source/bootstrapfixture.cxx
index fe0a1ea81f2e..ac30e5c3f3cf 100644
--- a/test/source/bootstrapfixture.cxx
+++ b/test/source/bootstrapfixture.cxx
@@ -30,6 +30,8 @@
#include <osl/file.hxx>
#include <unotools/tempfile.hxx>
+#include <isheadless.hxx>
+
#include <boost/scoped_array.hpp>
#include <cstring>
@@ -100,7 +102,7 @@ SAL_DLLPUBLIC_EXPORT void test_init(lang::XMultiServiceFactory *pFactory)
LanguageTag::setConfiguredSystemLanguage(LANGUAGE_ENGLISH_US);
InitVCL();
- if (Application::IsHeadlessModeRequested())
+ if (test::isHeadless())
Application::EnableHeadlessMode(true);
test_init_impl(false, true, pFactory);
diff --git a/test/source/isheadless.hxx b/test/source/isheadless.hxx
new file mode 100644
index 000000000000..79ff330c69bf
--- /dev/null
+++ b/test/source/isheadless.hxx
@@ -0,0 +1,36 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * 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/.
+ */
+
+#ifndef INCLUDED_TEST_SOURCE_ISHEADLESS_HXX
+#define INCLUDED_TEST_SOURCE_ISHEADLESS_HXX
+
+#include <sal/config.h>
+
+#include <rtl/process.h>
+#include <sal/types.h>
+
+namespace test {
+
+inline bool isHeadless() {
+ sal_uInt32 n = rtl_getAppCommandArgCount();
+ for (sal_uInt32 i = 0; i != n; ++i) {
+ OUString arg;
+ rtl_getAppCommandArg(i, &arg.pData);
+ if (arg == "--headless") {
+ return true;
+ }
+ }
+ return false;
+}
+
+}
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/test/source/vclbootstrapprotector.cxx b/test/source/vclbootstrapprotector.cxx
index a7f7da2ad1f6..b15ed9651a52 100644
--- a/test/source/vclbootstrapprotector.cxx
+++ b/test/source/vclbootstrapprotector.cxx
@@ -25,6 +25,8 @@
#include <unotools/syslocaleoptions.hxx>
#include <vcl/svapp.hxx>
+#include <isheadless.hxx>
+
namespace {
class Protector: public CppUnit::Protector, private boost::noncopyable {
@@ -38,7 +40,7 @@ public:
MsLangId::setConfiguredSystemUILanguage(LANGUAGE_ENGLISH_US);
LanguageTag::setConfiguredSystemLanguage(LANGUAGE_ENGLISH_US);
InitVCL();
- if (Application::IsHeadlessModeRequested()) {
+ if (test::isHeadless()) {
Application::EnableHeadlessMode(true);
}
Application::setDeInitHook(STATIC_LINK(this, Protector, deinitHook));