aboutsummaryrefslogtreecommitdiff
path: root/tests/config.testscript
diff options
context:
space:
mode:
Diffstat (limited to 'tests/config.testscript')
-rw-r--r--tests/config.testscript27
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/config.testscript b/tests/config.testscript
new file mode 100644
index 0000000..bf81799
--- /dev/null
+++ b/tests/config.testscript
@@ -0,0 +1,27 @@
+# file : tests/config.testscript
+# copyright : Copyright (c) 2014-2018 Code Synthesis Ltd
+# license : MIT; see accompanying LICENSE file
+
+# Create an empty configuration that will be copied by subsequent tests and
+# scopes setup commands. The common approach will be that group scopes copy and
+# modify the parent scope configuration as required by the nested tests and
+# scopes. Tests will also clone the parent scope configuration to optionally
+# modify it, use and cleanup at the end. Note that configuration can not be
+# shared between multiple bpkg processes. Also we need to make sure that
+# configurations are not cloned while being used by bpkg.
+#
++$cfg_create -d cfg 2>- &cfg/***
+
+# The most commonly used configuration cloning command that copies it from the
+# parent scope working directory.
+#
+clone_cfg = cp -p -r ../cfg ./
+
+# Clones the original (presumably empty) configuration from the root scope
+# working directory.
+#
+clone_root_cfg = cp -p -r $~/cfg ./
+
+# Setup a test command to use a cloned configuration directory by default.
+#
+test.arguments += -d cfg