aboutsummaryrefslogtreecommitdiff
path: root/tests/new.test
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2018-09-04 14:32:11 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2018-09-04 14:49:21 +0300
commitd1d9fbc899be37bba7b05f31ac5c7a4d15d64811 (patch)
tree99722bfda82125c5ad383917df0af794ff1b9e1f /tests/new.test
parent971b29ac8c45da1659a57421f95d4caa237ee6be (diff)
Rename .test/test{} to .testscript/testscript{}
Diffstat (limited to 'tests/new.test')
-rw-r--r--tests/new.test217
1 files changed, 0 insertions, 217 deletions
diff --git a/tests/new.test b/tests/new.test
deleted file mode 100644
index ec45788..0000000
--- a/tests/new.test
+++ /dev/null
@@ -1,217 +0,0 @@
-# file : tests/new.test
-# copyright : Copyright (c) 2014-2018 Code Synthesis Ltd
-# license : MIT; see accompanying LICENSE file
-
-.include common.test
-
-# Disable nesting checks in the created projects.
-#
-test.arguments += --no-checks
-
-c = config.c="$recall($c.path)"
-cxx = config.cxx="$recall($cxx.path)"
-
-status += -d prj
-
-: no-cfg
-:
-{
- # Disable amalgamation support in the created projects.
- #
- test.arguments += --no-amalgamation
-
- : exe
- :
- {
- $* -t exe -l c++ prj-foo 2>>/"EOE" &prj-foo/***;
- created new executable project prj-foo in $~/prj-foo/
- EOE
-
- $build prj-foo/ $cxx 2>>~%EOE%
- %(c\+\+|ld) .+%{2}
- EOE
- }
-
- : lib
- :
- {
- $* -t lib -l c++ libprj-foo 2>>/"EOE" &libprj-foo/***;
- created new library project libprj-foo in $~/libprj-foo/
- EOE
-
- $build libprj-foo/ $cxx 2>>~%EOE%
- %(version\.in|c\+\+|ar|ld) .+%{7}
- EOE
- }
-
- : exe-unit-tests
- :
- {
- $* -t exe,unit-tests -l c++ foo 2>>/"EOE" &foo/***;
- created new executable project foo in $~/foo/
- EOE
-
- $build foo/ $cxx 2>>~%EOE%
- %(c\+\+|ld|ar) .+%{5}
- EOE
- }
-
- : lib-unit-tests
- :
- {
- $* -t lib,unit-tests -l c++ libfoo 2>>/"EOE" &libfoo/***;
- created new library project libfoo in $~/libfoo/
- EOE
-
- $build libfoo/ $cxx 2>>~%EOE%
- %(version\.in|c\+\+|ar|ld) .+%{11}
- EOE
- }
-
- # C versions of the above.
- #
- : exe-c
- :
- {
- $* -t exe -l c prj-foo 2>>/"EOE" &prj-foo/***;
- created new executable project prj-foo in $~/prj-foo/
- EOE
-
- $build prj-foo/ $c 2>>~%EOE%
- %(c|ld) .+%{2}
- EOE
- }
-
- : exe-c-unit-tests
- :
- {
- $* -t exe,unit-tests -l c foo 2>>/"EOE" &foo/***;
- created new executable project foo in $~/foo/
- EOE
-
- $build foo/ $c 2>>~%EOE%
- %(c|ld|ar) .+%{5}
- EOE
- }
-
- # Our C tests use fmemopen() which is not always available.
- #
-
- : lib-c
- :
- if ($c.target.class != 'windows' && $c.target.class != 'macos')
- {
- $* -t lib -l c libprj-foo 2>>/"EOE" &libprj-foo/***;
- created new library project libprj-foo in $~/libprj-foo/
- EOE
-
- $build libprj-foo/ $c 2>>~%EOE%
- %(version\.in|c|ar|ld) .+%{7}
- EOE
- }
-
- : lib-c-unit-tests
- :
- if ($c.target.class != 'windows' && $c.target.class != 'macos')
- {
- $* -t lib,unit-tests -l c libfoo 2>>/"EOE" &libfoo/***;
- created new library project libfoo in $~/libfoo/
- EOE
-
- $build libfoo/ $c 2>>~%EOE%
- %(version\.in|c|ar|ld) .+%{11}
- EOE
- }
-
- : pkg
- :
- {
- : add
- :
- : Test creating a library as a separate package in the project.
- :
- {
- $* -t empty prj 2>>/"EOE" &prj/***;
- created new empty project prj in $~/prj/
- EOE
-
- $* --package -t lib libprj -d prj 2>>/"EOE";
- created new library package libprj in $~/prj/libprj/
- EOE
-
- $build prj/libprj/ $cxx 2>>~%EOE%
- %(version\.in|c\+\+|ar|ld) .+%{7}
- EOE
- }
-
- : name
- :
- : Test that the package/project name is validated.
- :
- {
- : package
- :
- $* x 2>'error: invalid package name: length is less than two characters' != 0
-
- : project
- :
- : Here we also test that the project name is also validated as a package.
- :
- $* -t empty x 2>'error: invalid project name: length is less than two characters' != 0
-
- : project-derived
- :
- $* -t empty xx &xx/*** 2>>/"EOE";
- created new empty project xx in $~/xx/
- EOE
- mv xx x;
- $* --package pkg -d x 2>>/"EOE"
- warning: project name 'x' is invalid: length is less than two characters
- info: leaving the 'project' manifest value empty
- created new executable package pkg in $~/x/pkg/
- EOE
- }
- }
-}
-
-: cfg
-{
- : dir-and-name
- :
- {
- $* -C prj-config @cfg prj cc $cxx 2>>/~"%EOE%" &prj/*** &prj-config/***;
- created new executable project prj in $~/prj/
- created configuration @cfg $~/prj-config/ 1 default,forwarded,auto-synchronized
- synchronizing:
- % new prj.+19700101000000%
- EOE
-
- $status >'prj configured 0.1.0-a.0.19700101000000';
-
- $build prj/ 2>>~%EOE%
- %(mkdir|c\+\+|ld|ln) .+%{4}
- EOE
- }
-
- : name
- :
- : Test deducing the configuration directory path from the project source
- : directory path and the configuration name. Here we also use the
- : dash-prefixed name (as in Windows PowerShell where the leading '@'
- : character is special).
- :
- {
- $* -C -@cfg prj cc $cxx 2>>/~"%EOE%" &prj/*** &prj-cfg/***;
- created new executable project prj in $~/prj/
- created configuration @cfg $~/prj-cfg/ 1 default,forwarded,auto-synchronized
- synchronizing:
- % new prj.+19700101000000%
- EOE
-
- $status >'prj configured 0.1.0-a.0.19700101000000';
-
- $build prj/ 2>>~%EOE%
- %(mkdir|c\+\+|ld|ln) .+%{4}
- EOE
- }
-}