summaryrefslogtreecommitdiffstats
path: root/sal/test/bootstrap
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:06:44 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:06:44 +0000
commited5640d8b587fbcfed7dd7967f3de04b37a76f26 (patch)
tree7a5f7c6c9d02226d7471cb3cc8fbbf631b415303 /sal/test/bootstrap
parentInitial commit. (diff)
downloadlibreoffice-upstream.tar.xz
libreoffice-upstream.zip
Adding upstream version 4:7.4.7.upstream/4%7.4.7upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'sal/test/bootstrap')
-rw-r--r--sal/test/bootstrap82
1 files changed, 82 insertions, 0 deletions
diff --git a/sal/test/bootstrap b/sal/test/bootstrap
new file mode 100644
index 000000000..c12ef1922
--- /dev/null
+++ b/sal/test/bootstrap
@@ -0,0 +1,82 @@
+#/bin/tcsh
+#
+# 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/.
+#
+# This file incorporates work covered by the following license notice:
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
+#
+
+setenv MYBOOTSTRAPTESTVALUE 0
+echo 1
+./testbootstrap 1 -env:MYBOOTSTRAPTESTVALUE=1
+
+echo 2
+./testbootstrap.bin file
+
+echo 3
+./testbootstrap.Bin file
+
+echo 4
+./testbootstrap.exe file
+
+echo 5
+./testbootstrap.Exe file
+
+echo 6
+./testbootstrap 0 -env:INIFILENAME=
+
+unsetenv MYBOOTSTRAPTESTVALUE
+echo 7
+./testbootstrap default -env:INIFILENAME=
+
+echo 8
+./testbootstrap default -env:MYBOOTSTRAPTESTVALUE2=1 -env:INIFILENAME=
+
+echo
+echo "macro tests"
+echo
+
+# simple macro expansion
+echo 9
+./testbootstrap _first_second_third_ -env:FIRST=first -env:SECOND=second -env:THIRD=third -env:MYBOOTSTRAPTESTVALUE='_${FIRST}_${SECOND}_${THIRD}_'
+
+# simple quoting
+echo 10
+./testbootstrap '_${FIRST}_${SECOND}_${THIRD}_' -env:FIRST=first -env:SECOND=second -env:THIRD=third -env:MYBOOTSTRAPTESTVALUE='_\$\{FIRST\}_\$\{SECOND\}_\$\{THIRD\}_'
+
+# simple ini access
+echo 11
+./testbootstrap TheKeysValue -env:'MYBOOTSTRAPTESTVALUE=${./bootstraptest.ini:TheSection:TheKey}'
+
+# ini access with simple macro expansion
+echo 12
+./testbootstrap TheKeysValue -env:ININAME=./bootstraptest.ini -env:SECTIONNAME=TheSection -env:KEYNAME=TheKey \
+ -env:'MYBOOTSTRAPTESTVALUE=${$ININAME:$SECTIONNAME:$KEYNAME}'
+
+# ini access with complex macro expansion
+echo 13
+./testbootstrap TheKeysValue -env:ININAME=./bootstraptest.ini \
+ -env:'MYBOOTSTRAPTESTVALUE=${$ININAME:${$ININAME:SecondSection:IndirectSection}:${$ININAME:SecondSection:IndirectKey}}'
+
+# test no infinite recursion
+echo 14
+./testbootstrap "***RECURSION DETECTED***" -env:'MYBOOTSTRAPTESTVALUE=$MYBOOTSTRAPTESTVALUE'
+
+# test unicode
+echo 15
+./testbootstrap AAABBBCCC000 -env:'MYBOOTSTRAPTESTVALUE=\u0041\u0041\u0041\u0042\u0042\u0042\u0043\u0043\u0043\u0030\u0030\u0030'
+
+echo
+echo "bootstrap test finished"
+echo