minitest-proptest 0.4.0 → 0.5.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 902a119e57c8158fe97d384c65cd988a396b1204689f68c0cdd88d88629ee8dc
4
- data.tar.gz: 1e371e1ce98f872cda67ede73aa5f967685e1d29a3801bf115ee97f2e04829e4
3
+ metadata.gz: 7538fb3d1328b5e8af5132dfb76064cb04710024bb9e3180d4df1dd808ba63c3
4
+ data.tar.gz: '08decda6552219671cf77a9b854a200c44803aae07d07863b2921033798c2e10'
5
5
  SHA512:
6
- metadata.gz: 92c48c115151d03833c649a76441ef6a1be44a101ad0a8c58da77350eafdb3940fe5f78d54c104a6d200b1ebf23a0716c9b13f43dda3b285c1bc7c82c7e6546b
7
- data.tar.gz: c59e61044807c0c3769c6d9769d9764415a408f4191c8b04b22af59919df73a059bd9ea93536b2ab1cc44cb032bad6ded596f624b10679f4fb047275813ffa2e
6
+ metadata.gz: dc1e93d73eb312774db9974c89c10a17f49faa54803eb695a33e64ad8ea729705a559fc5ceb9bda2e744b62b6f797aa699a50857d69f647c7eb9509f65fb3126
7
+ data.tar.gz: 286e01a7ca204354da1a8fa16b68b82c4c8360f3e10b83f7cf51e1e1993ac24e11f2411d60f382a54c71e9b84ad2eeb1aa4fd63b958d31be9b2d310a592f5be9
@@ -18,6 +18,8 @@ module Minitest
18
18
  test_proc,
19
19
  # The file in which our property lives
20
20
  filename,
21
+ # The class in which our property is defined
22
+ classname,
21
23
  # The method containing our property
22
24
  methodname,
23
25
  # Any class which provides `rand` accepting both an Integer and a Range
@@ -40,6 +42,7 @@ module Minitest
40
42
  )
41
43
  @test_proc = test_proc
42
44
  @filename = filename
45
+ @classname = classname
43
46
  @methodname = methodname
44
47
  @random = random.call
45
48
  @generator = ::Minitest::Proptest::Gen.new(@random)
@@ -219,7 +222,7 @@ module Minitest
219
222
  # required.
220
223
  local_variables = {}
221
224
  tracepoint = TracePoint.new(:b_return) do |trace|
222
- if trace.path == @filename && trace.method_id.to_s == @methodname
225
+ if trace.path == @filename && trace.method_id == @methodname && trace.defined_class == @classname
223
226
  b = trace.binding
224
227
  vs = b.local_variables
225
228
  known = vs.to_h { |lv| [lv.to_s, b.local_variable_get(lv)] }
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Minitest
4
4
  module Proptest
5
- VERSION = '0.4.0'
5
+ VERSION = '0.5.0'
6
6
  end
7
7
  end
@@ -57,13 +57,15 @@ module Minitest
57
57
  Proptest::DEFAULT_RANDOM
58
58
  end
59
59
 
60
- file, methodname = caller.first.split(/:\d+:in +/)
60
+ file, full_method = caller.first.split(/:\d+:in +/)
61
+ methodname = full_method.gsub(/(?:^.+[#.]|'$)/, '')
61
62
  classname = self.class.name
62
- methodname.gsub!(/(?:^`|'$)/, '')
63
+ methodname = methodname.to_sym
63
64
 
64
65
  prop = Minitest::Proptest::Property.new(
65
66
  f,
66
67
  file,
68
+ classname,
67
69
  methodname,
68
70
  random: random_thunk,
69
71
  max_success: Proptest.max_success,
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: minitest-proptest
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tina Wuest
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-12-28 00:00:00.000000000 Z
11
+ date: 2026-05-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -60,14 +60,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
60
60
  requirements:
61
61
  - - ">="
62
62
  - !ruby/object:Gem::Version
63
- version: 3.2.0
63
+ version: 3.3.0
64
64
  required_rubygems_version: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  requirements: []
70
- rubygems_version: 3.4.19
70
+ rubygems_version: 3.5.22
71
71
  signing_key:
72
72
  specification_version: 4
73
73
  summary: Property testing in Minitest