chiark / gitweb /
test suite: enumerate-tests: Break out gencontrol-add-things
[dgit.git] / tests / enumerate-tests
index 8ee34bec4a354ec9824d098108ccb871c8061e16..c80a35c94c0ba4181be1db87af4bfe2f88043764 100755 (executable)
@@ -45,18 +45,26 @@ test-begin-gencontrol () {
        dependencies='dgit, dgit-infrastructure, devscripts, debhelper (>=8), fakeroot, build-essential, chiark-utils-bin, bc, faketime'
 }
 
+gencontrol-add-things () {
+       local varname=$1; shift
+       local thing
+       eval '
+               for thing in "$@"; do
+                       case " $'$varname'," in
+                       *" "$thing","*) continue ;;
+                       esac
+                       '$varname'+="${'$varname':+, }$thing"
+               done
+       '
+}
+
 restriction-gencontrol () {
        if [ $r = x-dgit-out-of-tree-only ]; then return; fi
        restrictions+=" $r"
 }
 
 gencontrol-add-deps () {
-       for dep in "$@"; do
-               case " $dependencies," in
-               *" "$dep","*)   continue ;;
-               esac
-               dependencies+="${dependencies:+, }$dep"
-       done
+       gencontrol-add-things dependencies "$@"
 }
 
 dependencies-gencontrol () {