File tree Expand file tree Collapse file tree 1 file changed +17
-4
lines changed Expand file tree Collapse file tree 1 file changed +17
-4
lines changed Original file line number Diff line number Diff line change @@ -34,11 +34,24 @@ task default: %w(test test:isolated)
34
34
end
35
35
36
36
desc "Smoke-test all projects"
37
- task :smoke do
38
- ( FRAMEWORKS - %w( activerecord ) ) . each do |project |
39
- system %(cd #{ project } && #{ $0} test:isolated --trace)
37
+ task :smoke , [ :frameworks , :isolated ] do |task , args |
38
+ frameworks = args [ :frameworks ] ? args [ :frameworks ] . split ( " " ) : FRAMEWORKS
39
+ # The arguments are positional, and users may want to specify only the isolated flag.. so we allow 'all' as a default for the first argument:
40
+ if frameworks . include? ( "all" )
41
+ frameworks = FRAMEWORKS
42
+ end
43
+
44
+ isolated = args [ :isolated ] . nil? ? true : args [ :isolated ] == "true"
45
+ test_task = isolated ? "test:isolated" : "test"
46
+
47
+ ( frameworks - [ "activerecord" ] ) . each do |project |
48
+ system %(cd #{ project } && #{ $0} #{ test_task } --trace)
49
+ end
50
+
51
+ if frameworks . include? "activerecord"
52
+ test_task = isolated ? "sqlite3:isolated_test" : "sqlite3:test"
53
+ system %(cd activerecord && #{ $0} #{ test_task } --trace)
40
54
end
41
- system %(cd activerecord && #{ $0} sqlite3:isolated_test --trace)
42
55
end
43
56
44
57
desc "Install gems for all projects."
You can’t perform that action at this time.
0 commit comments