rspec-rails 2.0.0.beta.22 → 2.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +10 -4
- data/.rspec +1 -0
- data/.travis.yml +10 -0
- data/History.md +1 -33
- data/License.txt +23 -0
- data/{README.markdown → README.md} +27 -7
- data/README_DEV.md +43 -0
- data/Rakefile +105 -35
- data/Thorfile +40 -0
- data/Upgrade.md +1 -0
- data/features/.nav +34 -0
- data/features/Autotest.md +24 -0
- data/features/Changelog.md +151 -0
- data/features/Generators.md +8 -0
- data/features/GettingStarted.md +84 -0
- data/features/README.md +58 -0
- data/features/Upgrade.md +117 -0
- data/features/controller_specs/README.md +45 -0
- data/features/controller_specs/anonymous_controller.feature +7 -7
- data/features/controller_specs/controller_spec.feature +18 -0
- data/features/controller_specs/isolation_from_views.feature +55 -8
- data/features/controller_specs/render_views.feature +63 -52
- data/features/helper_specs/helper_spec.feature +40 -6
- data/features/mailer_specs/url_helpers.feature +4 -4
- data/features/matchers/README.md +4 -0
- data/features/matchers/new_record_matcher.feature +6 -48
- data/features/matchers/redirect_to_matcher.feature +5 -6
- data/features/matchers/render_template_matcher.feature +13 -10
- data/features/mocks/mock_model.feature +29 -13
- data/features/mocks/stub_model.feature +4 -4
- data/features/model_specs/README.md +21 -0
- data/features/model_specs/errors_on.feature +2 -2
- data/features/model_specs/transactional_examples.feature +14 -9
- data/features/request_specs/request_spec.feature +49 -0
- data/features/routing_specs/README.md +17 -0
- data/features/{matchers → routing_specs}/be_routable_matcher.feature +25 -25
- data/features/routing_specs/named_routes.feature +18 -0
- data/features/routing_specs/route_to_matcher.feature +58 -0
- data/features/step_definitions/additional_cli_steps.rb +4 -0
- data/features/support/env.rb +14 -6
- data/features/view_specs/inferred_controller_path.feature +6 -6
- data/features/view_specs/stub_template.feature +51 -0
- data/features/view_specs/view_spec.feature +23 -42
- data/gemfiles/.bundle/config +2 -0
- data/gemfiles/base.rb +58 -0
- data/gemfiles/rails-3-0-stable +6 -0
- data/gemfiles/rails-3.0.0 +5 -0
- data/gemfiles/rails-3.0.1 +5 -0
- data/gemfiles/rails-3.0.2 +5 -0
- data/gemfiles/rails-3.0.3 +5 -0
- data/gemfiles/rails-3.0.4 +5 -0
- data/gemfiles/rails-3.0.5 +5 -0
- data/gemfiles/rails-3.0.6 +5 -0
- data/gemfiles/rails-3.0.7 +5 -0
- data/gemfiles/rails-3.1.0.beta1 +5 -0
- data/gemfiles/rails-master +7 -0
- data/lib/autotest/rails_rspec2.rb +1 -1
- data/lib/generators/rspec/controller/controller_generator.rb +4 -4
- data/lib/generators/rspec/helper/helper_generator.rb +3 -3
- data/lib/generators/rspec/install/install_generator.rb +0 -8
- data/lib/generators/rspec/integration/integration_generator.rb +15 -1
- data/lib/generators/rspec/integration/templates/request_spec.rb +7 -1
- data/lib/generators/rspec/mailer/mailer_generator.rb +2 -2
- data/lib/generators/rspec/model/model_generator.rb +1 -1
- data/lib/generators/rspec/observer/observer_generator.rb +1 -1
- data/lib/generators/rspec/scaffold/scaffold_generator.rb +40 -11
- data/lib/generators/rspec/scaffold/templates/controller_spec.rb +90 -58
- data/lib/generators/rspec/scaffold/templates/edit_spec.rb +15 -7
- data/lib/generators/rspec/scaffold/templates/index_spec.rb +7 -2
- data/lib/generators/rspec/scaffold/templates/new_spec.rb +14 -7
- data/lib/generators/rspec/scaffold/templates/routing_spec.rb +14 -14
- data/lib/generators/rspec/scaffold/templates/show_spec.rb +7 -2
- data/lib/generators/rspec/view/view_generator.rb +1 -1
- data/lib/rspec/rails/example/controller_example_group.rb +25 -34
- data/lib/rspec/rails/example/helper_example_group.rb +5 -11
- data/lib/rspec/rails/example/mailer_example_group.rb +0 -14
- data/lib/rspec/rails/example/model_example_group.rb +0 -4
- data/lib/rspec/rails/example/rails_example_group.rb +0 -2
- data/lib/rspec/rails/example/request_example_group.rb +5 -30
- data/lib/rspec/rails/example/routing_example_group.rb +3 -5
- data/lib/rspec/rails/example/view_example_group.rb +20 -11
- data/lib/rspec/rails/example.rb +31 -1
- data/lib/rspec/rails/extensions/active_record/base.rb +28 -32
- data/lib/rspec/rails/fixture_support.rb +1 -1
- data/lib/rspec/rails/matchers/be_new_record.rb +5 -0
- data/lib/rspec/rails/matchers/redirect_to.rb +6 -2
- data/lib/rspec/rails/matchers/render_template.rb +5 -1
- data/lib/rspec/rails/matchers/routing_matchers.rb +24 -3
- data/lib/rspec/rails/matchers.rb +1 -1
- data/lib/rspec/rails/mocks.rb +118 -79
- data/lib/rspec/rails/module_inclusion.rb +17 -0
- data/lib/rspec/rails/tasks/rspec.rake +1 -1
- data/lib/rspec/rails/vendor/capybara.rb +29 -0
- data/lib/rspec/rails/vendor/webrat.rb +33 -0
- data/lib/rspec/rails/version.rb +1 -1
- data/lib/rspec/rails/view_assigns.rb +23 -4
- data/lib/rspec/rails/view_rendering.rb +50 -13
- data/lib/rspec/rails.rb +7 -10
- data/lib/rspec-rails.rb +4 -2
- data/rspec-rails.gemspec +11 -39
- data/spec/autotest/rails_rspec2_spec.rb +25 -14
- data/spec/rspec/rails/configuration_spec.rb +26 -0
- data/spec/rspec/rails/deprecations_spec.rb +18 -0
- data/spec/rspec/rails/example/controller_example_group_spec.rb +47 -5
- data/spec/rspec/rails/example/helper_example_group_spec.rb +19 -1
- data/spec/rspec/rails/example/request_example_group_spec.rb +2 -0
- data/spec/rspec/rails/extensions/active_model/errors_on_spec.rb +23 -0
- data/spec/rspec/rails/extensions/active_record/records_spec.rb +9 -0
- data/spec/rspec/rails/matchers/be_new_record_spec.rb +17 -0
- data/spec/rspec/rails/matchers/be_routable_spec.rb +41 -0
- data/spec/rspec/rails/matchers/redirect_to_spec.rb +67 -8
- data/spec/rspec/rails/matchers/render_template_spec.rb +67 -10
- data/spec/rspec/rails/matchers/route_to_spec.rb +77 -31
- data/spec/rspec/rails/mocks/ar_classes.rb +17 -25
- data/spec/rspec/rails/mocks/mock_model_spec.rb +50 -13
- data/spec/rspec/rails/mocks/stub_model_spec.rb +121 -67
- data/spec/rspec/rails/view_rendering_spec.rb +105 -0
- data/spec/spec_helper.rb +0 -22
- data/spec/support/matchers.rb +9 -0
- data/templates/generate_stuff.rb +10 -2
- data/templates/run_specs.rb +2 -2
- metadata +141 -79
- data/Gemfile +0 -24
- data/Gotchas.markdown +0 -14
- data/Upgrade.markdown +0 -31
- data/autotest/discover.rb +0 -1
- data/features/README.markdown +0 -12
- data/features/controller_specs/readers.feature +0 -18
- data/features/routing_specs/access_to_named_routes.feature +0 -15
- data/lib/generators/rspec/install/templates/autotest/discover.rb +0 -2
- data/lib/rspec/rails/browser_simulators.rb +0 -30
- data/spec/rspec/rails/example/view_rendering_spec.rb +0 -110
- data/specs.watchr +0 -59
- data/templates/Gemfile +0 -18
|
@@ -2,100 +2,154 @@ require 'spec_helper'
|
|
|
2
2
|
require File.dirname(__FILE__) + '/ar_classes'
|
|
3
3
|
|
|
4
4
|
describe "stub_model" do
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
|
|
6
|
+
shared_examples_for "stub model" do
|
|
7
|
+
describe "with a block" do
|
|
8
|
+
it "yields the model" do
|
|
9
|
+
model = stub_model(model_class) do |block_arg|
|
|
10
|
+
@block_arg = block_arg
|
|
11
|
+
end
|
|
12
|
+
model.should be(@block_arg)
|
|
13
|
+
end
|
|
8
14
|
end
|
|
9
15
|
|
|
10
|
-
|
|
11
|
-
|
|
16
|
+
describe "#persisted?" do
|
|
17
|
+
context "default" do
|
|
18
|
+
it "returns true" do
|
|
19
|
+
model = stub_model(model_class)
|
|
20
|
+
model.should be_persisted
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
context "with as_new_record" do
|
|
25
|
+
it "returns false" do
|
|
26
|
+
model = stub_model(model_class).as_new_record
|
|
27
|
+
model.should_not be_persisted
|
|
28
|
+
end
|
|
29
|
+
end
|
|
12
30
|
end
|
|
13
|
-
end
|
|
14
31
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
32
|
+
it "increments the value returned by to_param" do
|
|
33
|
+
first = stub_model(model_class)
|
|
34
|
+
second = stub_model(model_class)
|
|
35
|
+
second.to_param.to_i.should == (first.to_param.to_i + 1)
|
|
36
|
+
end
|
|
18
37
|
|
|
19
|
-
|
|
20
|
-
|
|
38
|
+
describe "#blank?" do
|
|
39
|
+
it "is false" do
|
|
40
|
+
stub_model(model_class).should_not be_blank
|
|
41
|
+
end
|
|
42
|
+
end
|
|
21
43
|
end
|
|
22
44
|
|
|
23
|
-
|
|
24
|
-
|
|
45
|
+
context "with ActiveModel (not ActiveRecord)" do
|
|
46
|
+
it_behaves_like "stub model" do
|
|
47
|
+
def model_class
|
|
48
|
+
NonActiveRecordModel
|
|
49
|
+
end
|
|
50
|
+
end
|
|
25
51
|
end
|
|
26
52
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
53
|
+
context "with an ActiveRecord model" do
|
|
54
|
+
let(:model_class) { MockableModel }
|
|
55
|
+
|
|
56
|
+
it_behaves_like "stub model"
|
|
57
|
+
|
|
58
|
+
describe "#new_record?" do
|
|
59
|
+
context "default" do
|
|
60
|
+
it "returns false" do
|
|
61
|
+
model = stub_model(model_class)
|
|
62
|
+
model.new_record?.should be_false
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
context "with as_new_record" do
|
|
67
|
+
it "returns true" do
|
|
68
|
+
model = stub_model(model_class).as_new_record
|
|
69
|
+
model.new_record?.should be_true
|
|
70
|
+
end
|
|
71
|
+
end
|
|
34
72
|
end
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
73
|
+
|
|
74
|
+
describe "defaults" do
|
|
75
|
+
it "has an id" do
|
|
76
|
+
stub_model(MockableModel).id.should be > 0
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
it "says it is not a new record" do
|
|
80
|
+
stub_model(MockableModel).should_not be_new_record
|
|
81
|
+
end
|
|
38
82
|
end
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
83
|
+
|
|
84
|
+
describe "#as_new_record" do
|
|
85
|
+
it "has a nil id" do
|
|
86
|
+
stub_model(MockableModel).as_new_record.id.should be(nil)
|
|
87
|
+
end
|
|
42
88
|
end
|
|
43
|
-
|
|
44
|
-
it "
|
|
45
|
-
|
|
89
|
+
|
|
90
|
+
it "raises when hitting the db" do
|
|
91
|
+
lambda do
|
|
92
|
+
stub_model(MockableModel).connection
|
|
93
|
+
end.should raise_error(RSpec::Rails::IllegalDataAccessException, /stubbed models are not allowed to access the database/)
|
|
46
94
|
end
|
|
47
|
-
|
|
48
|
-
it "
|
|
49
|
-
stub_model(
|
|
95
|
+
|
|
96
|
+
it "increments the id" do
|
|
97
|
+
first = stub_model(model_class)
|
|
98
|
+
second = stub_model(model_class)
|
|
99
|
+
second.id.should == (first.id + 1)
|
|
50
100
|
end
|
|
51
|
-
end
|
|
52
101
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
stub_model(MockableModel).as_new_record.should be_new_record
|
|
102
|
+
it "accepts a stub id" do
|
|
103
|
+
stub_model(MockableModel, :id => 37).id.should == 37
|
|
56
104
|
end
|
|
57
105
|
|
|
58
|
-
it "
|
|
59
|
-
stub_model(MockableModel).
|
|
106
|
+
it "says it is a new record when id is set to nil" do
|
|
107
|
+
stub_model(MockableModel, :id => nil).should be_new_record
|
|
60
108
|
end
|
|
61
|
-
end
|
|
62
109
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
end.should raise_error(RSpec::Rails::IllegalDataAccessException, /stubbed models are not allowed to access the database/)
|
|
67
|
-
end
|
|
110
|
+
it "accepts a stub for save" do
|
|
111
|
+
stub_model(MockableModel, :save => false).save.should be(false)
|
|
112
|
+
end
|
|
68
113
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
114
|
+
describe "alternate primary key" do
|
|
115
|
+
it "has the correct primary_key name" do
|
|
116
|
+
stub_model(AlternatePrimaryKeyModel).class.primary_key.to_s.should eql('my_id')
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
it "has a primary_key" do
|
|
120
|
+
stub_model(AlternatePrimaryKeyModel).my_id.should be > 0
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
it "says it is not a new record" do
|
|
124
|
+
stub_model(AlternatePrimaryKeyModel) do |m|
|
|
125
|
+
m.should_not be_new_record
|
|
126
|
+
end
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
it "says it is a new record if primary_key is nil" do
|
|
130
|
+
stub_model(AlternatePrimaryKeyModel, :my_id => nil).should be_new_record
|
|
131
|
+
end
|
|
74
132
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
@stub_model = stub_model(MockableModel)
|
|
79
|
-
@real.mockable_model = @stub_model
|
|
133
|
+
it "accepts a stub for the primary_key" do
|
|
134
|
+
stub_model(AlternatePrimaryKeyModel, :my_id => 5).my_id.should == 5
|
|
135
|
+
end
|
|
80
136
|
end
|
|
81
137
|
|
|
82
|
-
|
|
138
|
+
describe "as association" do
|
|
139
|
+
before(:each) do
|
|
140
|
+
@real = AssociatedModel.create!
|
|
141
|
+
@stub_model = stub_model(MockableModel)
|
|
142
|
+
@real.mockable_model = @stub_model
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
it "passes associated_model == mock" do
|
|
83
146
|
@stub_model.should == @real.mockable_model
|
|
84
|
-
|
|
147
|
+
end
|
|
85
148
|
|
|
86
|
-
|
|
149
|
+
it "passes mock == associated_model" do
|
|
87
150
|
@real.mockable_model.should == @stub_model
|
|
88
|
-
end
|
|
89
|
-
end
|
|
90
|
-
|
|
91
|
-
describe "with a block" do
|
|
92
|
-
it "yields the model" do
|
|
93
|
-
model = stub_model(MockableModel) do |block_arg|
|
|
94
|
-
@block_arg = block_arg
|
|
95
151
|
end
|
|
96
|
-
model.should be(@block_arg)
|
|
97
152
|
end
|
|
153
|
+
|
|
98
154
|
end
|
|
99
155
|
end
|
|
100
|
-
|
|
101
|
-
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
require "spec_helper"
|
|
2
|
+
|
|
3
|
+
module RSpec::Rails
|
|
4
|
+
describe ViewRendering do
|
|
5
|
+
let(:group) do
|
|
6
|
+
RSpec::Core::ExampleGroup.describe do
|
|
7
|
+
def controller
|
|
8
|
+
ActionController::Base.new
|
|
9
|
+
end
|
|
10
|
+
include ViewRendering
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
context "default" do
|
|
15
|
+
context "ActionController::Base" do
|
|
16
|
+
it "does not render views" do
|
|
17
|
+
group.new.render_views?.should be_false
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
it "does not render views in a nested group" do
|
|
21
|
+
group.describe{}.new.render_views?.should be_false
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
context "ActionController::Metal" do
|
|
26
|
+
it "renders views" do
|
|
27
|
+
group.new.tap do |example|
|
|
28
|
+
def example.controller
|
|
29
|
+
ActionController::Metal.new
|
|
30
|
+
end
|
|
31
|
+
example.render_views?.should be_true
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
describe "#render_views" do
|
|
38
|
+
context "with no args" do
|
|
39
|
+
it "tells examples to render views" do
|
|
40
|
+
group.render_views
|
|
41
|
+
group.new.render_views?.should be_true
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
context "with true" do
|
|
46
|
+
it "tells examples to render views" do
|
|
47
|
+
group.render_views true
|
|
48
|
+
group.new.render_views?.should be_true
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
context "with false" do
|
|
53
|
+
it "tells examples not to render views" do
|
|
54
|
+
group.render_views false
|
|
55
|
+
group.new.render_views?.should be_false
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
context "in a nested group" do
|
|
60
|
+
let(:nested_group) do
|
|
61
|
+
group.describe{}
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
context "with no args" do
|
|
65
|
+
it "tells examples to render views" do
|
|
66
|
+
nested_group.render_views
|
|
67
|
+
nested_group.new.render_views?.should be_true
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
context "with true" do
|
|
72
|
+
it "tells examples to render views" do
|
|
73
|
+
nested_group.render_views true
|
|
74
|
+
nested_group.new.render_views?.should be_true
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
context "with false" do
|
|
79
|
+
it "tells examples not to render views" do
|
|
80
|
+
nested_group.render_views false
|
|
81
|
+
nested_group.new.render_views?.should be_false
|
|
82
|
+
end
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
it "leaves the parent group as/is" do
|
|
86
|
+
group.render_views
|
|
87
|
+
nested_group.render_views false
|
|
88
|
+
group.new.render_views?.should be_true
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
it "overrides the value inherited from the parent group" do
|
|
92
|
+
group.render_views
|
|
93
|
+
nested_group.render_views false
|
|
94
|
+
nested_group.new.render_views?.should be_false
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
it "passes override to children" do
|
|
98
|
+
group.render_views
|
|
99
|
+
nested_group.render_views false
|
|
100
|
+
nested_group.describe{}.new.render_views?.should be_false
|
|
101
|
+
end
|
|
102
|
+
end
|
|
103
|
+
end
|
|
104
|
+
end
|
|
105
|
+
end
|
data/spec/spec_helper.rb
CHANGED
|
@@ -9,35 +9,13 @@ require 'rspec/rails'
|
|
|
9
9
|
|
|
10
10
|
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
|
|
11
11
|
|
|
12
|
-
# TODO - most of this is borrowed from rspec-core's spec_helper - should
|
|
13
|
-
# be extracted to something we can use here
|
|
14
|
-
def in_editor?
|
|
15
|
-
ENV.has_key?('TM_MODE') || ENV.has_key?('EMACS') || ENV.has_key?('VIM')
|
|
16
|
-
end
|
|
17
|
-
|
|
18
12
|
class RSpec::Core::ExampleGroup
|
|
19
13
|
def self.run_all(reporter=nil)
|
|
20
14
|
run(reporter || RSpec::Mocks::Mock.new('reporter').as_null_object)
|
|
21
15
|
end
|
|
22
16
|
end
|
|
23
17
|
|
|
24
|
-
module MatchesForRSpecRailsSpecs
|
|
25
|
-
extend RSpec::Matchers::DSL
|
|
26
|
-
|
|
27
|
-
matcher :be_included_in_files_in do |path|
|
|
28
|
-
match do |mod|
|
|
29
|
-
stub_metadata(
|
|
30
|
-
:example_group => {:file_path => "#{path}whatever_spec.rb:15"}
|
|
31
|
-
)
|
|
32
|
-
group = RSpec::Core::ExampleGroup.describe
|
|
33
|
-
group.included_modules.include?(mod)
|
|
34
|
-
end
|
|
35
|
-
end
|
|
36
|
-
end
|
|
37
|
-
|
|
38
18
|
RSpec.configure do |c|
|
|
39
|
-
c.include MatchesForRSpecRailsSpecs
|
|
40
|
-
c.color_enabled = !in_editor?
|
|
41
19
|
c.before(:each) do
|
|
42
20
|
@real_world = RSpec.world
|
|
43
21
|
RSpec.instance_variable_set(:@world, RSpec::Core::World.new)
|
data/templates/generate_stuff.rb
CHANGED
|
@@ -5,9 +5,17 @@ generate('integration_test widgets')
|
|
|
5
5
|
generate('mailer Notifications signup')
|
|
6
6
|
generate('model thing name:string')
|
|
7
7
|
generate('helper things')
|
|
8
|
-
generate('scaffold widget name:string category:string instock:boolean')
|
|
8
|
+
generate('scaffold widget name:string category:string instock:boolean --force')
|
|
9
9
|
generate('observer widget')
|
|
10
|
-
generate('scaffold gadget
|
|
10
|
+
generate('scaffold gadget') # scaffold with no attributes
|
|
11
|
+
generate('scaffold admin/accounts name:string') # scaffold with nested resource
|
|
12
|
+
|
|
13
|
+
generate('controller things custom_action')
|
|
14
|
+
template_code= <<-TEMPLATE
|
|
15
|
+
<% raise 'Error from custom_action because we should never render this template....derp derp derp' %>
|
|
16
|
+
TEMPLATE
|
|
17
|
+
|
|
18
|
+
file "app/views/things/custom_action.html.erb", template_code, {:force=>true}
|
|
11
19
|
|
|
12
20
|
run('rake db:migrate')
|
|
13
21
|
run('rake db:test:prepare')
|
data/templates/run_specs.rb
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
run('
|
|
1
|
+
run('rspec spec -cfdoc')
|
|
2
2
|
run('rake spec')
|
|
3
3
|
run('rake spec:requests')
|
|
4
4
|
run('rake spec:models')
|
|
@@ -6,4 +6,4 @@ run('rake spec:views')
|
|
|
6
6
|
run('rake spec:controllers')
|
|
7
7
|
run('rake spec:helpers')
|
|
8
8
|
run('rake spec:mailers')
|
|
9
|
-
run(
|
|
9
|
+
run("rake stats")
|