rspec-support 3.0.4 → 3.12.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (41) hide show
  1. checksums.yaml +5 -5
  2. checksums.yaml.gz.sig +0 -0
  3. data/Changelog.md +322 -0
  4. data/{LICENSE.txt → LICENSE.md} +3 -2
  5. data/README.md +29 -6
  6. data/lib/rspec/support/caller_filter.rb +35 -16
  7. data/lib/rspec/support/comparable_version.rb +46 -0
  8. data/lib/rspec/support/differ.rb +51 -41
  9. data/lib/rspec/support/directory_maker.rb +63 -0
  10. data/lib/rspec/support/encoded_string.rb +110 -15
  11. data/lib/rspec/support/fuzzy_matcher.rb +5 -6
  12. data/lib/rspec/support/hunk_generator.rb +0 -1
  13. data/lib/rspec/support/matcher_definition.rb +42 -0
  14. data/lib/rspec/support/method_signature_verifier.rb +287 -54
  15. data/lib/rspec/support/mutex.rb +73 -0
  16. data/lib/rspec/support/object_formatter.rb +275 -0
  17. data/lib/rspec/support/recursive_const_methods.rb +76 -0
  18. data/lib/rspec/support/reentrant_mutex.rb +78 -0
  19. data/lib/rspec/support/ruby_features.rb +177 -14
  20. data/lib/rspec/support/source/location.rb +21 -0
  21. data/lib/rspec/support/source/node.rb +110 -0
  22. data/lib/rspec/support/source/token.rb +94 -0
  23. data/lib/rspec/support/source.rb +85 -0
  24. data/lib/rspec/support/spec/deprecation_helpers.rb +19 -32
  25. data/lib/rspec/support/spec/diff_helpers.rb +31 -0
  26. data/lib/rspec/support/spec/in_sub_process.rb +43 -16
  27. data/lib/rspec/support/spec/library_wide_checks.rb +150 -0
  28. data/lib/rspec/support/spec/shell_out.rb +108 -0
  29. data/lib/rspec/support/spec/stderr_splitter.rb +31 -9
  30. data/lib/rspec/support/spec/string_matcher.rb +45 -0
  31. data/lib/rspec/support/spec/with_isolated_directory.rb +13 -0
  32. data/lib/rspec/support/spec/with_isolated_stderr.rb +0 -2
  33. data/lib/rspec/support/spec.rb +46 -26
  34. data/lib/rspec/support/version.rb +1 -1
  35. data/lib/rspec/support/warnings.rb +6 -6
  36. data/lib/rspec/support/with_keywords_when_needed.rb +33 -0
  37. data/lib/rspec/support.rb +87 -3
  38. data.tar.gz.sig +0 -0
  39. metadata +70 -52
  40. metadata.gz.sig +0 -0
  41. data/lib/rspec/support/version_checker.rb +0 -53
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-support
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.4
4
+ version: 3.12.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Chelimsky
@@ -10,76 +10,74 @@ authors:
10
10
  - Sam Phippen
11
11
  - Xaviery Shay
12
12
  - Bradley Schaefer
13
- autorequire:
13
+ autorequire:
14
14
  bindir: bin
15
15
  cert_chain:
16
16
  - |
17
17
  -----BEGIN CERTIFICATE-----
18
- MIIDjjCCAnagAwIBAgIBATANBgkqhkiG9w0BAQUFADBGMRIwEAYDVQQDDAlyc3Bl
19
- Yy1kZXYxGzAZBgoJkiaJk/IsZAEZFgtnb29nbGVnb3VwczETMBEGCgmSJomT8ixk
20
- ARkWA2NvbTAeFw0xMzExMDcxOTQyNTlaFw0xNDExMDcxOTQyNTlaMEYxEjAQBgNV
21
- BAMMCXJzcGVjLWRldjEbMBkGCgmSJomT8ixkARkWC2dvb2dsZWdvdXBzMRMwEQYK
22
- CZImiZPyLGQBGRYDY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
23
- nhCeZouDLXWO55no+EdZNCtjXjfJQ1X9TbPcvBDD29OypIUce2h/VdKXB2gI7ZHs
24
- F5NkPggslTErGFmWAtIiur7u943RVqHOsyoIsy065F9fCtrykkA+22elvTDha4Iz
25
- RUCvuhQ3klatYk4jF+cGt1jNONNVdLOiy0bMynvcM7hoVQ2AomwGs+cEOWQ/4dkD
26
- JcNV3qfzF5QBcTD2372XNM53b25nYVQSX2KH5FF7BhlKyov33bOm2gA9M+mWIujW
27
- qgkyxVlfrlE+ZBgV3wXn1Cojg1LpTq35yOArgwioyrwwlZZJR9joN9s/nDklfr5A
28
- +dyETjFc6cmEPWZrt2cJBQIDAQABo4GGMIGDMAkGA1UdEwQCMAAwCwYDVR0PBAQD
29
- AgSwMB0GA1UdDgQWBBSW+WD7hn1swJ1A7i8tbuFeuNCJCjAkBgNVHREEHTAbgRly
30
- c3BlYy1kZXZAZ29vZ2xlZ291cHMuY29tMCQGA1UdEgQdMBuBGXJzcGVjLWRldkBn
31
- b29nbGVnb3Vwcy5jb20wDQYJKoZIhvcNAQEFBQADggEBAH27jAZ8sD7vnXupj6Y+
32
- BaBdfHtCkFaslLJ0aKuMDIVXwYuKfqoW15cZPDLmSIEBuQFM3lw6d/hEEL4Uo2jZ
33
- FvtmH5OxifPDzFyUtCL4yp6qgNe/Xf6sDsRg6FmKcpgqCwNOmsViaf0LPSUH/GYQ
34
- 3Teoz8QCaDbD7AKsffT7eDrnbHnKweO1XdemRJC98u/yYxnGzMSWKEsn09etBlZ9
35
- 7H67k5Z3uf6cfLZgToWL6zShzZY3Nun5r73YsNf2/QZOe4UZe4vfGvn6baw53ys9
36
- 1yHC1AcSYpvi2dAbOiHT5iQF+krm4wse8KctXgTNnjMsHEoGKulJS2/sZl90jcCz
37
- muA=
18
+ MIIF1TCCA72gAwIBAgIJAPXjfUbCjdXUMA0GCSqGSIb3DQEBBQUAMIGAMQswCQYD
19
+ VQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEO
20
+ MAwGA1UECgwFUlNwZWMxEzARBgNVBAMMCnJzcGVjLmluZm8xJTAjBgkqhkiG9w0B
21
+ CQEWFnJzcGVjQGdvb2dsZWdyb3Vwcy5jb20wHhcNMTQxMjIzMDkzNTIyWhcNMjQx
22
+ MjIyMDkzNTIyWjCBgDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCldhc2hpbmd0b24x
23
+ EDAOBgNVBAcMB1NlYXR0bGUxDjAMBgNVBAoMBVJTcGVjMRMwEQYDVQQDDApyc3Bl
24
+ Yy5pbmZvMSUwIwYJKoZIhvcNAQkBFhZyc3BlY0Bnb29nbGVncm91cHMuY29tMIIC
25
+ IjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAsSmjgcHaKlD0jizRJowi2bGI
26
+ KMOHnJoExxRNHHxH+3w9kkl95YldvDRVX495b13ZCzwRe0AyqX24wq04tp0G5Z5C
27
+ e/w2pnNK4ol1eECPwQu+YGpepeODlZICL5gwQspe0cDifbBnHx5QySMiPpvx6bC0
28
+ tQTox0ppDIaMhch8IPCwyoE4DQK5bpsdwnLSHTsQjUIb7IM8tUMpd/iKrJgNffwc
29
+ 6gC1TmhIlzQoB26nCNh9uK7xZjUM+sGECzvcYuImchUaIgJA/ybrlZS+m/hxzvBo
30
+ mLnn/xNEC6Vz5HG+3TR0Gb0cSUf6XUu2s51Jk/SJi3MhCZp2gs9OUg4EVZNzQVkZ
31
+ efLBjAZG2Mxk14JyB4/Omc+Jk0ajprINCBbUNnxzCJrYDM3J9TVWIwyUGNX/U3MO
32
+ s3tMAT+EVgx/mZMPnBO8EULlyF51MRUp3Wy9Mnw8AYLk30UnMG5AjqgO5JNyFlA7
33
+ Xeh3EVdWY3vMB1pkhPwlsenpcmj5gOzrd54lELOVbCGHCf48iSqeflY2Lhe0pvzK
34
+ blXCJBDmtrebvus291rM/dHcbEfK1SVd5Wut/n131iouf6dnNCFskFygDcgBbthC
35
+ gpEMqf80lEmhX59VUsm0Pv6OEo+ZPHBvXPiJA6DShQh9t3YtpwyA8uVDMbT/i32u
36
+ 2FUsqZbbJcCmkBrGposCAwEAAaNQME4wHQYDVR0OBBYEFPPvQ5XT0Nvuhi6k+hrW
37
+ Vv35J+TeMB8GA1UdIwQYMBaAFPPvQ5XT0Nvuhi6k+hrWVv35J+TeMAwGA1UdEwQF
38
+ MAMBAf8wDQYJKoZIhvcNAQEFBQADggIBAIqbQSWH2aAF537DKwAMB8nMFsoe24MD
39
+ gtuQAyjTtbH+QBE4N2RdQF/sU7Y3PYR7nqdrCsYc3RxyqM5XXi7I3IYdpfe1RuxY
40
+ +pyPzVQsPPDhMlJlCrwJsADnxlpxZlAgxYSLKOan55ihscaAWA90wqRUrf/ZJM36
41
+ 8LWCPVn5teIt5aaxZWX68RMxa+AXvpbtJOBwXLkIFk3apD8CX4DhelIdw67DbkUe
42
+ ghUd/u62qrnqBTVgditt7OoWIZjzh24/Fda5d0MxZyvLILGOrf5bN4cTbe/q9Cid
43
+ Xrik7Upm+mu3y3yQIfrw85xybHq6iNXyYHvCdSrFfCIKrGpd/0CAdmYnJlx59Fk/
44
+ UbD3Eyx4psBSkU+WKO0Uf+3zNI7N/nVeNIwU/Ft+l8l7/K+427656c+ZGWDO0Gt/
45
+ BeEOSTDKP7qQ1T+JvMrBcBQo+i0cnRT10J1aoV90BhxsvWTRizIbugbaqR6Tq3bj
46
+ Akt00cIlNSplL6DenIAKSh5kF7s0tRD0tC3bNkZmNjNGkdoGEcUODEpTB3RHKKiu
47
+ e6k2Jg6m00z5vGFQhOnROG/QaUzMA3A3mFBe1RHFo07xd0pFeoeWL3vF69Gx9Jwp
48
+ ZsVDj6a7lH3cNqtWXZxrb2wO38qV5AkYj8SQK7Hj3/Yui9myUX3crr+PdetazSqQ
49
+ F3MdtaDehhjC
38
50
  -----END CERTIFICATE-----
39
- date: 2014-08-14 00:00:00.000000000 Z
51
+ date: 2023-06-26 00:00:00.000000000 Z
40
52
  dependencies:
41
- - !ruby/object:Gem::Dependency
42
- name: bundler
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '1.3'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '1.3'
55
53
  - !ruby/object:Gem::Dependency
56
54
  name: rake
57
55
  requirement: !ruby/object:Gem::Requirement
58
56
  requirements:
59
- - - "~>"
57
+ - - ">"
60
58
  - !ruby/object:Gem::Version
61
59
  version: 10.0.0
62
60
  type: :development
63
61
  prerelease: false
64
62
  version_requirements: !ruby/object:Gem::Requirement
65
63
  requirements:
66
- - - "~>"
64
+ - - ">"
67
65
  - !ruby/object:Gem::Version
68
66
  version: 10.0.0
69
67
  - !ruby/object:Gem::Dependency
70
- name: rspec
68
+ name: thread_order
71
69
  requirement: !ruby/object:Gem::Requirement
72
70
  requirements:
73
- - - ">="
71
+ - - "~>"
74
72
  - !ruby/object:Gem::Version
75
- version: 3.0.0.pre
73
+ version: 1.1.0
76
74
  type: :development
77
75
  prerelease: false
78
76
  version_requirements: !ruby/object:Gem::Requirement
79
77
  requirements:
80
- - - ">="
78
+ - - "~>"
81
79
  - !ruby/object:Gem::Version
82
- version: 3.0.0.pre
80
+ version: 1.1.0
83
81
  description: Support utilities for RSpec gems
84
82
  email: rspec-users@rubyforge.org
85
83
  executables: []
@@ -87,30 +85,51 @@ extensions: []
87
85
  extra_rdoc_files: []
88
86
  files:
89
87
  - Changelog.md
90
- - LICENSE.txt
88
+ - LICENSE.md
91
89
  - README.md
92
90
  - lib/rspec/support.rb
93
91
  - lib/rspec/support/caller_filter.rb
92
+ - lib/rspec/support/comparable_version.rb
94
93
  - lib/rspec/support/differ.rb
94
+ - lib/rspec/support/directory_maker.rb
95
95
  - lib/rspec/support/encoded_string.rb
96
96
  - lib/rspec/support/fuzzy_matcher.rb
97
97
  - lib/rspec/support/hunk_generator.rb
98
+ - lib/rspec/support/matcher_definition.rb
98
99
  - lib/rspec/support/method_signature_verifier.rb
100
+ - lib/rspec/support/mutex.rb
101
+ - lib/rspec/support/object_formatter.rb
102
+ - lib/rspec/support/recursive_const_methods.rb
103
+ - lib/rspec/support/reentrant_mutex.rb
99
104
  - lib/rspec/support/ruby_features.rb
105
+ - lib/rspec/support/source.rb
106
+ - lib/rspec/support/source/location.rb
107
+ - lib/rspec/support/source/node.rb
108
+ - lib/rspec/support/source/token.rb
100
109
  - lib/rspec/support/spec.rb
101
110
  - lib/rspec/support/spec/deprecation_helpers.rb
111
+ - lib/rspec/support/spec/diff_helpers.rb
102
112
  - lib/rspec/support/spec/formatting_support.rb
103
113
  - lib/rspec/support/spec/in_sub_process.rb
114
+ - lib/rspec/support/spec/library_wide_checks.rb
115
+ - lib/rspec/support/spec/shell_out.rb
104
116
  - lib/rspec/support/spec/stderr_splitter.rb
117
+ - lib/rspec/support/spec/string_matcher.rb
118
+ - lib/rspec/support/spec/with_isolated_directory.rb
105
119
  - lib/rspec/support/spec/with_isolated_stderr.rb
106
120
  - lib/rspec/support/version.rb
107
- - lib/rspec/support/version_checker.rb
108
121
  - lib/rspec/support/warnings.rb
122
+ - lib/rspec/support/with_keywords_when_needed.rb
109
123
  homepage: https://github.com/rspec/rspec-support
110
124
  licenses:
111
125
  - MIT
112
- metadata: {}
113
- post_install_message:
126
+ metadata:
127
+ bug_tracker_uri: https://github.com/rspec/rspec-support/issues
128
+ changelog_uri: https://github.com/rspec/rspec-support/blob/v3.12.1/Changelog.md
129
+ documentation_uri: https://rspec.info/documentation/
130
+ mailing_list_uri: https://groups.google.com/forum/#!forum/rspec
131
+ source_code_uri: https://github.com/rspec/rspec-support
132
+ post_install_message:
114
133
  rdoc_options:
115
134
  - "--charset=UTF-8"
116
135
  require_paths:
@@ -126,9 +145,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
126
145
  - !ruby/object:Gem::Version
127
146
  version: '0'
128
147
  requirements: []
129
- rubyforge_project: rspec
130
- rubygems_version: 2.2.2
131
- signing_key:
148
+ rubygems_version: 3.4.1
149
+ signing_key:
132
150
  specification_version: 4
133
- summary: rspec-support-3.0.4
151
+ summary: rspec-support-3.12.1
134
152
  test_files: []
metadata.gz.sig CHANGED
Binary file
@@ -1,53 +0,0 @@
1
- module RSpec
2
- module Support
3
- LibraryVersionTooLowError = Class.new(StandardError)
4
-
5
- # @private
6
- class VersionChecker
7
- def initialize(library_name, library_version, min_patch_level)
8
- @library_name, @library_version = library_name, library_version
9
- @min_patch_level = min_patch_level
10
-
11
- @major, @minor, @patch = parse_version(library_version)
12
- @min_major, @min_minor, @min_patch = parse_version(min_patch_level)
13
-
14
- @comparison_result = compare_version
15
- end
16
-
17
- def check_version!
18
- raise_too_low_error if too_low?
19
- end
20
-
21
- private
22
-
23
- def too_low?
24
- @comparison_result == :too_low
25
- end
26
-
27
- def raise_too_low_error
28
- raise LibraryVersionTooLowError,
29
- "You are using #{@library_name} #{@library_version}. " +
30
- "RSpec requires version #{version_requirement}."
31
- end
32
-
33
- def compare_version
34
- case
35
- when @major < @min_major then :too_low
36
- when @major > @min_major then :ok
37
- when @minor < @min_minor then :too_low
38
- when @minor > @min_minor then :ok
39
- when @patch < @min_patch then :too_low
40
- else :ok
41
- end
42
- end
43
-
44
- def version_requirement
45
- ">= #{@min_patch_level}"
46
- end
47
-
48
- def parse_version(version)
49
- version.split('.').map { |v| v.to_i }
50
- end
51
- end
52
- end
53
- end