aboutsummaryrefslogtreecommitdiff
path: root/tests/recipe
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2022-09-20 23:00:27 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2022-09-28 17:59:43 +0300
commit744e8215261fbf81b9348d115d4916a9c88b52cc (patch)
tree9b78941d4ea67fefdccca98215b1340dd2dd6c99 /tests/recipe
parente59b4fc15eef3b3d0af5b81190b1e54f270ee2d2 (diff)
Add support for 'while' loop in script
Diffstat (limited to 'tests/recipe')
-rw-r--r--tests/recipe/buildscript/testscript54
1 files changed, 40 insertions, 14 deletions
diff --git a/tests/recipe/buildscript/testscript b/tests/recipe/buildscript/testscript
index 0bf752e..54c3bbe 100644
--- a/tests/recipe/buildscript/testscript
+++ b/tests/recipe/buildscript/testscript
@@ -487,7 +487,7 @@ posix = ($cxx.target.class != 'windows')
: normal
:
{
- cat <<EOI >=bar.h;
+ cat <<EOI >=bar.h;
bar
EOI
@@ -519,23 +519,23 @@ posix = ($cxx.target.class != 'windows')
}}
EOI
- $* 2>>EOE;
+ $* 2>>EOE;
gen h{baz.h}
gen h{foo.h}
EOE
- cat foo.h >>EOO;
- bar
- baz
- EOO
+ cat foo.h >>EOO;
+ bar
+ baz
+ EOO
- $* clean 2>-
+ $* clean 2>-
}
: byproduct
:
{
- cat <<EOI >=bar.h;
+ cat <<EOI >=bar.h;
bar
EOI
@@ -562,17 +562,17 @@ posix = ($cxx.target.class != 'windows')
}}
EOI
- $* 2>>EOE;
+ $* 2>>EOE;
gen h{baz.h}
gen h{foo.h}
EOE
- cat foo.h >>EOO;
- bar
- baz
- EOO
+ cat foo.h >>EOO;
+ bar
+ baz
+ EOO
- $* clean 2>-
+ $* clean 2>-
}
}
}
@@ -885,3 +885,29 @@ if $posix
alias{bar} alias{far}
EOE
}
+
+: flow-control-construct
+:
+{
+ : while
+ :
+ {
+ echo 'bar' >=bar;
+
+ cat <<EOI >=buildfile;
+ foo: bar
+ {{
+ p = $path($>)
+ while test -f $p != 0
+ cp $path($<) $p
+ end
+ }}
+ EOI
+
+ $* 2>'cp file{foo}';
+
+ cat <<<foo >'bar';
+
+ $* clean 2>-
+ }
+}