2
2
require "spring/commands"
3
3
4
4
class CommandsTest < ActiveSupport ::TestCase
5
- test 'rails command sets rails environment from -e option' do
6
- command = Spring ::Commands ::Rails . new
5
+ test 'console command sets rails environment from command-line option' do
6
+ command = Spring ::Commands ::RailsConsole . new
7
+ assert_equal 'test' , command . env ( [ 'test' ] )
8
+ end
9
+
10
+ test 'console command sets rails environment from -e option' do
11
+ command = Spring ::Commands ::RailsConsole . new
7
12
assert_equal 'test' , command . env ( [ '-e' , 'test' ] )
8
- assert_equal 'test' , command . env ( [ '-e=test' ] )
9
13
end
10
14
11
- test 'rails command sets rails environment from --environment option' do
12
- command = Spring ::Commands ::Rails . new
13
- assert_equal 'test' , command . env ( [ '--environment' , 'test' ] )
15
+ test 'console command sets rails environment from --environment option' do
16
+ command = Spring ::Commands ::RailsConsole . new
14
17
assert_equal 'test' , command . env ( [ '--environment=test' ] )
15
18
end
16
19
17
- test 'rails command ignores first argument if it is a flag except -e and --environment' do
18
- command = Spring ::Commands ::Rails . new
20
+ test 'console command ignores first argument if it is a flag except -e and --environment' do
21
+ command = Spring ::Commands ::RailsConsole . new
19
22
assert_nil command . env ( [ '--sandbox' ] )
20
23
end
21
24
22
- test 'rails command uses last environment option' do
23
- command = Spring ::Commands ::Rails . new
24
- assert_equal 'development ' , command . env ( [ '-e' , 'test' , '--environment=development ' ] )
25
+ test 'Runner#env sets rails environment from command-line option' do
26
+ command = Spring ::Commands ::RailsRunner . new
27
+ assert_equal 'test ' , command . env ( [ '-e' , 'test' , 'puts 1+1 ' ] )
25
28
end
26
29
27
- test 'rails command ignores additional arguments' do
28
- command = Spring ::Commands ::Rails . new
29
- assert_equal 'test' , command . env ( [ '-e' , 'test' , 'puts 1+1' ] )
30
+ test 'RailsRunner#env sets rails environment from long form of command-line option' do
31
+ command = Spring ::Commands ::RailsRunner . new
32
+ assert_equal 'test' , command . env ( [ '--environment=test' , 'puts 1+1' ] )
33
+ end
34
+
35
+ test 'RailsRunner#env ignores insignificant arguments' do
36
+ command = Spring ::Commands ::RailsRunner . new
37
+ assert_nil command . env ( [ 'puts 1+1' ] )
38
+ end
39
+
40
+ test 'RailsRunner#extract_environment removes -e <env>' do
41
+ command = Spring ::Commands ::RailsRunner . new
42
+ args = [ '-b' , '-a' , '-e' , 'test' , '-r' ]
43
+ assert_equal [ [ '-b' , '-a' , '-r' ] , 'test' ] , command . extract_environment ( args )
44
+ end
45
+
46
+ test 'RailsRunner#extract_environment removes --environment=<env>' do
47
+ command = Spring ::Commands ::RailsRunner . new
48
+ args = [ '-b' , '--environment=test' , '-a' , '-r' ]
49
+ assert_equal [ [ '-b' , '-a' , '-r' ] , 'test' ] , command . extract_environment ( args )
30
50
end
31
51
32
52
test "rake command has configurable environments" do
@@ -37,20 +57,18 @@ class CommandsTest < ActiveSupport::TestCase
37
57
assert_nil command . env ( [ "test_foo" ] )
38
58
end
39
59
40
- test 'RailsTest#env defaults to test rails environment' do
60
+ test 'RailsTest#command defaults to test rails environment' do
41
61
command = Spring ::Commands ::RailsTest . new
42
62
assert_equal 'test' , command . env ( [ ] )
43
63
end
44
64
45
- test 'RailsTest#env sets rails environment from --environment option' do
65
+ test 'RailsTest#command sets rails environment from --environment option' do
46
66
command = Spring ::Commands ::RailsTest . new
47
- assert_equal 'development' , command . env ( [ '--environment' , 'development' ] )
48
- assert_equal 'development' , command . env ( [ '--environment=development' ] )
67
+ assert_equal 'foo' , command . env ( [ '--environment=foo' ] )
49
68
end
50
69
51
- test 'RailsTest#env sets rails environment from -e option' do
70
+ test 'RailsTest#command sets rails environment from -e option' do
52
71
command = Spring ::Commands ::RailsTest . new
53
- assert_equal 'development' , command . env ( [ '-e' , 'development' ] )
54
- assert_equal 'development' , command . env ( [ '-e=development' ] )
72
+ assert_equal 'foo' , command . env ( [ '-e' , 'foo' ] )
55
73
end
56
74
end
0 commit comments