rspec-rails 2.13.1 → 2.13.2
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.
- checksums.yaml +4 -4
- data/Changelog.md +12 -1
- data/README.md +1 -1
- data/lib/generators/rspec.rb +1 -2
- data/lib/generators/rspec/install/install_generator.rb +0 -2
- data/lib/generators/rspec/install/templates/spec/spec_helper.rb.tt +1 -1
- data/lib/generators/rspec/scaffold/templates/controller_spec.rb +1 -1
- data/lib/rspec/rails.rb +1 -1
- data/lib/rspec/rails/example/controller_example_group.rb +4 -2
- data/lib/rspec/rails/example/rails_example_group.rb +1 -2
- data/lib/rspec/rails/example/view_example_group.rb +1 -1
- data/lib/rspec/rails/fixture_support.rb +1 -1
- data/lib/rspec/rails/version.rb +1 -1
- metadata +5 -182
- data/features/Autotest.md +0 -24
- data/features/Generators.md +0 -8
- data/features/GettingStarted.md +0 -84
- data/features/README.md +0 -56
- data/features/RailsVersions.md +0 -4
- data/features/Transactions.md +0 -84
- data/features/Upgrade.md +0 -121
- data/features/controller_specs/Cookies.md +0 -57
- data/features/controller_specs/README.md +0 -45
- data/features/controller_specs/anonymous_controller.feature +0 -378
- data/features/controller_specs/bypass_rescue.feature +0 -75
- data/features/controller_specs/controller_spec.feature +0 -35
- data/features/controller_specs/engine_routes.feature +0 -51
- data/features/controller_specs/isolation_from_views.feature +0 -87
- data/features/controller_specs/render_views.feature +0 -114
- data/features/feature_specs/feature_spec.feature +0 -34
- data/features/helper_specs/helper_spec.feature +0 -122
- data/features/mailer_specs/url_helpers.feature +0 -38
- data/features/matchers/README.md +0 -18
- data/features/matchers/new_record_matcher.feature +0 -41
- data/features/matchers/redirect_to_matcher.feature +0 -40
- data/features/matchers/relation_match_array.feature +0 -22
- data/features/matchers/render_template_matcher.feature +0 -49
- data/features/mocks/mock_model.feature +0 -147
- data/features/mocks/stub_model.feature +0 -58
- data/features/model_specs/README.md +0 -21
- data/features/model_specs/errors_on.feature +0 -51
- data/features/model_specs/transactional_examples.feature +0 -109
- data/features/request_specs/request_spec.feature +0 -49
- data/features/routing_specs/README.md +0 -16
- data/features/routing_specs/be_routable_matcher.feature +0 -80
- data/features/routing_specs/engine_routes.feature +0 -38
- data/features/routing_specs/named_routes.feature +0 -18
- data/features/routing_specs/route_to_matcher.feature +0 -90
- data/features/step_definitions/additional_cli_steps.rb +0 -4
- data/features/step_definitions/model_steps.rb +0 -3
- data/features/support/env.rb +0 -53
- data/features/support/rails_versions.rb +0 -4
- data/features/view_specs/inferred_controller_path.feature +0 -45
- data/features/view_specs/stub_template.feature +0 -51
- data/features/view_specs/view_spec.feature +0 -206
- data/lib/rspec/rails/rails_version.rb +0 -17
- data/spec/autotest/rails_rspec2_spec.rb +0 -36
- data/spec/generators/rspec/controller/controller_generator_spec.rb +0 -97
- data/spec/generators/rspec/helper/helper_generator_spec.rb +0 -30
- data/spec/generators/rspec/install/install_generator_spec.rb +0 -30
- data/spec/generators/rspec/integration/integration_generator_spec.rb +0 -44
- data/spec/generators/rspec/mailer/mailer_generator_spec.rb +0 -48
- data/spec/generators/rspec/model/model_generator_spec.rb +0 -52
- data/spec/generators/rspec/observer/observer_generator_spec.rb +0 -21
- data/spec/generators/rspec/scaffold/scaffold_generator_spec.rb +0 -138
- data/spec/generators/rspec/view/view_generator_spec.rb +0 -41
- data/spec/rspec/rails/assertion_adapter_spec.rb +0 -28
- data/spec/rspec/rails/assertion_delegator_spec.rb +0 -43
- data/spec/rspec/rails/configuration_spec.rb +0 -26
- data/spec/rspec/rails/deprecations_spec.rb +0 -18
- data/spec/rspec/rails/example/controller_example_group_spec.rb +0 -100
- data/spec/rspec/rails/example/feature_example_group_spec.rb +0 -56
- data/spec/rspec/rails/example/helper_example_group_spec.rb +0 -64
- data/spec/rspec/rails/example/mailer_example_group_spec.rb +0 -21
- data/spec/rspec/rails/example/model_example_group_spec.rb +0 -15
- data/spec/rspec/rails/example/request_example_group_spec.rb +0 -17
- data/spec/rspec/rails/example/routing_example_group_spec.rb +0 -32
- data/spec/rspec/rails/example/view_example_group_spec.rb +0 -220
- data/spec/rspec/rails/extensions/active_model/errors_on_spec.rb +0 -23
- data/spec/rspec/rails/extensions/active_record/base_spec.rb +0 -42
- data/spec/rspec/rails/extensions/active_record/records_spec.rb +0 -9
- data/spec/rspec/rails/fixture_support_spec.rb +0 -17
- data/spec/rspec/rails/matchers/be_a_new_spec.rb +0 -142
- data/spec/rspec/rails/matchers/be_new_record_spec.rb +0 -33
- data/spec/rspec/rails/matchers/be_routable_spec.rb +0 -41
- data/spec/rspec/rails/matchers/be_valid_spec.rb +0 -44
- data/spec/rspec/rails/matchers/errors_on_spec.rb +0 -38
- data/spec/rspec/rails/matchers/has_spec.rb +0 -29
- data/spec/rspec/rails/matchers/have_rendered_spec.rb +0 -93
- data/spec/rspec/rails/matchers/redirect_to_spec.rb +0 -80
- data/spec/rspec/rails/matchers/relation_match_array_spec.rb +0 -31
- data/spec/rspec/rails/matchers/route_to_spec.rb +0 -151
- data/spec/rspec/rails/minitest_lifecycle_adapter_spec.rb +0 -22
- data/spec/rspec/rails/mocks/mock_model_spec.rb +0 -379
- data/spec/rspec/rails/mocks/stub_model_spec.rb +0 -154
- data/spec/rspec/rails/rails_version_spec.rb +0 -29
- data/spec/rspec/rails/setup_and_teardown_adapter_spec.rb +0 -32
- data/spec/rspec/rails/view_rendering_spec.rb +0 -111
- data/spec/spec_helper.rb +0 -31
- data/spec/support/ar_classes.rb +0 -42
- data/spec/support/helpers.rb +0 -20
- data/spec/support/matchers.rb +0 -9
- data/spec/support/null_object.rb +0 -6
@@ -1,154 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe "stub_model" do
|
4
|
-
|
5
|
-
shared_examples_for "stub model" do
|
6
|
-
describe "with a block" do
|
7
|
-
it "yields the model" do
|
8
|
-
model = stub_model(model_class) do |block_arg|
|
9
|
-
@block_arg = block_arg
|
10
|
-
end
|
11
|
-
model.should be(@block_arg)
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
15
|
-
describe "#persisted?" do
|
16
|
-
context "default" do
|
17
|
-
it "returns true" do
|
18
|
-
model = stub_model(model_class)
|
19
|
-
model.should be_persisted
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
|
-
context "with as_new_record" do
|
24
|
-
it "returns false" do
|
25
|
-
model = stub_model(model_class).as_new_record
|
26
|
-
model.should_not be_persisted
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
31
|
-
it "increments the value returned by to_param" do
|
32
|
-
first = stub_model(model_class)
|
33
|
-
second = stub_model(model_class)
|
34
|
-
second.to_param.to_i.should == (first.to_param.to_i + 1)
|
35
|
-
end
|
36
|
-
|
37
|
-
describe "#blank?" do
|
38
|
-
it "is false" do
|
39
|
-
stub_model(model_class).should_not be_blank
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
context "with ActiveModel (not ActiveRecord)" do
|
45
|
-
it_behaves_like "stub model" do
|
46
|
-
def model_class
|
47
|
-
NonActiveRecordModel
|
48
|
-
end
|
49
|
-
end
|
50
|
-
end
|
51
|
-
|
52
|
-
context "with an ActiveRecord model" do
|
53
|
-
let(:model_class) { MockableModel }
|
54
|
-
|
55
|
-
it_behaves_like "stub model"
|
56
|
-
|
57
|
-
describe "#new_record?" do
|
58
|
-
context "default" do
|
59
|
-
it "returns false" do
|
60
|
-
model = stub_model(model_class)
|
61
|
-
model.new_record?.should be_false
|
62
|
-
end
|
63
|
-
end
|
64
|
-
|
65
|
-
context "with as_new_record" do
|
66
|
-
it "returns true" do
|
67
|
-
model = stub_model(model_class).as_new_record
|
68
|
-
model.new_record?.should be_true
|
69
|
-
end
|
70
|
-
end
|
71
|
-
end
|
72
|
-
|
73
|
-
describe "defaults" do
|
74
|
-
it "has an id" do
|
75
|
-
stub_model(MockableModel).id.should be > 0
|
76
|
-
end
|
77
|
-
|
78
|
-
it "says it is not a new record" do
|
79
|
-
stub_model(MockableModel).should_not be_new_record
|
80
|
-
end
|
81
|
-
end
|
82
|
-
|
83
|
-
describe "#as_new_record" do
|
84
|
-
it "has a nil id" do
|
85
|
-
stub_model(MockableModel).as_new_record.id.should be(nil)
|
86
|
-
end
|
87
|
-
end
|
88
|
-
|
89
|
-
it "raises when hitting the db" do
|
90
|
-
lambda do
|
91
|
-
stub_model(MockableModel).connection
|
92
|
-
end.should raise_error(RSpec::Rails::IllegalDataAccessException, /stubbed models are not allowed to access the database/)
|
93
|
-
end
|
94
|
-
|
95
|
-
it "increments the id" do
|
96
|
-
first = stub_model(model_class)
|
97
|
-
second = stub_model(model_class)
|
98
|
-
second.id.should == (first.id + 1)
|
99
|
-
end
|
100
|
-
|
101
|
-
it "accepts a stub id" do
|
102
|
-
stub_model(MockableModel, :id => 37).id.should == 37
|
103
|
-
end
|
104
|
-
|
105
|
-
it "says it is a new record when id is set to nil" do
|
106
|
-
stub_model(MockableModel, :id => nil).should be_new_record
|
107
|
-
end
|
108
|
-
|
109
|
-
it "accepts a stub for save" do
|
110
|
-
stub_model(MockableModel, :save => false).save.should be(false)
|
111
|
-
end
|
112
|
-
|
113
|
-
describe "alternate primary key" do
|
114
|
-
it "has the correct primary_key name" do
|
115
|
-
stub_model(AlternatePrimaryKeyModel).class.primary_key.to_s.should eq('my_id')
|
116
|
-
end
|
117
|
-
|
118
|
-
it "has a primary_key" do
|
119
|
-
stub_model(AlternatePrimaryKeyModel).my_id.should be > 0
|
120
|
-
end
|
121
|
-
|
122
|
-
it "says it is not a new record" do
|
123
|
-
stub_model(AlternatePrimaryKeyModel) do |m|
|
124
|
-
m.should_not be_new_record
|
125
|
-
end
|
126
|
-
end
|
127
|
-
|
128
|
-
it "says it is a new record if primary_key is nil" do
|
129
|
-
stub_model(AlternatePrimaryKeyModel, :my_id => nil).should be_new_record
|
130
|
-
end
|
131
|
-
|
132
|
-
it "accepts a stub for the primary_key" do
|
133
|
-
stub_model(AlternatePrimaryKeyModel, :my_id => 5).my_id.should == 5
|
134
|
-
end
|
135
|
-
end
|
136
|
-
|
137
|
-
describe "as association" do
|
138
|
-
before(:each) do
|
139
|
-
@real = AssociatedModel.create!
|
140
|
-
@stub_model = stub_model(MockableModel)
|
141
|
-
@real.mockable_model = @stub_model
|
142
|
-
end
|
143
|
-
|
144
|
-
it "passes associated_model == mock" do
|
145
|
-
@stub_model.should == @real.mockable_model
|
146
|
-
end
|
147
|
-
|
148
|
-
it "passes mock == associated_model" do
|
149
|
-
@real.mockable_model.should == @stub_model
|
150
|
-
end
|
151
|
-
end
|
152
|
-
|
153
|
-
end
|
154
|
-
end
|
@@ -1,29 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
describe RSpec::Rails, "version" do
|
4
|
-
def clear_memoized_version
|
5
|
-
if RSpec::Rails.instance_variable_defined?(:@rails_version)
|
6
|
-
RSpec::Rails.send(:remove_instance_variable, :@rails_version)
|
7
|
-
end
|
8
|
-
end
|
9
|
-
|
10
|
-
before { clear_memoized_version }
|
11
|
-
after { clear_memoized_version }
|
12
|
-
|
13
|
-
describe "#rails_version_satisfied_by?" do
|
14
|
-
it "checks whether the gem version constraint is satisfied by the Rails version" do
|
15
|
-
::Rails.stub(:version).and_return(Gem::Version.new("4.0.0"))
|
16
|
-
|
17
|
-
expect(RSpec::Rails.rails_version_satisfied_by?(">=3.2.0")).to be_true
|
18
|
-
expect(RSpec::Rails.rails_version_satisfied_by?("~>4.0.0")).to be_true
|
19
|
-
expect(RSpec::Rails.rails_version_satisfied_by?("~>3.2.0")).to be_false
|
20
|
-
end
|
21
|
-
|
22
|
-
it "operates correctly when the Rails version is a string (pre-Rails 4.0)" do
|
23
|
-
::Rails.stub(:version).and_return("3.2.1")
|
24
|
-
|
25
|
-
expect(RSpec::Rails.rails_version_satisfied_by?("~>3.2.0")).to be_true
|
26
|
-
expect(RSpec::Rails.rails_version_satisfied_by?("~>3.1.0")).to be_false
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
@@ -1,32 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe RSpec::Rails::SetupAndTeardownAdapter do
|
4
|
-
describe "::setup" do
|
5
|
-
it "registers before hooks in the order setup is received" do
|
6
|
-
klass = Class.new do
|
7
|
-
include RSpec::Rails::SetupAndTeardownAdapter
|
8
|
-
def self.foo; "foo"; end
|
9
|
-
def self.bar; "bar"; end
|
10
|
-
end
|
11
|
-
klass.should_receive(:before).ordered { |&block| block.call.should eq "foo" }
|
12
|
-
klass.should_receive(:before).ordered { |&block| block.call.should eq "bar" }
|
13
|
-
|
14
|
-
klass.setup :foo
|
15
|
-
klass.setup :bar
|
16
|
-
end
|
17
|
-
|
18
|
-
it "registers prepend_before hooks for the Rails' setup methods" do
|
19
|
-
klass = Class.new do
|
20
|
-
include RSpec::Rails::SetupAndTeardownAdapter
|
21
|
-
def self.setup_fixtures; "setup fixtures" end
|
22
|
-
def self.setup_controller_request_and_response; "setup controller" end
|
23
|
-
end
|
24
|
-
|
25
|
-
klass.should_receive(:prepend_before) { |&block| block.call.should eq "setup fixtures" }
|
26
|
-
klass.should_receive(:prepend_before) { |&block| block.call.should eq "setup controller" }
|
27
|
-
|
28
|
-
klass.setup :setup_fixtures
|
29
|
-
klass.setup :setup_controller_request_and_response
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
@@ -1,111 +0,0 @@
|
|
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
|
-
|
58
|
-
it "overrides the global config if render_views is enabled there" do
|
59
|
-
RSpec.configuration.stub(:render_views?).and_return true
|
60
|
-
group.render_views false
|
61
|
-
group.new.render_views?.should be_false
|
62
|
-
end
|
63
|
-
end
|
64
|
-
|
65
|
-
context "in a nested group" do
|
66
|
-
let(:nested_group) do
|
67
|
-
group.describe{}
|
68
|
-
end
|
69
|
-
|
70
|
-
context "with no args" do
|
71
|
-
it "tells examples to render views" do
|
72
|
-
nested_group.render_views
|
73
|
-
nested_group.new.render_views?.should be_true
|
74
|
-
end
|
75
|
-
end
|
76
|
-
|
77
|
-
context "with true" do
|
78
|
-
it "tells examples to render views" do
|
79
|
-
nested_group.render_views true
|
80
|
-
nested_group.new.render_views?.should be_true
|
81
|
-
end
|
82
|
-
end
|
83
|
-
|
84
|
-
context "with false" do
|
85
|
-
it "tells examples not to render views" do
|
86
|
-
nested_group.render_views false
|
87
|
-
nested_group.new.render_views?.should be_false
|
88
|
-
end
|
89
|
-
end
|
90
|
-
|
91
|
-
it "leaves the parent group as/is" do
|
92
|
-
group.render_views
|
93
|
-
nested_group.render_views false
|
94
|
-
group.new.render_views?.should be_true
|
95
|
-
end
|
96
|
-
|
97
|
-
it "overrides the value inherited from the parent group" do
|
98
|
-
group.render_views
|
99
|
-
nested_group.render_views false
|
100
|
-
nested_group.new.render_views?.should be_false
|
101
|
-
end
|
102
|
-
|
103
|
-
it "passes override to children" do
|
104
|
-
group.render_views
|
105
|
-
nested_group.render_views false
|
106
|
-
nested_group.describe{}.new.render_views?.should be_false
|
107
|
-
end
|
108
|
-
end
|
109
|
-
end
|
110
|
-
end
|
111
|
-
end
|
data/spec/spec_helper.rb
DELETED
@@ -1,31 +0,0 @@
|
|
1
|
-
require 'rails/all'
|
2
|
-
|
3
|
-
module RSpecRails
|
4
|
-
class Application < ::Rails::Application
|
5
|
-
end
|
6
|
-
end
|
7
|
-
|
8
|
-
require 'rspec/rails'
|
9
|
-
require 'ammeter/init'
|
10
|
-
|
11
|
-
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
|
12
|
-
|
13
|
-
class RSpec::Core::ExampleGroup
|
14
|
-
def self.run_all(reporter=nil)
|
15
|
-
run(reporter || RSpec::Mocks::Mock.new('reporter').as_null_object)
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
RSpec.configure do |config|
|
20
|
-
config.treat_symbols_as_metadata_keys_with_true_values = true
|
21
|
-
config.filter_run :focus
|
22
|
-
config.run_all_when_everything_filtered = true
|
23
|
-
config.before(:each) do
|
24
|
-
@real_world = RSpec.world
|
25
|
-
RSpec.instance_variable_set(:@world, RSpec::Core::World.new)
|
26
|
-
end
|
27
|
-
config.after(:each) do
|
28
|
-
RSpec.instance_variable_set(:@world, @real_world)
|
29
|
-
end
|
30
|
-
config.order = :random
|
31
|
-
end
|
data/spec/support/ar_classes.rb
DELETED
@@ -1,42 +0,0 @@
|
|
1
|
-
ActiveRecord::Base.establish_connection(
|
2
|
-
:adapter => 'sqlite3',
|
3
|
-
:database => ':memory:'
|
4
|
-
)
|
5
|
-
|
6
|
-
module Connections
|
7
|
-
def self.extended(host)
|
8
|
-
host.connection.execute <<-eosql
|
9
|
-
CREATE TABLE #{host.table_name} (
|
10
|
-
#{host.primary_key} integer PRIMARY KEY AUTOINCREMENT,
|
11
|
-
associated_model_id integer,
|
12
|
-
mockable_model_id integer,
|
13
|
-
nonexistent_model_id integer
|
14
|
-
)
|
15
|
-
eosql
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
class NonActiveRecordModel
|
20
|
-
extend ActiveModel::Naming
|
21
|
-
include ActiveModel::Conversion
|
22
|
-
end
|
23
|
-
|
24
|
-
class MockableModel < ActiveRecord::Base
|
25
|
-
extend Connections
|
26
|
-
has_one :associated_model
|
27
|
-
end
|
28
|
-
|
29
|
-
class SubMockableModel < MockableModel
|
30
|
-
end
|
31
|
-
|
32
|
-
class AssociatedModel < ActiveRecord::Base
|
33
|
-
extend Connections
|
34
|
-
belongs_to :mockable_model
|
35
|
-
belongs_to :nonexistent_model, :class_name => "Other"
|
36
|
-
end
|
37
|
-
|
38
|
-
class AlternatePrimaryKeyModel < ActiveRecord::Base
|
39
|
-
self.primary_key = :my_id
|
40
|
-
extend Connections
|
41
|
-
attr_accessor :my_id
|
42
|
-
end
|
data/spec/support/helpers.rb
DELETED
@@ -1,20 +0,0 @@
|
|
1
|
-
module Helpers
|
2
|
-
def stub_metadata(additional_metadata)
|
3
|
-
stub_metadata = metadata_with(additional_metadata)
|
4
|
-
RSpec::Core::ExampleGroup.stub(:metadata) { stub_metadata }
|
5
|
-
end
|
6
|
-
|
7
|
-
def metadata_with(additional_metadata)
|
8
|
-
m = RSpec::Core::Metadata.new
|
9
|
-
m.process("example group")
|
10
|
-
|
11
|
-
group_metadata = additional_metadata.delete(:example_group)
|
12
|
-
if group_metadata
|
13
|
-
m[:example_group].merge!(group_metadata)
|
14
|
-
end
|
15
|
-
m.merge!(additional_metadata)
|
16
|
-
m
|
17
|
-
end
|
18
|
-
|
19
|
-
RSpec.configure {|c| c.include self}
|
20
|
-
end
|
data/spec/support/matchers.rb
DELETED