From d712f69f5f769c5eaada3c1f76419abfb7b6f7ed Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Mon, 10 Feb 2020 22:09:59 +0300 Subject: Add builtins support for $process.run*() functions --- tests/function/process/testscript | 144 +++++++++++++++++++++++++++++++++----- 1 file changed, 128 insertions(+), 16 deletions(-) (limited to 'tests/function') diff --git a/tests/function/process/testscript b/tests/function/process/testscript index eaa8e2e..1da733d 100644 --- a/tests/function/process/testscript +++ b/tests/function/process/testscript @@ -5,25 +5,137 @@ : run : -$* <>~/EOO/ -print $process.run($build.path --version) -EOI -/build2 .+/ -/.+/* -EOO +{ + : process + : + { + $* <>~/EOO/ + print $process.run($build.path --version) + EOI + /build2 .+/ + /.+/* + EOO + } + + : bultin + : + { + echo 'abc' >=f; + + $* <>EOO + print $process.run(sed -e 's/abc/xyz/' f) + EOI + xyz + EOO + } + + : escape-bultin + : + if ($cxx.target.class == 'linux') + { + cat <=f; + a + + + b + EOI + + $* <>EOO + print $process.run(^cat --squeeze-blank f) + EOI + a + + b + EOO + } +} : run-regex-match : -$* <>~/EOO/ -print $process.run_regex($build.path --version, 'build2 .+') -EOI -/build2 .+/ -EOO +{ + : process + : + { + : success + : + { + $* <>~/EOO/ + print $process.run_regex($build.path --version, 'build2 .+') + EOI + /build2 .+/ + EOO + } + + : failure + : + { + $* <>~/EOE/ != 0 + print $process.run_regex($build.path --version, 'build2 (.+') + EOI + /error: invalid argument: invalid regex .+/ + /.+ + EOE + } + } + + : builtin + : + { + : success + : + { + cat <=f; + 123 + abc + EOI + + $* <>EOO + print $process.run_regex(cat f, 'a.+') + EOI + abc + EOO + } + + : failure + : + { + echo 'a' >=f; + + $* <>~/EOE/ != 0 + print $process.run_regex(cat f, 'a(.+') + EOI + /error: invalid argument: invalid regex .+/ + /.+ + EOE + } + } +} : run-regex-replace : -$* <>~/EOO/ -print $process.run_regex($build.path --version, 'build2 ([0-9.]+).*', '\1') -EOI -/[0-9]+.[0-9]+.[0-9]+/d -EOO +{ + : process + : + { + $* <>~/EOO/ + print $process.run_regex($build.path --version, 'build2 ([0-9.]+).*', '\1') + EOI + /[0-9]+.[0-9]+.[0-9]+/d + EOO + } + + : builtin + : + { + cat <=f; + 123 + abc + EOI + + $* <>EOO + print $process.run_regex(cat f, 'a(.+)', 'x\1') + EOI + xbc + EOO + } +} -- cgit v1.1