rspec 0.8.2 → 0.9.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/CHANGES +125 -9
- data/EXAMPLES.rd +50 -27
- data/README +14 -1
- data/Rakefile +95 -42
- data/UPGRADE +31 -0
- data/bin/spec +0 -1
- data/bin/spec_translator +6 -0
- data/examples/auto_spec_description_example.rb +19 -0
- data/examples/{setup_teardown_example.rb → before_and_after_example.rb} +6 -6
- data/examples/behave_as_example.rb +45 -0
- data/examples/custom_expectation_matchers.rb +13 -12
- data/examples/dynamic_spec.rb +2 -2
- data/examples/file_accessor_spec.rb +2 -2
- data/examples/greeter_spec.rb +3 -3
- data/examples/helper_method_example.rb +2 -2
- data/examples/io_processor_spec.rb +4 -4
- data/examples/legacy_spec.rb +10 -0
- data/examples/mocking_example.rb +5 -5
- data/examples/multi_threaded_behaviour_runner.rb +25 -0
- data/examples/partial_mock_example.rb +4 -4
- data/examples/predicate_example.rb +4 -4
- data/examples/priority.txt +1 -0
- data/examples/shared_behaviours_example.rb +31 -0
- data/examples/stack_spec.rb +52 -69
- data/examples/stubbing_example.rb +10 -10
- data/examples/test_case_adapter_example.rb +26 -0
- data/examples/test_case_spec.rb +6 -6
- data/lib/spec.rb +9 -4
- data/lib/spec/dsl.rb +10 -0
- data/lib/spec/dsl/behaviour.rb +189 -0
- data/lib/spec/dsl/behaviour_callbacks.rb +43 -0
- data/lib/spec/dsl/behaviour_eval.rb +170 -0
- data/lib/spec/dsl/behaviour_factory.rb +32 -0
- data/lib/spec/dsl/composite_proc_builder.rb +28 -0
- data/lib/spec/dsl/configuration.rb +38 -0
- data/lib/spec/dsl/description.rb +34 -0
- data/lib/spec/dsl/example.rb +114 -0
- data/lib/spec/dsl/example_matcher.rb +28 -0
- data/lib/spec/{runner/spec_should_raise_handler.rb → dsl/example_should_raise_handler.rb} +4 -4
- data/lib/spec/expectations.rb +0 -3
- data/lib/spec/expectations/differs/default.rb +0 -1
- data/lib/spec/expectations/extensions.rb +0 -1
- data/lib/spec/expectations/extensions/object.rb +10 -53
- data/lib/spec/expectations/handler.rb +14 -18
- data/lib/spec/extensions.rb +1 -0
- data/lib/spec/extensions/object.rb +6 -0
- data/lib/spec/matchers.rb +19 -21
- data/lib/spec/matchers/be.rb +40 -11
- data/lib/spec/matchers/be_close.rb +2 -2
- data/lib/spec/matchers/operator_matcher.rb +52 -0
- data/lib/spec/matchers/respond_to.rb +21 -11
- data/lib/spec/mocks.rb +5 -28
- data/lib/spec/mocks/argument_constraint_matchers.rb +12 -0
- data/lib/spec/mocks/argument_expectation.rb +7 -4
- data/lib/spec/mocks/methods.rb +11 -16
- data/lib/spec/mocks/mock.rb +6 -3
- data/lib/spec/mocks/{mock_handler.rb → proxy.rb} +4 -7
- data/lib/spec/mocks/space.rb +28 -0
- data/lib/spec/mocks/spec_methods.rb +30 -0
- data/lib/spec/rake/spectask.rb +23 -21
- data/lib/spec/rake/verify_rcov.rb +1 -0
- data/lib/spec/runner.rb +88 -35
- data/lib/spec/runner/backtrace_tweaker.rb +2 -1
- data/lib/spec/runner/behaviour_runner.rb +102 -0
- data/lib/spec/runner/command_line.rb +5 -17
- data/lib/spec/runner/drb_command_line.rb +2 -2
- data/lib/spec/runner/extensions/kernel.rb +22 -9
- data/lib/spec/runner/formatter.rb +4 -0
- data/lib/spec/runner/formatter/base_formatter.rb +63 -0
- data/lib/spec/runner/formatter/base_text_formatter.rb +22 -52
- data/lib/spec/runner/formatter/failing_behaviours_formatter.rb +25 -0
- data/lib/spec/runner/formatter/failing_examples_formatter.rb +22 -0
- data/lib/spec/runner/formatter/html_formatter.rb +74 -29
- data/lib/spec/runner/formatter/progress_bar_formatter.rb +6 -8
- data/lib/spec/runner/formatter/rdoc_formatter.rb +6 -6
- data/lib/spec/runner/formatter/snippet_extractor.rb +52 -0
- data/lib/spec/runner/formatter/specdoc_formatter.rb +6 -6
- data/lib/spec/runner/heckle_runner.rb +8 -7
- data/lib/spec/runner/option_parser.rb +136 -55
- data/lib/spec/runner/options.rb +26 -0
- data/lib/spec/runner/reporter.rb +38 -31
- data/lib/spec/runner/spec_parser.rb +22 -13
- data/lib/spec/test_case_adapter.rb +10 -0
- data/lib/spec/translator.rb +103 -86
- data/lib/spec/version.rb +7 -15
- data/plugins/mock_frameworks/flexmock.rb +27 -0
- data/plugins/mock_frameworks/mocha.rb +21 -0
- data/plugins/mock_frameworks/rspec.rb +18 -0
- data/spec/spec/dsl/behaviour_eval_spec.rb +49 -0
- data/spec/spec/dsl/behaviour_factory_spec.rb +30 -0
- data/spec/spec/dsl/behaviour_spec.rb +508 -0
- data/spec/spec/dsl/composite_proc_builder_spec.rb +57 -0
- data/spec/spec/dsl/configuration_spec.rb +43 -0
- data/spec/spec/dsl/description_spec.rb +51 -0
- data/spec/spec/dsl/example_class_spec.rb +24 -0
- data/spec/spec/dsl/example_instance_spec.rb +140 -0
- data/spec/spec/dsl/example_should_raise_spec.rb +137 -0
- data/spec/spec/dsl/predicate_matcher_spec.rb +21 -0
- data/spec/spec/dsl/shared_behaviour_spec.rb +186 -0
- data/spec/spec/expectations/differs/default_spec.rb +12 -12
- data/spec/spec/expectations/extensions/object_spec.rb +10 -10
- data/spec/spec/expectations/fail_with_spec.rb +20 -20
- data/spec/spec/matchers/be_close_spec.rb +37 -31
- data/spec/spec/matchers/be_spec.rb +50 -41
- data/spec/spec/matchers/change_spec.rb +54 -54
- data/spec/spec/matchers/description_generation_spec.rb +43 -31
- data/spec/spec/matchers/eql_spec.rb +24 -37
- data/spec/spec/matchers/equal_spec.rb +24 -37
- data/spec/spec/matchers/exist_spec.rb +48 -0
- data/spec/spec/matchers/handler_spec.rb +36 -23
- data/spec/spec/matchers/has_spec.rb +8 -8
- data/spec/spec/matchers/have_spec.rb +38 -38
- data/spec/spec/matchers/include_spec.rb +6 -6
- data/spec/spec/matchers/match_spec.rb +8 -8
- data/spec/spec/matchers/matcher_methods_spec.rb +24 -31
- data/spec/spec/matchers/raise_error_spec.rb +34 -34
- data/spec/spec/matchers/respond_to_spec.rb +32 -8
- data/spec/spec/matchers/satisfy_spec.rb +6 -6
- data/spec/spec/matchers/should_===_spec.rb +38 -0
- data/spec/spec/matchers/should_==_spec.rb +37 -0
- data/spec/spec/matchers/should_=~_spec.rb +36 -0
- data/spec/spec/matchers/throw_symbol_spec.rb +47 -55
- data/spec/spec/mocks/any_number_of_times_spec.rb +16 -21
- data/spec/spec/mocks/argument_expectation_spec.rb +3 -3
- data/spec/spec/mocks/at_least_spec.rb +30 -30
- data/spec/spec/mocks/at_most_spec.rb +53 -57
- data/spec/spec/mocks/bug_report_10260_spec.rb +8 -0
- data/spec/spec/mocks/bug_report_7611_spec.rb +3 -3
- data/spec/spec/mocks/bug_report_7805_spec.rb +3 -3
- data/spec/spec/mocks/bug_report_8165_spec.rb +5 -5
- data/spec/spec/mocks/bug_report_8302_spec.rb +5 -5
- data/spec/spec/mocks/failing_mock_argument_constraints_spec.rb +26 -27
- data/spec/spec/mocks/mock_ordering_spec.rb +19 -15
- data/spec/spec/mocks/mock_space_spec.rb +54 -0
- data/spec/spec/mocks/mock_spec.rb +111 -141
- data/spec/spec/mocks/multiple_return_value_spec.rb +48 -48
- data/spec/spec/mocks/null_object_mock_spec.rb +10 -10
- data/spec/spec/mocks/once_counts_spec.rb +32 -35
- data/spec/spec/mocks/options_hash_spec.rb +12 -10
- data/spec/spec/mocks/partial_mock_spec.rb +15 -15
- data/spec/spec/mocks/partial_mock_using_mocks_directly_spec.rb +24 -22
- data/spec/spec/mocks/passing_mock_argument_constraints_spec.rb +19 -19
- data/spec/spec/mocks/precise_counts_spec.rb +28 -32
- data/spec/spec/mocks/record_messages_spec.rb +10 -10
- data/spec/spec/mocks/stub_spec.rb +45 -45
- data/spec/spec/mocks/twice_counts_spec.rb +21 -21
- data/spec/spec/package/bin_spec_spec.rb +12 -0
- data/spec/spec/runner/behaviour_runner_spec.rb +114 -0
- data/spec/spec/runner/command_line_spec.rb +8 -8
- data/spec/spec/runner/context_matching_spec.rb +14 -15
- data/spec/spec/runner/drb_command_line_spec.rb +12 -12
- data/spec/spec/runner/execution_context_spec.rb +8 -29
- data/spec/spec/runner/extensions/kernel_spec.rb +36 -0
- data/spec/spec/runner/formatter/failing_behaviours_formatter_spec.rb +27 -0
- data/spec/spec/runner/formatter/failing_examples_formatter_spec.rb +28 -0
- data/spec/spec/runner/formatter/html_formatter_spec.rb +9 -8
- data/spec/spec/runner/formatter/progress_bar_formatter_dry_run_spec.rb +6 -6
- data/spec/spec/runner/formatter/progress_bar_formatter_failure_dump_spec.rb +10 -10
- data/spec/spec/runner/formatter/progress_bar_formatter_spec.rb +22 -27
- data/spec/spec/runner/formatter/rdoc_formatter_dry_run_spec.rb +6 -5
- data/spec/spec/runner/formatter/rdoc_formatter_spec.rb +17 -17
- data/spec/spec/runner/formatter/snippet_extractor_spec.rb +11 -0
- data/spec/spec/runner/formatter/specdoc_formatter_dry_run_spec.rb +6 -6
- data/spec/spec/runner/formatter/specdoc_formatter_spec.rb +17 -17
- data/spec/spec/runner/heckle_runner_spec.rb +21 -21
- data/spec/spec/runner/heckler_spec.rb +5 -5
- data/spec/spec/runner/noisy_backtrace_tweaker_spec.rb +12 -12
- data/spec/spec/runner/object_ext_spec.rb +3 -3
- data/spec/spec/runner/option_parser_spec.rb +171 -102
- data/spec/spec/runner/quiet_backtrace_tweaker_spec.rb +21 -12
- data/spec/spec/runner/reporter_spec.rb +106 -97
- data/spec/spec/runner/spec_matcher_spec.rb +46 -51
- data/spec/spec/runner/spec_parser_spec.rb +72 -16
- data/spec/spec/spec_classes.rb +12 -3
- data/spec/spec/translator_spec.rb +165 -36
- metadata +66 -76
- data/RELEASE-PLAN +0 -117
- data/examples/auto_spec_name_generation_example.rb +0 -18
- data/lib/spec/callback.rb +0 -11
- data/lib/spec/callback/callback_container.rb +0 -60
- data/lib/spec/callback/extensions/module.rb +0 -24
- data/lib/spec/callback/extensions/object.rb +0 -37
- data/lib/spec/deprecated.rb +0 -3
- data/lib/spec/expectations/extensions/proc.rb +0 -57
- data/lib/spec/expectations/should.rb +0 -5
- data/lib/spec/expectations/should/base.rb +0 -64
- data/lib/spec/expectations/should/change.rb +0 -69
- data/lib/spec/expectations/should/have.rb +0 -128
- data/lib/spec/expectations/should/not.rb +0 -74
- data/lib/spec/expectations/should/should.rb +0 -81
- data/lib/spec/expectations/sugar.rb +0 -47
- data/lib/spec/runner/context.rb +0 -154
- data/lib/spec/runner/context_eval.rb +0 -142
- data/lib/spec/runner/context_runner.rb +0 -55
- data/lib/spec/runner/execution_context.rb +0 -17
- data/lib/spec/runner/spec_matcher.rb +0 -25
- data/lib/spec/runner/specification.rb +0 -114
- data/spec/spec/callback/callback_container_spec.rb +0 -27
- data/spec/spec/callback/module_spec.rb +0 -37
- data/spec/spec/callback/object_spec.rb +0 -90
- data/spec/spec/callback/object_with_class_callback_spec.rb +0 -19
- data/spec/spec/expectations/should/should_==_spec.rb +0 -19
- data/spec/spec/expectations/should/should_=~_spec.rb +0 -13
- data/spec/spec/expectations/should/should_be_a_kind_of_spec.rb +0 -21
- data/spec/spec/expectations/should/should_be_an_instance_of_spec.rb +0 -30
- data/spec/spec/expectations/should/should_be_arbitrary_predicate_spec.rb +0 -81
- data/spec/spec/expectations/should/should_be_close_spec.rb +0 -18
- data/spec/spec/expectations/should/should_be_comparison_operator_spec.rb +0 -44
- data/spec/spec/expectations/should/should_be_false_spec.rb +0 -39
- data/spec/spec/expectations/should/should_be_spec.rb +0 -11
- data/spec/spec/expectations/should/should_be_true_spec.rb +0 -27
- data/spec/spec/expectations/should/should_change_spec.rb +0 -184
- data/spec/spec/expectations/should/should_eql_spec.rb +0 -11
- data/spec/spec/expectations/should/should_equal_spec.rb +0 -11
- data/spec/spec/expectations/should/should_have_at_least_spec.rb +0 -53
- data/spec/spec/expectations/should/should_have_at_most_spec.rb +0 -45
- data/spec/spec/expectations/should/should_have_key_spec.rb +0 -21
- data/spec/spec/expectations/should/should_have_spec.rb +0 -64
- data/spec/spec/expectations/should/should_include_spec.rb +0 -59
- data/spec/spec/expectations/should/should_match_spec.rb +0 -25
- data/spec/spec/expectations/should/should_not_==_spec.rb +0 -15
- data/spec/spec/expectations/should/should_not_be_a_kind_of_spec.rb +0 -21
- data/spec/spec/expectations/should/should_not_be_an_instance_of_spec.rb +0 -11
- data/spec/spec/expectations/should/should_not_be_arbitrary_predicate_spec.rb +0 -68
- data/spec/spec/expectations/should/should_not_be_spec.rb +0 -11
- data/spec/spec/expectations/should/should_not_change_spec.rb +0 -24
- data/spec/spec/expectations/should/should_not_eql_spec.rb +0 -11
- data/spec/spec/expectations/should/should_not_equal_spec.rb +0 -11
- data/spec/spec/expectations/should/should_not_have_key_spec.rb +0 -15
- data/spec/spec/expectations/should/should_not_include_spec.rb +0 -58
- data/spec/spec/expectations/should/should_not_match_spec.rb +0 -11
- data/spec/spec/expectations/should/should_not_raise_spec.rb +0 -75
- data/spec/spec/expectations/should/should_not_respond_to_spec.rb +0 -15
- data/spec/spec/expectations/should/should_not_throw_spec.rb +0 -35
- data/spec/spec/expectations/should/should_raise_spec.rb +0 -66
- data/spec/spec/expectations/should/should_respond_to_spec.rb +0 -15
- data/spec/spec/expectations/should/should_satisfy_spec.rb +0 -35
- data/spec/spec/expectations/should/should_throw_spec.rb +0 -27
- data/spec/spec/runner/context_runner_spec.rb +0 -100
- data/spec/spec/runner/context_spec.rb +0 -405
- data/spec/spec/runner/kernel_ext_spec.rb +0 -16
- data/spec/spec/runner/spec_name_generation_spec.rb +0 -102
- data/spec/spec/runner/specification_class_spec.rb +0 -72
- data/spec/spec/runner/specification_instance_spec.rb +0 -160
- data/spec/spec/runner/specification_should_raise_spec.rb +0 -136
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
-
|
|
3
|
-
context "should_eql" do
|
|
4
|
-
specify "should pass when objects are equal (by value)" do
|
|
5
|
-
"apples".should_eql("apples")
|
|
6
|
-
end
|
|
7
|
-
|
|
8
|
-
specify "should fail when objects are not equal (by value)" do
|
|
9
|
-
lambda { "apples".should_eql("cadillacs") }.should_fail_with "expected \"cadillacs\", got \"apples\" (using .eql?)"
|
|
10
|
-
end
|
|
11
|
-
end
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
-
|
|
3
|
-
context "should_equal" do
|
|
4
|
-
specify "should pass when objects are the same instance" do
|
|
5
|
-
:apple.should_equal(:apple)
|
|
6
|
-
end
|
|
7
|
-
|
|
8
|
-
specify "should fail when objects are not the same instance" do
|
|
9
|
-
lambda { "apple".should_equal("apple") }.should_fail_with "expected \"apple\", got \"apple\" (using .equal?)"
|
|
10
|
-
end
|
|
11
|
-
end
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
-
|
|
3
|
-
module Spec
|
|
4
|
-
module Expectations
|
|
5
|
-
module Helper
|
|
6
|
-
context "should_have_at_least" do
|
|
7
|
-
setup do
|
|
8
|
-
@owner = CollectionOwner.new
|
|
9
|
-
(1..3).each do |n|
|
|
10
|
-
@owner.add_to_collection_with_length_method(n)
|
|
11
|
-
@owner.add_to_collection_with_size_method(n)
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
specify "should not raise when expecting actual length" do
|
|
16
|
-
lambda do
|
|
17
|
-
@owner.should_have_at_least(3).items_in_collection_with_length_method
|
|
18
|
-
end.should_pass
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
specify "should not raise when expecting actual size" do
|
|
22
|
-
lambda do
|
|
23
|
-
@owner.should_have_at_least(3).items_in_collection_with_size_method
|
|
24
|
-
end.should_pass
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
specify "should not raise when expecting less than actual length" do
|
|
28
|
-
lambda do
|
|
29
|
-
@owner.should_have_at_least(2).items_in_collection_with_length_method
|
|
30
|
-
end.should_pass
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
specify "should not raise when expecting less than actual size" do
|
|
34
|
-
lambda do
|
|
35
|
-
@owner.should_have_at_least(2).items_in_collection_with_size_method
|
|
36
|
-
end.should_pass
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
specify "should raise when expecting more than actual length" do
|
|
40
|
-
lambda do
|
|
41
|
-
@owner.should_have_at_least(4).items_in_collection_with_length_method
|
|
42
|
-
end.should_fail
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
specify "should raise when expecting more than actual size" do
|
|
46
|
-
lambda do
|
|
47
|
-
@owner.should_have_at_least(4).items_in_collection_with_size_method
|
|
48
|
-
end.should_fail
|
|
49
|
-
end
|
|
50
|
-
end
|
|
51
|
-
end
|
|
52
|
-
end
|
|
53
|
-
end
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
-
|
|
3
|
-
module Spec
|
|
4
|
-
module Expectations
|
|
5
|
-
module Helper
|
|
6
|
-
context "should_have_at_most" do
|
|
7
|
-
setup do
|
|
8
|
-
@owner = CollectionOwner.new
|
|
9
|
-
(1..3).each do |n|
|
|
10
|
-
@owner.add_to_collection_with_length_method(n)
|
|
11
|
-
@owner.add_to_collection_with_size_method(n)
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
specify "should fail when expecting actual length" do
|
|
16
|
-
@owner.should_have_at_most(3).items_in_collection_with_length_method
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
specify "should fail when expecting actual size" do
|
|
20
|
-
@owner.should_have_at_most(3).items_in_collection_with_size_method
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
specify "should fail when expecting more than actual length" do
|
|
24
|
-
@owner.should_have_at_most(4).items_in_collection_with_length_method
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
specify "should fail when expecting more than actual size" do
|
|
28
|
-
@owner.should_have_at_most(4).items_in_collection_with_size_method
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
specify "should pass when expecting less than actual length" do
|
|
32
|
-
lambda do
|
|
33
|
-
@owner.should_have_at_most(2).items_in_collection_with_length_method
|
|
34
|
-
end.should_fail
|
|
35
|
-
end
|
|
36
|
-
|
|
37
|
-
specify "should pass when expecting less than actual size" do
|
|
38
|
-
lambda do
|
|
39
|
-
@owner.should_have_at_most(2).items_in_collection_with_size_method
|
|
40
|
-
end.should_fail
|
|
41
|
-
end
|
|
42
|
-
end
|
|
43
|
-
end
|
|
44
|
-
end
|
|
45
|
-
end
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
-
|
|
3
|
-
context "should_have_key" do
|
|
4
|
-
specify "should pass when key is present" do
|
|
5
|
-
lambda do
|
|
6
|
-
{"a" => 1}.should_have_key("a")
|
|
7
|
-
end.should_not_raise
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
specify "should fail when key is not present" do
|
|
11
|
-
lambda do
|
|
12
|
-
{"a" => 1}.should_have_key("b")
|
|
13
|
-
end.should_fail_with('expected #has_key?("b") to return true, got false')
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
specify "should fail when target does not respond to has_key?" do
|
|
17
|
-
lambda do
|
|
18
|
-
Object.new.should_have_key("b")
|
|
19
|
-
end.should_fail_with /target does not respond to #has_key\?/
|
|
20
|
-
end
|
|
21
|
-
end
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
-
|
|
3
|
-
module Spec
|
|
4
|
-
module Expectations
|
|
5
|
-
module Helper
|
|
6
|
-
context "should_have(n).items" do
|
|
7
|
-
setup do
|
|
8
|
-
@owner = CollectionOwner.new
|
|
9
|
-
(1..3).each do |n|
|
|
10
|
-
@owner.add_to_collection_with_length_method(n)
|
|
11
|
-
@owner.add_to_collection_with_size_method(n)
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
specify "should pass when expecting actual length" do
|
|
16
|
-
@owner.should_have(3).items_in_collection_with_length_method
|
|
17
|
-
@owner.should_have_exactly(3).items_in_collection_with_length_method
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
specify "should pass when expecting actual size" do
|
|
21
|
-
@owner.should_have(3).items_in_collection_with_size_method
|
|
22
|
-
@owner.should_have_exactly(3).items_in_collection_with_size_method
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
specify "should pass when expecting actual size with args" do
|
|
26
|
-
@owner.should_have(3).items_for("a")
|
|
27
|
-
@owner.should_have_exactly(3).items_for("a")
|
|
28
|
-
@owner.should_have(1).items_for("b")
|
|
29
|
-
@owner.should_have_exactly(1).items_for("b")
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
specify "should raise when expecting less than actual length" do
|
|
33
|
-
lambda do
|
|
34
|
-
@owner.should_have(2).items_in_collection_with_length_method
|
|
35
|
-
end.should_fail
|
|
36
|
-
end
|
|
37
|
-
|
|
38
|
-
specify "should raise when expecting less than actual length with exactly" do
|
|
39
|
-
lambda do
|
|
40
|
-
@owner.should_have_exactly(2).items_in_collection_with_length_method
|
|
41
|
-
end.should_fail
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
specify "should raise when expecting less than actual size" do
|
|
45
|
-
lambda do
|
|
46
|
-
@owner.should_have(2).items_in_collection_with_size_method
|
|
47
|
-
end.should_fail
|
|
48
|
-
end
|
|
49
|
-
|
|
50
|
-
specify "should raise when expecting more than actual length" do
|
|
51
|
-
lambda do
|
|
52
|
-
@owner.should_have(4).items_in_collection_with_length_method
|
|
53
|
-
end.should_fail
|
|
54
|
-
end
|
|
55
|
-
|
|
56
|
-
specify "should raise when expecting more than actual size" do
|
|
57
|
-
lambda do
|
|
58
|
-
@owner.should_have(4).items_in_collection_with_size_method
|
|
59
|
-
end.should_fail_with "expected 4 items_in_collection_with_size_method, got 3"
|
|
60
|
-
end
|
|
61
|
-
end
|
|
62
|
-
end
|
|
63
|
-
end
|
|
64
|
-
end
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
-
|
|
3
|
-
context "should_include" do
|
|
4
|
-
setup do
|
|
5
|
-
@dummy = "dummy"
|
|
6
|
-
@equal_dummy = "dummy"
|
|
7
|
-
@another_dummy = "another_dummy"
|
|
8
|
-
@nil_var = nil
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
specify "should fail when array inclusion is missing" do
|
|
12
|
-
lambda do
|
|
13
|
-
[1, 2, 3].should_include(5)
|
|
14
|
-
end.should_fail
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
specify "should fail when enumerable inclusion is missing" do
|
|
18
|
-
lambda do
|
|
19
|
-
IO.constants.should_include("BLAH")
|
|
20
|
-
end.should_fail
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
specify "should fail when hash inclusion is missing" do
|
|
24
|
-
lambda do
|
|
25
|
-
{"a" => 1}.should_include("b")
|
|
26
|
-
end.should_fail
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
specify "should fail when string inclusion is missing" do
|
|
30
|
-
lambda do
|
|
31
|
-
@dummy.should_include("abc")
|
|
32
|
-
end.should_fail
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
specify "should pass when array inclusion is present" do
|
|
36
|
-
lambda do
|
|
37
|
-
[1, 2, 3].should_include(2)
|
|
38
|
-
end.should_pass
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
specify "should pass when enumerable inclusion is present" do
|
|
42
|
-
lambda do
|
|
43
|
-
IO.constants.should_include("SEEK_SET")
|
|
44
|
-
end.should_pass
|
|
45
|
-
end
|
|
46
|
-
|
|
47
|
-
specify "should pass when hash inclusion is present" do
|
|
48
|
-
lambda do
|
|
49
|
-
{"a" => 1}.should_include("a")
|
|
50
|
-
end.should_pass
|
|
51
|
-
end
|
|
52
|
-
|
|
53
|
-
specify "should pass when string inclusion is present" do
|
|
54
|
-
lambda do
|
|
55
|
-
@dummy.should_include("mm")
|
|
56
|
-
end.should_pass
|
|
57
|
-
end
|
|
58
|
-
end
|
|
59
|
-
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
-
|
|
3
|
-
context "should_match" do
|
|
4
|
-
specify "should pass when objects match" do
|
|
5
|
-
"hi aslak".should_match(/aslak/)
|
|
6
|
-
end
|
|
7
|
-
|
|
8
|
-
specify "should fail objects do not match" do
|
|
9
|
-
lambda do
|
|
10
|
-
"hi aslak".should_match(/steve/)
|
|
11
|
-
end.should_fail
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
context "should_not_match" do
|
|
16
|
-
specify "should fail when objects match" do
|
|
17
|
-
lambda do
|
|
18
|
-
"hi aslak".should_not_match(/aslak/)
|
|
19
|
-
end.should_fail
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
specify "should pass objects do not match" do
|
|
23
|
-
"hi aslak".should_not_match(/steve/)
|
|
24
|
-
end
|
|
25
|
-
end
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
-
|
|
3
|
-
context "should_not ==" do
|
|
4
|
-
specify "should pass objects are not ==" do
|
|
5
|
-
lambda do
|
|
6
|
-
"apple".should_not == "cadillac"
|
|
7
|
-
end.should_pass
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
specify "should fail when objects are ==" do
|
|
11
|
-
lambda do
|
|
12
|
-
"apple".should_not == "apple"
|
|
13
|
-
end.should_fail_with "expected not == \"apple\", got \"apple\""
|
|
14
|
-
end
|
|
15
|
-
end
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
-
|
|
3
|
-
context "should_not_be_a_kind_of" do
|
|
4
|
-
specify "should fail when target is of specified class" do
|
|
5
|
-
lambda do
|
|
6
|
-
5.should_not_be_a_kind_of(Fixnum)
|
|
7
|
-
end.should_fail
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
specify "should fail when target is of subclass of specified class" do
|
|
11
|
-
lambda do
|
|
12
|
-
5.should_not_be_a_kind_of(Integer)
|
|
13
|
-
end.should_fail
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
specify "should pass when target is not specified class" do
|
|
17
|
-
lambda do
|
|
18
|
-
5.should_not_be_a_kind_of(String)
|
|
19
|
-
end.should_not_raise
|
|
20
|
-
end
|
|
21
|
-
end
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
-
|
|
3
|
-
context "should_not_be_an_instance_of" do
|
|
4
|
-
specify "should fail when target is of specified class" do
|
|
5
|
-
lambda { "hello".should_not_be_an_instance_of(String) }.should_fail
|
|
6
|
-
end
|
|
7
|
-
|
|
8
|
-
specify "should pass when target is not of specified class" do
|
|
9
|
-
[].should_not_be_an_instance_of(String)
|
|
10
|
-
end
|
|
11
|
-
end
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
-
|
|
3
|
-
module Spec
|
|
4
|
-
module Expectations
|
|
5
|
-
module Helper
|
|
6
|
-
context "should_not_be_arbitrary_predicate" do
|
|
7
|
-
specify "should fail when method returns something other than true false or nil" do
|
|
8
|
-
mock=HandCodedMock.new(5)
|
|
9
|
-
lambda do
|
|
10
|
-
mock.should_not_be_funny
|
|
11
|
-
end.should_fail
|
|
12
|
-
mock.__verify
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
specify "should fail when predicate accepts args and returns true" do
|
|
16
|
-
mock=HandCodedMock.new(true)
|
|
17
|
-
lambda do
|
|
18
|
-
mock.should_not_be_hungry(1, 2, 3)
|
|
19
|
-
end.should_fail
|
|
20
|
-
mock.__verify
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
specify "should fail when predicate returns true" do
|
|
24
|
-
mock=HandCodedMock.new(true)
|
|
25
|
-
lambda do
|
|
26
|
-
mock.should_not_be_funny
|
|
27
|
-
end.should_fail
|
|
28
|
-
mock.__verify
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
specify "should pass when predicate accepts args and returns false" do
|
|
32
|
-
mock=HandCodedMock.new(false)
|
|
33
|
-
lambda do
|
|
34
|
-
mock.should_not_be_hungry(1, 2, 3)
|
|
35
|
-
end.should_not_raise
|
|
36
|
-
mock.__verify
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
specify "should pass when predicate returns false" do
|
|
40
|
-
mock=HandCodedMock.new(false)
|
|
41
|
-
mock.should_not_be_funny
|
|
42
|
-
mock.__verify
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
specify "should pass when predicate returns nil" do
|
|
46
|
-
mock=HandCodedMock.new(nil)
|
|
47
|
-
mock.should_not_be_funny
|
|
48
|
-
mock.__verify
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
specify "should raise NoMethodError when target does not respond to predicate" do
|
|
52
|
-
lambda do
|
|
53
|
-
5.should_not_be_funny
|
|
54
|
-
end.should_raise(NameError)
|
|
55
|
-
end
|
|
56
|
-
|
|
57
|
-
specify "should support multi word predicates with should" do
|
|
58
|
-
HandCodedMock.new(false).should_not_multi_word_predicate
|
|
59
|
-
end
|
|
60
|
-
|
|
61
|
-
specify "should support multi word predicates with should be" do
|
|
62
|
-
HandCodedMock.new(false).should_not_be_multi_word_predicate
|
|
63
|
-
end
|
|
64
|
-
end
|
|
65
|
-
end
|
|
66
|
-
end
|
|
67
|
-
end
|
|
68
|
-
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
-
|
|
3
|
-
context "should_not_be" do
|
|
4
|
-
specify "should pass when objects are not the same instance" do
|
|
5
|
-
"apple".should_not_be("apple")
|
|
6
|
-
end
|
|
7
|
-
|
|
8
|
-
specify "should fail when objects are the same instance" do
|
|
9
|
-
lambda { :apple.should_not_be(:apple) }.should_fail
|
|
10
|
-
end
|
|
11
|
-
end
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
-
|
|
3
|
-
class SomethingExpected
|
|
4
|
-
attr_accessor :some_value
|
|
5
|
-
end
|
|
6
|
-
|
|
7
|
-
context "should_not_change" do
|
|
8
|
-
setup do
|
|
9
|
-
@instance = SomethingExpected.new
|
|
10
|
-
@instance.some_value = 5
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
specify "should not raise exception when the target is not modified by the block" do
|
|
14
|
-
lambda do
|
|
15
|
-
lambda {nil}.should_not_change(@instance, :some_value)
|
|
16
|
-
end.should_not_raise
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
specify "should raise exception when the target is modified by the block" do
|
|
20
|
-
lambda do
|
|
21
|
-
lambda {@instance.some_value = 6}.should_not_change(@instance, :some_value)
|
|
22
|
-
end.should_fail_with "some_value should not have changed, but did change from 5 to 6"
|
|
23
|
-
end
|
|
24
|
-
end
|