1# This file is part of GNU Rush. 2# Copyright (C) 2016-2019 Sergey Poznyakoff 3# 4# GNU Rush is free software; you can redistribute it and/or modify 5# it under the terms of the GNU General Public License as published by 6# the Free Software Foundation; either version 3, or (at your option) 7# any later version. 8# 9# GNU Rush is distributed in the hope that it will be useful, 10# but WITHOUT ANY WARRANTY; without even the implied warranty of 11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12# GNU General Public License for more details. 13# 14# You should have received a copy of the GNU General Public License 15# along with GNU Rush. If not, see <http://www.gnu.org/licenses/>. 16 17AT_SETUP([env]) 18AT_KEYWORDS([env]) 19 20AT_RUSH_TEST([ 21rule 22 env - 23], 24[environ], 25[command], 26[0], 27[{ 28 "environ":[[]] 29} 30], 31[rush: Notice: parsing legacy configuration file test.conf 32]) 33 34m4_pushdef([RUSH_ENVIRON],[-i HOME=$PWD USER=$MY_USER LOGIN=$MY_USER]) 35AT_RUSH_TEST([ 36rule 37 env -LOGIN 38], 39[environ], 40[command], 41[0], 42[{ 43 "environ":[[ 44 "HOME=$TESTDIR", 45 "USER=$MY_USER" 46 ]] 47} 48], 49[rush: Notice: parsing legacy configuration file test.conf 50]) 51 52AT_RUSH_TEST([ 53rule 54 env -LOGIN=$MY_USER 55], 56[environ], 57[command], 58[0], 59[{ 60 "environ":[[ 61 "HOME=$TESTDIR", 62 "USER=$MY_USER" 63 ]] 64} 65], 66[rush: Notice: parsing legacy configuration file test.conf 67]) 68m4_popdef([RUSH_ENVIRON]) 69 70m4_pushdef([RUSH_ENVIRON],[-i HOME=$PWD USER=$MY_USER LOGIN=NO_$MY_USER]) 71AT_RUSH_TEST([ 72rule 73 env -LOGIN=$MY_USER 74], 75[environ], 76[command], 77[0], 78[{ 79 "environ":[[ 80 "HOME=$TESTDIR", 81 "LOGIN=NO_$MY_USER", 82 "USER=$MY_USER" 83 ]] 84} 85], 86[rush: Notice: parsing legacy configuration file test.conf 87]) 88m4_popdef([RUSH_ENVIRON]) 89 90m4_pushdef([RUSH_ENVIRON],[-i HOME=$PWD USER=$MY_USER LOGIN=NO_$MY_USER PATH=$PATH]) 91AT_RUSH_TEST([ 92rule 93 env - HOME USER 94], 95[environ], 96[command], 97[0], 98[{ 99 "environ":[[ 100 "HOME=$TESTDIR", 101 "USER=$MY_USER" 102 ]] 103} 104], 105[rush: Notice: parsing legacy configuration file test.conf 106]) 107m4_popdef([RUSH_ENVIRON]) 108 109m4_pushdef([RUSH_ENVIRON],[-i HOME=$PWD USER=$MY_USER]) 110AT_RUSH_TEST([ 111rule 112 env NEWVAR=foo 113], 114[environ], 115[command], 116[0], 117[{ 118 "environ":[[ 119 "HOME=$TESTDIR", 120 "NEWVAR=foo", 121 "USER=$MY_USER" 122 ]] 123} 124], 125[rush: Notice: parsing legacy configuration file test.conf 126]) 127m4_popdef([RUSH_ENVIRON]) 128 129m4_pushdef([RUSH_ENVIRON],[-i]) 130AT_RUSH_TEST([ 131rule 132 env MYPATH+=:/usr/local/bin 133], 134[environ], 135[command], 136[0], 137[{ 138 "environ":[[ 139 "MYPATH=/usr/local/bin" 140 ]] 141} 142], 143[rush: Notice: parsing legacy configuration file test.conf 144]) 145m4_popdef([RUSH_ENVIRON]) 146 147m4_pushdef([RUSH_ENVIRON],[-i MYPATH=/bin:/usr/bin]) 148AT_RUSH_TEST([ 149rule 150 env MYPATH+=:/usr/local/bin 151], 152[environ], 153[command], 154[0], 155[{ 156 "environ":[[ 157 "MYPATH=/bin:/usr/bin:/usr/local/bin" 158 ]] 159} 160], 161[rush: Notice: parsing legacy configuration file test.conf 162]) 163m4_popdef([RUSH_ENVIRON]) 164 165m4_pushdef([RUSH_ENVIRON],[-i]) 166AT_RUSH_TEST([ 167rule 168 env MYPATH=+/usr/local/bin: 169], 170[environ], 171[command], 172[0], 173[{ 174 "environ":[[ 175 "MYPATH=/usr/local/bin" 176 ]] 177} 178], 179[rush: Notice: parsing legacy configuration file test.conf 180]) 181m4_popdef([RUSH_ENVIRON]) 182 183m4_pushdef([RUSH_ENVIRON],[-i MYPATH=/bin:/usr/bin]) 184AT_RUSH_TEST([ 185rule 186 env MYPATH=+/usr/local/bin: 187], 188[environ], 189[command], 190[0], 191[{ 192 "environ":[[ 193 "MYPATH=/usr/local/bin:/bin:/usr/bin" 194 ]] 195} 196], 197[rush: Notice: parsing legacy configuration file test.conf 198]) 199m4_popdef([RUSH_ENVIRON]) 200 201m4_pushdef([RUSH_ENVIRON],[-i MYPATH=/bin:/usr/bin]) 202AT_RUSH_TEST([ 203rule 204 env MYPATH=/usr/local/bin:\$MYPATH 205], 206[environ], 207[command], 208[0], 209[{ 210 "environ":[[ 211 "MYPATH=/usr/local/bin:/bin:/usr/bin" 212 ]] 213} 214], 215[rush: Notice: parsing legacy configuration file test.conf 216]) 217m4_popdef([RUSH_ENVIRON]) 218 219AT_CLEANUP 220