# file : tests/status.test # copyright : Copyright (c) 2014-2018 Code Synthesis Ltd # license : MIT; see accompanying LICENSE file .include common.test project.test cxx = cc "config.cxx=$config.cxx" new += 2>! init += $cxx -d prj 2>! sync += -d prj 2>! deinit += -d prj : no-cfg : { $clone_prj; $* 2>>/"EOE" != 0 error: no default configuration in project $~/prj/ info: use \(@ | --config|-c | --all|-a\) to specify configuration explicitly EOE } : single-cfg : { $clone_prj; $init -C @cfg &prj-cfg/***; $* >~'%prj configured 0\.1\.0-a\.0\..+%'; $deinit 2>>/"EOE" deinitializing in project $~/prj/ synchronizing: drop prj EOE } : multi-cfg : { $clone_prj; $init -C @cfg1 &prj-cfg1/***; $init -C @cfg2 &prj-cfg2/***; $* @cfg2 >~'%prj configured 0\.1\.0-a\.0\..+%'; $* --all >>~%EOO%; in configuration @cfg1: %prj configured 0\.1\.0-a\.0\..+% in configuration @cfg2: %prj configured 0\.1\.0-a\.0\..+% EOO $deinit 2>>/"EOE" deinitializing in project $~/prj/ synchronizing: drop prj EOE } : dependency : { $clone_prj; $init -C @cfg &prj-cfg/***; $new -t lib libprj &libprj/***; cat <+prj/repositories.manifest; : role: prerequisite location: ../libprj type: dir EOI cat <+prj/manifest; depends: libprj EOI $* --recursive >>~%EOO% 2>>/"EOE"; # Note: implicitly fetches in cfg. %prj configured 0\.1\.0-a\.0\..+ available 0\.1\.0-a\.0\..+#1% EOO fetching dir:$~/libprj \(prerequisite of dir:$~/prj\) EOE $sync; $* --recursive >>~%EOO%; %prj configured 0\.1\.0-a\.0\..+#1% % libprj configured 0.+% EOO $deinit 2>>/"EOE" deinitializing in project $~/prj/ synchronizing: drop prj drop libprj EOE }