minitest-allow 1.2.2 → 1.3.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: 16c4cd0305f4340a7b8a948ddf81ab474389da5c1ee31e5b3a7a928cbdb877c7
4
- data.tar.gz: 072e6a2a88033153ddeaa5cbd0790fb2eea50f15a0a109ec32f6080b34cacaf8
3
+ metadata.gz: 235a92592fca47e491a8433d56a8664dda103f7d33e5783ffbf314ecfacb9b7e
4
+ data.tar.gz: 320cf582bddfd733693160dacefcdcf7edcd2e30ec1f42f2d2b8b028d743f9a1
5
5
  SHA512:
6
- metadata.gz: 4a99f0cf46cc6831b643fcc8cbfcb6aae763fc4ae2384f829fc83e4fb5f2c0a2deb1082dcbe549c31501c8e62e3bdfd9e6c6545b0338dc316b7435dc73ff9b1d
7
- data.tar.gz: 3b0e6200c3f493fc9e3800c3b8559f74b37434d810993109bfd6e47685d65b08e3d9448b2572c69de8a6e0db1271cf82f805f1f69b3265651cec6bd1435491cd
6
+ metadata.gz: 519d5472ec45d30e1ea74aa44a094b7a934587bec4074a3f90fcbae68c40bde85c948e7afd95b6df16bef3739f9d9f57e437f823b171942daf7c2a5d9e722d35
7
+ data.tar.gz: 17bbe37cbd1d304a3cd4d583a32d55a2d9cb0f608af68903436d2f02c359a91e609610c724a1a13eed1deb213b384f4a9460c04bb816592a852024e7cc1cc1ac
checksums.yaml.gz.sig CHANGED
Binary file
data/History.rdoc CHANGED
@@ -1,3 +1,15 @@
1
+ === 1.3.0 / 2025-12-11
2
+
3
+ * 1 minor enhancement:
4
+
5
+ * Added a -c/--check option to help regenerate file. (bquorning)
6
+
7
+ === 1.2.3 / 2023-02-06
8
+
9
+ * 1 bug fix:
10
+
11
+ * Treat empty allow file (in yaml, nil) as empty array.
12
+
1
13
  === 1.2.2 / 2022-08-23
2
14
 
3
15
  * 1 bug fix:
data/README.rdoc CHANGED
@@ -14,6 +14,7 @@ green CI with against a list of known bad tests.
14
14
 
15
15
  * Run with `-A path/to/allowed.yml` to generate a list of failing tests.
16
16
  * Run with `-a path/to/allowed.yml` to allow listed tests to fail.
17
+ * Run with `-c path/to/allowed.yml` to only run the allowed test, and then regenerate the list.
17
18
 
18
19
  == SYNOPSIS:
19
20
 
@@ -1,6 +1,18 @@
1
1
  module Minitest
2
2
  def self.plugin_allow_options opts, _options # :nodoc:
3
3
  @allow = @allow_save = false
4
+ @run_only = []
5
+
6
+ opts.on "-c", "--check=path", String, "Run only the tests listed in the allowed file. Overwrites the current file." do |f|
7
+ require "psych"
8
+
9
+ @run_only = if Psych.respond_to? :safe_load_file
10
+ Psych.safe_load_file f, permitted_classes: [Regexp]
11
+ else
12
+ Psych.load_file f
13
+ end || []
14
+ @allow_save = f
15
+ end
4
16
 
5
17
  opts.on "-a", "--allow=path", String, "Allow listed tests to fail." do |f|
6
18
  # don't ask why I'm using this specifically:
@@ -10,7 +22,7 @@ module Minitest
10
22
  Psych.safe_load_file f, permitted_classes: [Regexp]
11
23
  else
12
24
  Psych.load_file f
13
- end
25
+ end || []
14
26
  end
15
27
 
16
28
  opts.on "-A", "--save-allow=path", String, "Save failing tests." do |f|
@@ -26,6 +38,7 @@ module Minitest
26
38
  self.reporter.allow_save = @allow_save
27
39
  self.reporter.allow_seen = []
28
40
  end
41
+ Minitest::Allow.run_only = @run_only
29
42
  end
30
43
 
31
44
  class Result # TODO: push up
@@ -41,10 +54,14 @@ module Minitest
41
54
  end
42
55
 
43
56
  module Allow
44
- VERSION = "1.2.2"
57
+ VERSION = "1.3.0"
45
58
 
46
59
  attr_accessor :allow, :allow_save, :allow_seen
47
60
 
61
+ class << self
62
+ attr_accessor :run_only
63
+ end
64
+
48
65
  def record result
49
66
  allow_seen << result.full_name
50
67
  super
@@ -165,3 +182,10 @@ module Minitest
165
182
  end
166
183
  end
167
184
  end
185
+
186
+ Minitest.singleton_class.prepend(Module.new do
187
+ def __run reporter, options = {}
188
+ options[:filter] = Regexp.union(Minitest::Allow.run_only) unless Minitest::Allow.run_only.empty?
189
+ super
190
+ end
191
+ end)
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,18 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: minitest-allow
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.2
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Davis
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain:
11
10
  - |
12
11
  -----BEGIN CERTIFICATE-----
13
- MIIDPjCCAiagAwIBAgIBBjANBgkqhkiG9w0BAQsFADBFMRMwEQYDVQQDDApyeWFu
12
+ MIIDPjCCAiagAwIBAgIBCTANBgkqhkiG9w0BAQsFADBFMRMwEQYDVQQDDApyeWFu
14
13
  ZC1ydWJ5MRkwFwYKCZImiZPyLGQBGRYJemVuc3BpZGVyMRMwEQYKCZImiZPyLGQB
15
- GRYDY29tMB4XDTIxMTIyMzIzMTkwNFoXDTIyMTIyMzIzMTkwNFowRTETMBEGA1UE
14
+ GRYDY29tMB4XDTI1MDEwNjIzMjcwMVoXDTI2MDEwNjIzMjcwMVowRTETMBEGA1UE
16
15
  AwwKcnlhbmQtcnVieTEZMBcGCgmSJomT8ixkARkWCXplbnNwaWRlcjETMBEGCgmS
17
16
  JomT8ixkARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALda
18
17
  b9DCgK+627gPJkB6XfjZ1itoOQvpqH1EXScSaba9/S2VF22VYQbXU1xQXL/WzCkx
@@ -22,14 +21,14 @@ cert_chain:
22
21
  qhtV7HJxNKuPj/JFH0D2cswvzznE/a5FOYO68g+YCuFi5L8wZuuM8zzdwjrWHqSV
23
22
  gBEfoTEGr7Zii72cx+sCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
24
23
  HQYDVR0OBBYEFEfFe9md/r/tj/Wmwpy+MI8d9k/hMA0GCSqGSIb3DQEBCwUAA4IB
25
- AQCKB5jfsuSnKb+t/Wrh3UpdkmX7TrEsjVmERC0pPqzQ5GQJgmEXDD7oMgaKXaAq
26
- x2m+KSZDrqk7c8uho5OX6YMqg4KdxehfSLqqTZGoeV78qwf/jpPQZKTf+W9gUSJh
27
- zsWpo4K50MP+QtdSbKXZwjAafpQ8hK0MnnZ/aeCsW9ov5vdXpYbf3dpg6ADXRGE7
28
- lQY2y1tJ5/chqu6h7dQmnm2ABUqx9O+JcN9hbCYoA5i/EeubUEtFIh2w3SpO6YfB
29
- JFmxn4h9YO/pVdB962BdBNNDia0kgIjI3ENnkLq0dKpYU3+F3KhEuTksLO0L6X/V
30
- YsuyUzsMz6GQA4khyaMgKNSD
24
+ AQAC0WQJcPOWPFwkojhzweilRVjTJ19UiLhiBTw3C1wJO3LVdBkWDmnnhAmKuX4D
25
+ r7vjQvESlABGIPdutI1Yl7mrHQzTkfLfXvNN6MT0nLChPyIYauT6SZZxubwJrUfA
26
+ 7R0c2CJTIboZ0XaGpLsXqHEF1c29H7TV1QvVuqKAN2mCjh4N82QVn+ZKtys28AwT
27
+ 6GfQX2fqLoi4KSc7xIzHKaNzqxeOICmJofk9w5VZ2rRN6yes8jvFYwz9HR41wdj8
28
+ bwfinv7Yp5fA6AysuZLhCykyfDuZVRrUp0Vb68YCKsLjJly/Theak+euNTxvHsB+
29
+ al9oSgPPHICMEX65qvLywitx
31
30
  -----END CERTIFICATE-----
32
- date: 2022-08-24 00:00:00.000000000 Z
31
+ date: 1980-01-02 00:00:00.000000000 Z
33
32
  dependencies:
34
33
  - !ruby/object:Gem::Dependency
35
34
  name: minitest
@@ -71,14 +70,14 @@ dependencies:
71
70
  requirements:
72
71
  - - "~>"
73
72
  - !ruby/object:Gem::Version
74
- version: '3.24'
73
+ version: '4.3'
75
74
  type: :development
76
75
  prerelease: false
77
76
  version_requirements: !ruby/object:Gem::Requirement
78
77
  requirements:
79
78
  - - "~>"
80
79
  - !ruby/object:Gem::Version
81
- version: '3.24'
80
+ version: '4.3'
82
81
  description: |-
83
82
  Allows you to provide an exclusion list of allowed failures/errors.
84
83
  Failures and errors on this list still get run and reported as usual,
@@ -106,7 +105,6 @@ licenses:
106
105
  - MIT
107
106
  metadata:
108
107
  homepage_uri: https://github.com/seattlerb/minitest-allow
109
- post_install_message:
110
108
  rdoc_options:
111
109
  - "--main"
112
110
  - README.rdoc
@@ -123,8 +121,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
123
121
  - !ruby/object:Gem::Version
124
122
  version: '0'
125
123
  requirements: []
126
- rubygems_version: 3.3.12
127
- signing_key:
124
+ rubygems_version: 3.7.2
128
125
  specification_version: 4
129
126
  summary: Allows you to provide an exclusion list of allowed failures/errors
130
127
  test_files: []
metadata.gz.sig CHANGED
Binary file