rspec-rails 2.99.0.beta1 → 2.99.0.beta2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/Changelog.md +18 -0
- data/features/controller_specs/capybara.feature +44 -0
- data/features/controller_specs/render_views.feature +1 -1
- data/lib/autotest/rails_rspec2.rb +1 -0
- data/lib/generators/rspec/install/templates/spec/spec_helper.rb.tt +0 -1
- data/lib/generators/rspec/integration/integration_generator.rb +3 -2
- data/lib/generators/rspec/scaffold/scaffold_generator.rb +3 -2
- data/lib/rspec/rails/adapters.rb +12 -5
- data/lib/rspec/rails/example/controller_example_group.rb +2 -1
- data/lib/rspec/rails/example/view_example_group.rb +3 -0
- data/lib/rspec/rails/matchers/have_extension.rb +1 -0
- data/lib/rspec/rails/matchers/relation_match_array.rb +1 -1
- data/lib/rspec/rails/matchers/routing_matchers.rb +4 -0
- data/lib/rspec/rails/mocks.rb +22 -0
- data/lib/rspec/rails/vendor/capybara.rb +35 -4
- data/lib/rspec/rails/version.rb +1 -1
- data/spec/autotest/rails_rspec2_spec.rb +5 -5
- data/spec/generators/rspec/controller/controller_generator_spec.rb +16 -16
- data/spec/generators/rspec/helper/helper_generator_spec.rb +4 -4
- data/spec/generators/rspec/install/install_generator_spec.rb +4 -4
- data/spec/generators/rspec/integration/integration_generator_spec.rb +18 -5
- data/spec/generators/rspec/mailer/mailer_generator_spec.rb +11 -11
- data/spec/generators/rspec/model/model_generator_spec.rb +7 -7
- data/spec/generators/rspec/observer/observer_generator_spec.rb +3 -3
- data/spec/generators/rspec/scaffold/scaffold_generator_spec.rb +46 -34
- data/spec/generators/rspec/view/view_generator_spec.rb +6 -6
- data/spec/rspec/rails/assertion_adapter_spec.rb +3 -3
- data/spec/rspec/rails/configuration_spec.rb +2 -2
- data/spec/rspec/rails/deprecations_spec.rb +1 -1
- data/spec/rspec/rails/example/controller_example_group_spec.rb +47 -21
- data/spec/rspec/rails/example/feature_example_group_spec.rb +2 -2
- data/spec/rspec/rails/example/helper_example_group_spec.rb +12 -12
- data/spec/rspec/rails/example/mailer_example_group_spec.rb +3 -3
- data/spec/rspec/rails/example/model_example_group_spec.rb +3 -3
- data/spec/rspec/rails/example/request_example_group_spec.rb +5 -5
- data/spec/rspec/rails/example/routing_example_group_spec.rb +5 -5
- data/spec/rspec/rails/example/view_example_group_spec.rb +44 -29
- data/spec/rspec/rails/extensions/active_model/errors_on_spec.rb +3 -3
- data/spec/rspec/rails/fixture_support_spec.rb +3 -3
- data/spec/rspec/rails/matchers/be_a_new_spec.rb +17 -17
- data/spec/rspec/rails/matchers/be_new_record_spec.rb +2 -2
- data/spec/rspec/rails/matchers/be_routable_spec.rb +8 -8
- data/spec/rspec/rails/matchers/be_valid_spec.rb +3 -4
- data/spec/rspec/rails/matchers/errors_on_spec.rb +12 -12
- data/spec/rspec/rails/matchers/has_spec.rb +1 -1
- data/spec/rspec/rails/matchers/have_rendered_spec.rb +3 -3
- data/spec/rspec/rails/matchers/redirect_to_spec.rb +7 -6
- data/spec/rspec/rails/matchers/relation_match_array_spec.rb +5 -5
- data/spec/rspec/rails/matchers/route_to_spec.rb +21 -21
- data/spec/rspec/rails/minitest_lifecycle_adapter_spec.rb +9 -0
- data/spec/rspec/rails/mocks/mock_model_spec.rb +80 -57
- data/spec/rspec/rails/mocks/stub_model_spec.rb +23 -23
- data/spec/rspec/rails/setup_and_teardown_adapter_spec.rb +4 -4
- data/spec/rspec/rails/view_rendering_spec.rb +14 -14
- data/spec/spec_helper.rb +1 -0
- data/spec/support/helpers.rb +15 -1
- metadata +29 -13
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
YzY3ODRlMWU4ZjJkNDI5NjU1M2NhZGM2ZTJjM2EyMGUzYjdkMDFhNA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ODJlYTA0ZTU4M2NlOWJhMzU1NDk3NjJhMDAzNDNjMTJlYjg1MzQyMw==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YWU5ZWVhNWFiYzdiZWY1ZWQ0OWYyMjEyZTIwOTJjZDIxODBjM2Q1ZTljMDg1
|
10
|
+
MTdhYzFjZjlhYjBhNjlmNTk1YTFkMGU1YTk0M2ZjM2NmMDE5NTNlOTI0MmQ3
|
11
|
+
OGVhMDRjZjRjNjI2NWJkZGY3YzU2Yjc3ZGI0NTM1YjFkYzU4MDQ=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
OGJjZTRhNWZjMWQyMGUzYzcyNzc5OTNjZWVkMTVjMDBjZWJmN2NjNjQ0NWJh
|
14
|
+
ZTk2M2M4MTVkNWJkMTliZDY2YWViODIwNDIwYzRlOTMzOTVmNjJjZTIzYTc3
|
15
|
+
Yjg4ZWFhZDY5OTEyZmE3N2Y0ZGVhMmIwYmQ3NmFmOTVhYmZmYmE=
|
data/Changelog.md
CHANGED
@@ -1,3 +1,21 @@
|
|
1
|
+
### 2.99.0.beta2 / 2014-02-17
|
2
|
+
[full changelog](http://github.com/rspec/rspec-rails/compare/v2.99.0.beta1...v2.99.0.beta2)
|
3
|
+
|
4
|
+
Bug fixes
|
5
|
+
|
6
|
+
* Use `__send__` rather than `send` to prevent naming collisions (Bradley Schaefer)
|
7
|
+
* Supports Rails 4.1. (Andy Lindeman)
|
8
|
+
* Loads ActiveSupport properly to support changes in Rails 4.1. (Andy Lindeman)
|
9
|
+
* Anonymous controllers inherit from `ActionController::Base` if `ApplicationController`
|
10
|
+
is not present. (Jon Rowe)
|
11
|
+
|
12
|
+
Deprecations
|
13
|
+
|
14
|
+
* Deprecates the `--webrat` option to the scaffold and request spec generator (Andy Lindeman)
|
15
|
+
* Deprecates the use of `Capybara::DSL` (e.g., `visit`) in controller specs.
|
16
|
+
It is more appropriate to use capybara in feature specs (`spec/features`)
|
17
|
+
instead. (Andy Lindeman)
|
18
|
+
|
1
19
|
### 2.99.0.beta1 / 2013-11-07
|
2
20
|
[full changelog](http://github.com/rspec/rspec-rails/compare/v2.14.0...v2.99.0.beta1)
|
3
21
|
|
@@ -0,0 +1,44 @@
|
|
1
|
+
Feature: use of capybara in controller specs
|
2
|
+
|
3
|
+
In RSpec 2.x, capybara's DSL was automatically available in controller
|
4
|
+
specs. In RSpec 3.x, capybara is no longer available in controller specs
|
5
|
+
automatically.
|
6
|
+
|
7
|
+
To continue using capybara's DSL in controller specs, include
|
8
|
+
`Capybara::DSL` explicitly.
|
9
|
+
|
10
|
+
Scenario: Capybara::DSL methods are available, but raise deprecation warnings
|
11
|
+
Given a file named "spec/controllers/widgets_controller_spec.rb" with:
|
12
|
+
"""ruby
|
13
|
+
require "spec_helper"
|
14
|
+
|
15
|
+
describe WidgetsController do
|
16
|
+
describe "GET index" do
|
17
|
+
it "says 'Listing widgets'" do
|
18
|
+
expect(RSpec).to receive(:deprecate)
|
19
|
+
visit "/widgets"
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
"""
|
24
|
+
When I run `rspec spec`
|
25
|
+
Then the examples should all pass
|
26
|
+
|
27
|
+
Scenario: include Capybara::DSL methods explicitly
|
28
|
+
Given a file named "spec/controllers/widgets_controller_spec.rb" with:
|
29
|
+
"""ruby
|
30
|
+
require "spec_helper"
|
31
|
+
|
32
|
+
describe WidgetsController do
|
33
|
+
include Capybara::DSL
|
34
|
+
|
35
|
+
describe "GET index" do
|
36
|
+
it "says 'Listing widgets'" do
|
37
|
+
expect(RSpec).not_to receive(:deprecate)
|
38
|
+
visit "/widgets"
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
"""
|
43
|
+
When I run `rspec spec`
|
44
|
+
Then the examples should all pass
|
@@ -10,15 +10,16 @@ module Rspec
|
|
10
10
|
def generate_request_spec
|
11
11
|
return unless options[:request_specs]
|
12
12
|
|
13
|
+
RSpec.deprecate("the --webrat-matchers option", :replacement => nil) if options[:webrat_matchers]
|
14
|
+
RSpec.deprecate("the --webrat option", :replacement => nil) if options[:webrat]
|
15
|
+
|
13
16
|
template 'request_spec.rb',
|
14
17
|
File.join('spec/requests', class_path, "#{table_name}_spec.rb")
|
15
18
|
end
|
16
19
|
|
17
20
|
protected
|
18
21
|
|
19
|
-
# @deprecated Use `--webrat` instead.
|
20
22
|
def webrat?
|
21
|
-
RSpec.deprecate("the --webrat-matchers option", :replacement => "--webrat") if options[:webrat_matchers]
|
22
23
|
options[:webrat] || options[:webrat_matchers]
|
23
24
|
end
|
24
25
|
|
@@ -22,6 +22,9 @@ module Rspec
|
|
22
22
|
def generate_controller_spec
|
23
23
|
return unless options[:controller_specs]
|
24
24
|
|
25
|
+
RSpec.deprecate("the --webrat-matchers option", :replacement => nil) if options[:webrat_matchers]
|
26
|
+
RSpec.deprecate("the --webrat option", :replacement => nil) if options[:webrat]
|
27
|
+
|
25
28
|
template 'controller_spec.rb',
|
26
29
|
File.join('spec/controllers', controller_class_path, "#{controller_file_name}_controller_spec.rb")
|
27
30
|
end
|
@@ -46,9 +49,7 @@ module Rspec
|
|
46
49
|
|
47
50
|
protected
|
48
51
|
|
49
|
-
# @deprecated Use `--webrat` instead.
|
50
52
|
def webrat?
|
51
|
-
RSpec.deprecate("--webrat-matchers", :replacement => "--webrat") if options[:webrat_matchers]
|
52
53
|
options[:webrat] || options[:webrat_matchers]
|
53
54
|
end
|
54
55
|
|
data/lib/rspec/rails/adapters.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'delegate'
|
2
|
+
require 'active_support'
|
2
3
|
require 'active_support/concern'
|
3
4
|
|
4
5
|
module RSpec
|
@@ -8,7 +9,13 @@ module RSpec
|
|
8
9
|
require 'minitest/assertions'
|
9
10
|
Assertions = Minitest::Assertions
|
10
11
|
else
|
11
|
-
|
12
|
+
begin
|
13
|
+
require 'test/unit/assertions'
|
14
|
+
rescue LoadError
|
15
|
+
# work around for Rubinius not having a std std-lib
|
16
|
+
require 'rubysl-test-unit' if defined?(RUBY_ENGINE) && RUBY_ENGINE == 'rbx'
|
17
|
+
require 'test/unit/assertions'
|
18
|
+
end
|
12
19
|
Assertions = Test::Unit::Assertions
|
13
20
|
end
|
14
21
|
|
@@ -101,10 +108,10 @@ module RSpec
|
|
101
108
|
# hooks.
|
102
109
|
def setup(*methods)
|
103
110
|
methods.each do |method|
|
104
|
-
if method.to_s =~ /^setup_(fixtures|controller_request_and_response)$/
|
105
|
-
prepend_before {
|
111
|
+
if method.to_s =~ /^setup_(with_controller|fixtures|controller_request_and_response)$/
|
112
|
+
prepend_before { __send__ method }
|
106
113
|
else
|
107
|
-
before {
|
114
|
+
before { __send__ method }
|
108
115
|
end
|
109
116
|
end
|
110
117
|
end
|
@@ -114,7 +121,7 @@ module RSpec
|
|
114
121
|
# Wraps `teardown` calls from within Rails' testing framework in
|
115
122
|
# `after` hooks.
|
116
123
|
def teardown(*methods)
|
117
|
-
methods.each { |method| after {
|
124
|
+
methods.each { |method| after { __send__ method } }
|
118
125
|
end
|
119
126
|
end
|
120
127
|
|
@@ -55,9 +55,10 @@ module RSpec::Rails
|
|
55
55
|
# # ....
|
56
56
|
# end
|
57
57
|
def controller(base_class = nil, &body)
|
58
|
+
root_controller = defined?(ApplicationController) ? ApplicationController : ActionController::Base
|
58
59
|
base_class ||= RSpec.configuration.infer_base_class_for_anonymous_controllers? ?
|
59
60
|
controller_class :
|
60
|
-
|
61
|
+
root_controller
|
61
62
|
|
62
63
|
metadata[:example_group][:described_class] = Class.new(base_class) do
|
63
64
|
def self.name; "AnonymousController"; end
|
@@ -152,6 +152,9 @@ module RSpec::Rails
|
|
152
152
|
view.lookup_context.prefixes << _controller_path
|
153
153
|
end
|
154
154
|
|
155
|
+
# fixes bug with differing formats
|
156
|
+
view.lookup_context.view_paths.each(&:clear_cache)
|
157
|
+
|
155
158
|
controller.controller_path = _controller_path
|
156
159
|
controller.request.path_parameters[:controller] = _controller_path
|
157
160
|
controller.request.path_parameters[:action] = _inferred_action unless _inferred_action =~ /^_/
|
@@ -1,3 +1,3 @@
|
|
1
1
|
if defined?(ActiveRecord::Relation)
|
2
|
-
RSpec::Matchers::OperatorMatcher.register(ActiveRecord::Relation, '=~', RSpec::Matchers::BuiltIn::MatchArray)
|
2
|
+
RSpec::Matchers::BuiltIn::OperatorMatcher.register(ActiveRecord::Relation, '=~', RSpec::Matchers::BuiltIn::MatchArray)
|
3
3
|
end
|
@@ -35,6 +35,10 @@ module RSpec::Rails::Matchers
|
|
35
35
|
rescued_exception.message
|
36
36
|
end
|
37
37
|
|
38
|
+
def failure_message_for_should_not
|
39
|
+
"expected #{@actual.inspect} not to route to #{@expected.inspect}"
|
40
|
+
end
|
41
|
+
|
38
42
|
def description
|
39
43
|
"route #{@actual.inspect} to #{@expected.inspect}"
|
40
44
|
end
|
data/lib/rspec/rails/mocks.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'active_support'
|
2
|
+
require 'active_support/deprecation'
|
1
3
|
require 'active_support/core_ext'
|
2
4
|
require 'active_model'
|
3
5
|
|
@@ -29,6 +31,19 @@ module RSpec
|
|
29
31
|
end
|
30
32
|
end
|
31
33
|
|
34
|
+
# Starting with Rails 4.1, ActiveRecord associations are inversible
|
35
|
+
# by default. This class represents an association from the mocked
|
36
|
+
# model's perspective.
|
37
|
+
#
|
38
|
+
# @private
|
39
|
+
class Association
|
40
|
+
attr_accessor :target, :inversed
|
41
|
+
|
42
|
+
def initialize(association_name)
|
43
|
+
@association_name = association_name
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
32
47
|
module ActiveRecordInstanceMethods
|
33
48
|
# Stubs `persisted?` to return `false` and `id` to return `nil`.
|
34
49
|
def destroy
|
@@ -45,6 +60,13 @@ module RSpec
|
|
45
60
|
def new_record?
|
46
61
|
!persisted?
|
47
62
|
end
|
63
|
+
|
64
|
+
# Returns an object representing an association from the mocked
|
65
|
+
# model's perspective. For use by Rails internally only.
|
66
|
+
def association(association_name)
|
67
|
+
@associations ||= Hash.new { |h, k| h[k] = Association.new(k) }
|
68
|
+
@associations[association_name]
|
69
|
+
end
|
48
70
|
end
|
49
71
|
|
50
72
|
# Creates a test double representing `string_or_model_class` with common
|
@@ -9,9 +9,42 @@ rescue LoadError
|
|
9
9
|
end
|
10
10
|
|
11
11
|
if defined?(Capybara)
|
12
|
+
module RSpec::Rails::DeprecatedCapybaraDSL
|
13
|
+
include ::Capybara::DSL
|
14
|
+
|
15
|
+
def self.included(mod)
|
16
|
+
mod.extend(ClassMethods)
|
17
|
+
super
|
18
|
+
end
|
19
|
+
|
20
|
+
module ClassMethods
|
21
|
+
def include(mod)
|
22
|
+
if mod == ::Capybara::DSL
|
23
|
+
class_variable_set(:@@_rspec_capybara_included_explicitly, true)
|
24
|
+
end
|
25
|
+
|
26
|
+
super
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
::Capybara::DSL.instance_methods(false).each do |method|
|
31
|
+
# capybara internally calls `page`, skip to avoid a duplicate
|
32
|
+
# deprecation warning
|
33
|
+
next if method.to_s == 'page'
|
34
|
+
|
35
|
+
define_method method do |*args, &blk|
|
36
|
+
unless self.class.class_variable_defined?(:@@_rspec_capybara_included_explicitly)
|
37
|
+
RSpec.deprecate "Using the capybara method `#{method}` in controller specs",
|
38
|
+
:replacement => "feature specs (spec/features)"
|
39
|
+
end
|
40
|
+
super(*args, &blk)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
12
45
|
RSpec.configure do |c|
|
13
46
|
if defined?(Capybara::DSL)
|
14
|
-
c.include
|
47
|
+
c.include ::RSpec::Rails::DeprecatedCapybaraDSL, :type => :controller
|
15
48
|
c.include Capybara::DSL, :type => :feature
|
16
49
|
end
|
17
50
|
|
@@ -20,9 +53,7 @@ if defined?(Capybara)
|
|
20
53
|
c.include Capybara::RSpecMatchers, :type => :helper
|
21
54
|
c.include Capybara::RSpecMatchers, :type => :mailer
|
22
55
|
c.include Capybara::RSpecMatchers, :type => :controller
|
23
|
-
c.include Capybara::RSpecMatchers, :
|
24
|
-
:file_path => c.escaped_path(%w[spec features])
|
25
|
-
}
|
56
|
+
c.include Capybara::RSpecMatchers, :type => :feature
|
26
57
|
end
|
27
58
|
|
28
59
|
unless defined?(Capybara::RSpecMatchers) || defined?(Capybara::DSL)
|
data/lib/rspec/rails/version.rb
CHANGED
@@ -9,26 +9,26 @@ describe Autotest::RailsRspec2 do
|
|
9
9
|
let(:exceptions_regexp) { rails_rspec2_autotest.exceptions }
|
10
10
|
|
11
11
|
it "matches './log/test.log'" do
|
12
|
-
exceptions_regexp.
|
12
|
+
expect(exceptions_regexp).to match('./log/test.log')
|
13
13
|
end
|
14
14
|
|
15
15
|
it "matches 'log/test.log'" do
|
16
|
-
exceptions_regexp.
|
16
|
+
expect(exceptions_regexp).to match('log/test.log')
|
17
17
|
end
|
18
18
|
|
19
19
|
it "does not match './spec/models/user_spec.rb'" do
|
20
|
-
exceptions_regexp.
|
20
|
+
expect(exceptions_regexp).not_to match('./spec/models/user_spec.rb')
|
21
21
|
end
|
22
22
|
|
23
23
|
it "does not match 'spec/models/user_spec.rb'" do
|
24
|
-
exceptions_regexp.
|
24
|
+
expect(exceptions_regexp).not_to match('spec/models/user_spec.rb')
|
25
25
|
end
|
26
26
|
end
|
27
27
|
|
28
28
|
describe 'mappings' do
|
29
29
|
it 'runs model specs when support files change' do
|
30
30
|
rails_rspec2_autotest.find_order = %w(spec/models/user_spec.rb spec/support/blueprints.rb)
|
31
|
-
rails_rspec2_autotest.test_files_for('spec/support/blueprints.rb').
|
31
|
+
expect(rails_rspec2_autotest.test_files_for('spec/support/blueprints.rb')).to(
|
32
32
|
include('spec/models/user_spec.rb'))
|
33
33
|
end
|
34
34
|
end
|
@@ -17,16 +17,16 @@ describe Rspec::Generators::ControllerGenerator do
|
|
17
17
|
end
|
18
18
|
|
19
19
|
describe 'the spec' do
|
20
|
-
it {
|
21
|
-
it {
|
22
|
-
it {
|
20
|
+
it { is_expected.to exist }
|
21
|
+
it { is_expected.to contain(/require 'spec_helper'/) }
|
22
|
+
it { is_expected.to contain(/describe PostsController/) }
|
23
23
|
end
|
24
24
|
end
|
25
25
|
describe 'skipped with a flag' do
|
26
26
|
before do
|
27
27
|
run_generator %w(posts --no-controller_specs)
|
28
28
|
end
|
29
|
-
it {
|
29
|
+
it { is_expected.not_to exist }
|
30
30
|
end
|
31
31
|
end
|
32
32
|
|
@@ -38,7 +38,7 @@ describe Rspec::Generators::ControllerGenerator do
|
|
38
38
|
end
|
39
39
|
describe 'index.html.erb' do
|
40
40
|
subject { file('spec/views/posts/index.html.erb_spec.rb') }
|
41
|
-
it {
|
41
|
+
it { is_expected.not_to exist }
|
42
42
|
end
|
43
43
|
end
|
44
44
|
describe 'with no actions' do
|
@@ -47,7 +47,7 @@ describe Rspec::Generators::ControllerGenerator do
|
|
47
47
|
end
|
48
48
|
describe 'index.html.erb' do
|
49
49
|
subject { file('spec/views/posts/index.html.erb_spec.rb') }
|
50
|
-
it {
|
50
|
+
it { is_expected.not_to exist }
|
51
51
|
end
|
52
52
|
end
|
53
53
|
|
@@ -58,7 +58,7 @@ describe Rspec::Generators::ControllerGenerator do
|
|
58
58
|
|
59
59
|
describe 'index.html.erb' do
|
60
60
|
subject { file('spec/views/posts/index.html._spec.rb') }
|
61
|
-
it {
|
61
|
+
it { is_expected.not_to exist }
|
62
62
|
end
|
63
63
|
end
|
64
64
|
end
|
@@ -70,15 +70,15 @@ describe Rspec::Generators::ControllerGenerator do
|
|
70
70
|
end
|
71
71
|
describe 'index.html.erb' do
|
72
72
|
subject { file('spec/views/posts/index.html.erb_spec.rb') }
|
73
|
-
it {
|
74
|
-
it {
|
75
|
-
it {
|
73
|
+
it { is_expected.to exist }
|
74
|
+
it { is_expected.to contain(/require 'spec_helper'/) }
|
75
|
+
it { is_expected.to contain(/describe "posts\/index.html.erb"/) }
|
76
76
|
end
|
77
77
|
describe 'show.html.erb' do
|
78
78
|
subject { file('spec/views/posts/show.html.erb_spec.rb') }
|
79
|
-
it {
|
80
|
-
it {
|
81
|
-
it {
|
79
|
+
it { is_expected.to exist }
|
80
|
+
it { is_expected.to contain(/require 'spec_helper'/) }
|
81
|
+
it { is_expected.to contain(/describe "posts\/show.html.erb"/) }
|
82
82
|
end
|
83
83
|
end
|
84
84
|
describe 'with haml' do
|
@@ -87,9 +87,9 @@ describe Rspec::Generators::ControllerGenerator do
|
|
87
87
|
end
|
88
88
|
describe 'index.html.haml' do
|
89
89
|
subject { file('spec/views/posts/index.html.haml_spec.rb') }
|
90
|
-
it {
|
91
|
-
it {
|
92
|
-
it {
|
90
|
+
it { is_expected.to exist }
|
91
|
+
it { is_expected.to contain(/require 'spec_helper'/) }
|
92
|
+
it { is_expected.to contain(/describe "posts\/index.html.haml"/) }
|
93
93
|
end
|
94
94
|
end
|
95
95
|
end
|