minitest-keyword 1.0.1 → 2.0.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: c39c38c1db2e8fc84c8d158a55722fa5813aaf374eb4f1829b8c2e986f8d34da
4
- data.tar.gz: 131b9d624e2be66040e3302f3b27111a6d3047c334375b311d647c44865218fe
3
+ metadata.gz: 4b569537ff4f2eacfd9b0e3dfdbb4ba8d0864eed8e3c3c0fab016ab865c308c2
4
+ data.tar.gz: e77fefde1103684177cbcd645cde4eb74d1002ecbf7ec6cd3cb9752ff4af90ac
5
5
  SHA512:
6
- metadata.gz: 00df43e2354c98ef45515085cd55fef8331e429a35a5f170799b6f172f5aa5b9796099a83522c4074fc160bdb10b18db68ec7e379f11d9185e75dba988f5b5a6
7
- data.tar.gz: 8d680815333dfc6a51d8fb4478ef25d11f279d53f713e4b930bcc48b3c5c4054239bf9c1813f4ae2cda07ad32246e3f553d74704fadbb4a57ca3c32a96059771
6
+ metadata.gz: 8cee286ebf8de7e7c68695604998ce3bd93a9451d7eb1a52eb69489a000b3a5220ba46b404e81a59ac65877eb46e62ec9343f8e8bd0339b1cde92c4480b43678
7
+ data.tar.gz: 35ad6969492e0bb920897e0b2e85d0e415be703c98f0d5f30fbdda8100877f4a402880aac9958e93ef6ca0532d8be2780f8eb23f3b970d0da8939b878338e7ce
@@ -4,3 +4,7 @@ updates:
4
4
  directory: "/"
5
5
  schedule:
6
6
  interval: "daily"
7
+ - package-ecosystem: "github-actions"
8
+ directory: "/"
9
+ schedule:
10
+ interval: "daily"
@@ -0,0 +1,22 @@
1
+ name: Dependabot auto-merge
2
+ on: pull_request
3
+
4
+ permissions:
5
+ contents: write
6
+ pull-requests: write
7
+
8
+ jobs:
9
+ dependabot:
10
+ runs-on: ubuntu-latest
11
+ if: ${{ github.actor == 'dependabot[bot]' }}
12
+ steps:
13
+ - name: Dependabot metadata
14
+ id: metadata
15
+ uses: dependabot/fetch-metadata@v1.6.0
16
+ with:
17
+ github-token: "${{ secrets.GITHUB_TOKEN }}"
18
+ - name: Enable auto-merge for Dependabot PRs
19
+ run: gh pr merge --auto --merge "$PR_URL"
20
+ env:
21
+ PR_URL: ${{github.event.pull_request.html_url}}
22
+ GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
@@ -1,7 +1,9 @@
1
1
  name: Main
2
+
2
3
  on:
3
4
  - push
4
- - pull_request_target
5
+ - pull_request
6
+
5
7
  jobs:
6
8
  ci:
7
9
  name: CI
@@ -12,23 +14,11 @@ jobs:
12
14
  - uses: actions/checkout@master
13
15
  - uses: ruby/setup-ruby@v1
14
16
  with:
15
- ruby-version: 3.0
17
+ ruby-version: '3.3'
16
18
  bundler-cache: true
17
19
  - name: Lint and test
18
20
  run: |
21
+ bundle exec rake stree:check
19
22
  bundle exec rubocop --parallel
20
23
  bundle exec rake test
21
- automerge:
22
- name: AutoMerge
23
- needs: ci
24
- runs-on: ubuntu-latest
25
- if: github.event_name == 'pull_request_target' && (github.actor == github.repository_owner || github.actor == 'dependabot[bot]')
26
- steps:
27
- - uses: actions/github-script@v3
28
- with:
29
- script: |
30
- github.pulls.merge({
31
- owner: context.payload.repository.owner.login,
32
- repo: context.payload.repository.name,
33
- pull_number: context.payload.pull_request.number
34
- })
24
+ bin/readme
data/.rubocop.yml CHANGED
@@ -1,13 +1,27 @@
1
+ inherit_gem:
2
+ syntax_tree: config/rubocop.yml
3
+
1
4
  AllCops:
2
5
  DisplayCopNames: true
3
6
  DisplayStyleGuide: true
7
+ NewCops: enable
8
+ SuggestExtensions: false
4
9
  TargetRubyVersion: 2.7
5
10
  Exclude:
6
11
  - '{tmp,vendor,yard}/**/*'
7
12
 
13
+ Gemspec/DevelopmentDependencies:
14
+ Enabled: false
15
+
8
16
  Gemspec/RequiredRubyVersion:
9
17
  Enabled: false
10
18
 
19
+ Metrics/BlockLength:
20
+ Enabled: false
21
+
22
+ Metrics/MethodLength:
23
+ Enabled: false
24
+
11
25
  Layout/LineLength:
12
26
  Max: 80
13
27
 
data/CHANGELOG.md CHANGED
@@ -6,6 +6,20 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) a
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [2.0.0] - 2024-01-23
10
+
11
+ ### Changed
12
+
13
+ - `assert_send` is no longer decorated, since it is deprecated.
14
+ - `assert_operator` and `refute_operator` have changed their keywords from `o1`, `op`, and `o2` to `receiver`, `operator`, and `argument`, respectively.
15
+ - `assert_predicate` and `refute_predicate` have changed their keywords from `o1` and `op` to `receiver` and `operator`, respectively.
16
+
17
+ ## [1.0.2] - 2024-01-12
18
+
19
+ ### Changed
20
+
21
+ - Support keyword arguments for `assert_respond_to` and `refute_respond_to`.
22
+
9
23
  ## [1.0.1] - 2021-11-17
10
24
 
11
25
  ### Changed
@@ -18,6 +32,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) a
18
32
 
19
33
  - The name of the underlying parameter changed for `assert_in_epsilon` from `a` and `b` to `exp` and `act`. As such, in order to normalize, those were aliased to `expected` and `actual` as well.
20
34
 
21
- [unreleased]: https://github.com/kddnewton/minitest-keyword/compare/v1.0.1...HEAD
35
+ [unreleased]: https://github.com/kddnewton/minitest-keyword/compare/v2.0.0...HEAD
36
+ [2.0.0]: https://github.com/kddnewton/minitest-keyword/compare/v1.0.2...v2.0.0
37
+ [1.0.2]: https://github.com/kddnewton/minitest-keyword/compare/v1.0.1...v1.0.2
22
38
  [1.0.1]: https://github.com/kddnewton/minitest-keyword/compare/v1.0.0...v1.0.1
23
39
  [1.0.0]: https://github.com/kddnewton/minitest-keyword/compare/846f1f...v1.0.0
data/Gemfile CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- source 'https://rubygems.org'
3
+ source "https://rubygems.org"
4
4
 
5
5
  gemspec
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- minitest-keyword (1.0.1)
4
+ minitest-keyword (2.0.0)
5
5
  minitest (~> 5.0)
6
6
 
7
7
  GEM
@@ -9,33 +9,42 @@ GEM
9
9
  specs:
10
10
  ast (2.4.2)
11
11
  docile (1.4.0)
12
- minitest (5.14.4)
13
- parallel (1.21.0)
14
- parser (3.0.2.0)
12
+ json (2.7.1)
13
+ language_server-protocol (3.17.0.3)
14
+ minitest (5.21.2)
15
+ parallel (1.24.0)
16
+ parser (3.3.0.4)
15
17
  ast (~> 2.4.1)
16
- rainbow (3.0.0)
17
- rake (13.0.6)
18
- regexp_parser (2.1.1)
19
- rexml (3.2.5)
20
- rubocop (1.23.0)
18
+ racc
19
+ prettier_print (1.2.1)
20
+ racc (1.7.3)
21
+ rainbow (3.1.1)
22
+ rake (13.1.0)
23
+ regexp_parser (2.9.0)
24
+ rexml (3.2.6)
25
+ rubocop (1.60.1)
26
+ json (~> 2.3)
27
+ language_server-protocol (>= 3.17.0)
21
28
  parallel (~> 1.10)
22
- parser (>= 3.0.0.0)
29
+ parser (>= 3.3.0.2)
23
30
  rainbow (>= 2.2.2, < 4.0)
24
31
  regexp_parser (>= 1.8, < 3.0)
25
- rexml
26
- rubocop-ast (>= 1.12.0, < 2.0)
32
+ rexml (>= 3.2.5, < 4.0)
33
+ rubocop-ast (>= 1.30.0, < 2.0)
27
34
  ruby-progressbar (~> 1.7)
28
- unicode-display_width (>= 1.4.0, < 3.0)
29
- rubocop-ast (1.13.0)
30
- parser (>= 3.0.1.1)
31
- ruby-progressbar (1.11.0)
32
- simplecov (0.21.2)
35
+ unicode-display_width (>= 2.4.0, < 3.0)
36
+ rubocop-ast (1.30.0)
37
+ parser (>= 3.2.1.0)
38
+ ruby-progressbar (1.13.0)
39
+ simplecov (0.22.0)
33
40
  docile (~> 1.1)
34
41
  simplecov-html (~> 0.11)
35
42
  simplecov_json_formatter (~> 0.1)
36
43
  simplecov-html (0.12.3)
37
- simplecov_json_formatter (0.1.3)
38
- unicode-display_width (2.1.0)
44
+ simplecov_json_formatter (0.1.4)
45
+ syntax_tree (6.2.0)
46
+ prettier_print (>= 1.2.0)
47
+ unicode-display_width (2.5.0)
39
48
 
40
49
  PLATFORMS
41
50
  ruby
@@ -46,6 +55,7 @@ DEPENDENCIES
46
55
  rake (~> 13.0)
47
56
  rubocop (~> 1.12)
48
57
  simplecov (~> 0.17)
58
+ syntax_tree
49
59
 
50
60
  BUNDLED WITH
51
- 2.2.15
61
+ 2.4.1
data/README.md CHANGED
@@ -10,7 +10,7 @@ A small gem for allowing you to use Minitest assertions with keyword arguments.
10
10
  Add this line to your application's Gemfile:
11
11
 
12
12
  ```ruby
13
- gem 'minitest-keyword'
13
+ gem "minitest-keyword"
14
14
  ```
15
15
 
16
16
  And then execute:
@@ -23,16 +23,16 @@ Or install it yourself as:
23
23
 
24
24
  ## Usage
25
25
 
26
- Add `require 'minitest/keyword'` to your `test_helper.rb` script. In your tests you will now be able to change your assertions from:
26
+ Add `require "minitest/keyword"` to your `test_helper.rb` script. In your tests you will now be able to change your assertions from:
27
27
 
28
28
  ```ruby
29
- assert_equal 'foo', foo.inspect
29
+ assert_equal "foo", foo.inspect
30
30
  ```
31
31
 
32
32
  to:
33
33
 
34
34
  ```ruby
35
- assert_equal expected: 'foo', actual: foo.inspect
35
+ assert_equal expected: "foo", actual: foo.inspect
36
36
  ```
37
37
 
38
38
  All of the standard Minitest assertions can now be used with keyword arguments. Note that this gem is still backwards-compatible with Minitest itself, so your existing tests won't break.
@@ -45,18 +45,19 @@ The actual keyword method creation is done through introspection, but the equiva
45
45
  assert test:, message: nil
46
46
  assert_empty object:, message: nil
47
47
  assert_equal expected:, actual:, message: nil
48
- assert_in_delta expected:, actual:, delta:, message: nil
49
- assert_in_epsilon expected:, actual:, epsilon:, message: nil
48
+ assert_in_delta expected:, actual:, delta: 0.001, message: nil
49
+ assert_in_epsilon expected:, actual:, epsilon: 0.001, message: nil
50
50
  assert_includes collection:, object:, message: nil
51
51
  assert_instance_of class:, object:, message: nil
52
52
  assert_kind_of class:, object:, message: nil
53
53
  assert_match matcher:, object:, message: nil
54
54
  assert_nil object:, message: nil
55
- assert_operator o1:, op:, o2:, message: nil
56
- assert_output stdout:, stderr:
57
- assert_predicate o1:, op:, message: nil
58
- assert_raises expected:
59
- assert_respond_to object:, method:, message: nil
55
+ assert_operator receiver:, operator:, argument: UNDEFINED, message: nil
56
+ assert_output stdout: nil, stderr: nil
57
+ assert_path_exists path:, message: nil
58
+ assert_predicate receiver:, operator:, message: nil
59
+ assert_raises expected: []
60
+ assert_respond_to object:, method:, message: nil, include_all: false
60
61
  assert_same expected:, actual:, message: nil
61
62
  assert_throws symbol:, message: nil
62
63
  ```
@@ -67,16 +68,17 @@ The associated refutations are also overridden, with the below signatures.
67
68
  refute test:, message: nil
68
69
  refute_empty object:, message: nil
69
70
  refute_equal expected:, actual:, message: nil
70
- refute_in_delta expected:, actual:, delta:, message: nil
71
- refute_in_epsilon expected:, actual:, epsilon:, message: nil
71
+ refute_in_delta expected:, actual:, delta: 0.001, message: nil
72
+ refute_in_epsilon expected:, actual:, epsilon: 0.001, message: nil
72
73
  refute_includes collection:, object:, message: nil
73
74
  refute_instance_of class:, object:, message: nil
74
75
  refute_kind_of class:, object:, message: nil
75
76
  refute_match matcher:, object:, message: nil
76
77
  refute_nil object:, message: nil
77
- refute_operator o1:, op:, o2:, message: nil
78
- refute_predicate o1:, op:, message: nil
79
- refute_respond_to object:, method:, message: nil
78
+ refute_operator receiver:, operator:, argument: UNDEFINED, message: nil
79
+ refute_path_exists path:, message: nil
80
+ refute_predicate receiver:, operator:, message: nil
81
+ refute_respond_to object:, method:, message: nil, include_all: false
80
82
  refute_same expected:, actual:, message: nil
81
83
  ```
82
84
 
data/Rakefile CHANGED
@@ -1,12 +1,21 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'bundler/gem_tasks'
4
- require 'rake/testtask'
3
+ require "bundler/gem_tasks"
4
+ require "rake/testtask"
5
+ require "syntax_tree/rake_tasks"
5
6
 
6
7
  Rake::TestTask.new(:test) do |t|
7
- t.libs << 'test'
8
- t.libs << 'lib'
9
- t.test_files = FileList['test/**/*_test.rb']
8
+ t.libs << "test"
9
+ t.libs << "lib"
10
+ t.test_files = FileList["test/**/*_test.rb"]
10
11
  end
11
12
 
12
13
  task default: :test
14
+
15
+ configure = ->(task) do
16
+ task.source_files =
17
+ FileList[%w[Gemfile Rakefile *.gemspec lib/**/*.rb test/**/*.rb]]
18
+ end
19
+
20
+ SyntaxTree::Rake::CheckTask.new(&configure)
21
+ SyntaxTree::Rake::WriteTask.new(&configure)
data/bin/console CHANGED
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env ruby
2
2
  # frozen_string_literal: true
3
3
 
4
- require 'bundler/setup'
5
- require 'minitest/keyword'
4
+ require "bundler/setup"
5
+ require "minitest/keyword"
6
6
 
7
- require 'irb'
7
+ require "irb"
8
8
  IRB.start(__FILE__)
data/bin/readme ADDED
@@ -0,0 +1,54 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ require "bundler/setup"
5
+ require "minitest/keyword"
6
+
7
+ aliases = Hash.new { |hash, key| hash[key] = key }
8
+ aliases.merge!(Minitest::Keyword::ALIASES)
9
+
10
+ source = Minitest::Assertions
11
+ source.instance_methods.grep(/^(assert|refute)/).sort.each do |method_name|
12
+ method = source.instance_method(method_name)
13
+ parameters = method.parameters
14
+
15
+ next if parameters.empty? || method_name == :assert_send
16
+
17
+ iseq = RubyVM::InstructionSequence.of(method).to_a
18
+ opt_index = 0
19
+
20
+ values =
21
+ parameters.map do |(parameter_type, parameter_name)|
22
+ name = aliases[parameter_name]
23
+
24
+ case parameter_type
25
+ in :req
26
+ "#{name}:"
27
+ in :opt
28
+ stack = []
29
+ iseq[13][iseq[13].index(iseq[11][:opt][opt_index])..].each do |insn|
30
+ case insn
31
+ in Symbol | Integer
32
+ next
33
+ in [:opt_getconstant_path, path]
34
+ stack << path.join("::")
35
+ in [:putobject, object]
36
+ stack << object.inspect
37
+ in [:putnil]
38
+ stack << "nil"
39
+ in [/^setlocal/, Integer]
40
+ break
41
+ end
42
+ end
43
+
44
+ opt_index += 1
45
+ "#{name}: #{stack.pop}"
46
+ in :key
47
+ "#{name}: #{iseq[11][:keyword].assoc(parameter_name)[1]}"
48
+ in :rest
49
+ "#{name}: []"
50
+ end
51
+ end
52
+
53
+ puts "%-18s %s" % [method_name, values.join(", ")]
54
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Minitest
4
4
  module Keyword
5
- VERSION = '1.0.1'
5
+ VERSION = "2.0.0"
6
6
  end
7
7
  end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'minitest'
4
- require 'minitest/keyword/version'
3
+ require "minitest"
4
+ require "minitest/keyword/version"
5
5
 
6
6
  module Minitest
7
7
  # The module containing overridden assertion methods that will be prepended
@@ -17,6 +17,9 @@ module Minitest
17
17
  meth: :method,
18
18
  msg: :message,
19
19
  obj: :object,
20
+ op: :operator,
21
+ o1: :receiver,
22
+ o2: :argument,
20
23
  sym: :symbol
21
24
  }.freeze
22
25
 
@@ -24,8 +27,10 @@ module Minitest
24
27
  # keyword arguments
25
28
  class OverloadedArgumentError < ArgumentError
26
29
  def initialize(method_name, argument_name)
27
- super('Cannot specify keyword argument and pass regular argument to ' \
28
- "#{method_name} for argument #{argument_name}")
30
+ super(
31
+ "Cannot specify keyword argument and pass regular argument to " \
32
+ "#{method_name} for argument #{argument_name}"
33
+ )
29
34
  end
30
35
  end
31
36
 
@@ -33,46 +38,59 @@ module Minitest
33
38
  # regular argument or a keyword argument
34
39
  class MissingRequiredArgumentError < ArgumentError
35
40
  def initialize(method_name, argument_name)
36
- super("You must specify a value for the #{argument_name} argument " \
37
- "for the #{method_name} assertion")
41
+ super(
42
+ "You must specify a value for the #{argument_name} argument " \
43
+ "for the #{method_name} assertion"
44
+ )
38
45
  end
39
46
  end
40
47
 
41
- Assertions.instance_methods.grep(/assert|refute/).each do |method_name|
42
- parameters = Assertions.instance_method(method_name).parameters
48
+ Assertions
49
+ .instance_methods
50
+ .grep(/assert|refute/)
51
+ .each do |method_name|
52
+ parameters = Assertions.instance_method(method_name).parameters
53
+ next if parameters.empty? || method_name == :assert_send
43
54
 
44
- # This check here for methods like `assert_silent`
45
- next if parameters.empty?
55
+ define_method(method_name) do |*args, **kwargs, &block|
56
+ passed_args = []
57
+ passed_kwargs = {}
46
58
 
47
- # rubocop:disable Metrics/MethodLength
48
- define_method(method_name) do |*args, **kwargs, &block|
49
- passed_params = []
59
+ parameters.each.with_index do |(type, arg_name), index|
60
+ if args.length > index &&
61
+ (kwargs.key?(arg_name) || kwargs.key?(ALIASES[arg_name]))
62
+ raise OverloadedArgumentError.new(method_name, arg_name)
63
+ end
50
64
 
51
- parameters.each.with_index do |(type, arg_name), index|
52
- if args.length > index &&
53
- (kwargs.key?(arg_name) || kwargs.key?(ALIASES[arg_name]))
54
- raise OverloadedArgumentError.new(method_name, arg_name)
55
- end
65
+ if type == :req && args.length <= index && !kwargs.key?(arg_name) &&
66
+ !kwargs.key?(ALIASES[arg_name])
67
+ raise MissingRequiredArgumentError.new(method_name, arg_name)
68
+ end
56
69
 
57
- if type == :req && args.length <= index &&
58
- !kwargs.key?(arg_name) && !kwargs.key?(ALIASES[arg_name])
59
- raise MissingRequiredArgumentError.new(method_name, arg_name)
70
+ case type
71
+ when :rest
72
+ passed_args +=
73
+ if args.any?
74
+ args[index..-1]
75
+ else
76
+ kwargs[arg_name] || kwargs[ALIASES[arg_name]]
77
+ end
78
+ when :key
79
+ passed_kwargs[arg_name] = (
80
+ kwargs[arg_name] || kwargs[ALIASES[arg_name]]
81
+ )
82
+ when :req, :opt
83
+ passed_args << (
84
+ args[index] || kwargs[arg_name] || kwargs[ALIASES[arg_name]]
85
+ )
86
+ else
87
+ raise "Unknown parameter type #{type}"
88
+ end
60
89
  end
61
90
 
62
- if type == :rest && args.any?
63
- passed_params += args[index..-1]
64
- elsif type == :rest
65
- passed_params += (kwargs[arg_name] || kwargs[ALIASES[arg_name]])
66
- else
67
- passed_params <<
68
- (args[index] || kwargs[arg_name] || kwargs[ALIASES[arg_name]])
69
- end
91
+ super(*passed_args, **passed_kwargs, &block)
70
92
  end
71
-
72
- super(*passed_params, &block)
73
93
  end
74
- # rubocop:enable Metrics/MethodLength
75
- end
76
94
  end
77
95
 
78
96
  # Hook into the Minitest::Test class and prepend the Keyword module
@@ -1,39 +1,40 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative 'lib/minitest/keyword/version'
3
+ require_relative "lib/minitest/keyword/version"
4
4
 
5
5
  version = Minitest::Keyword::VERSION
6
- repository = 'https://github.com/kddnewton/minitest-keyword'
6
+ repository = "https://github.com/kddnewton/minitest-keyword"
7
7
 
8
8
  Gem::Specification.new do |spec|
9
- spec.name = 'minitest-keyword'
10
- spec.version = version
11
- spec.authors = ['Kevin Newton']
12
- spec.email = ['kddnewton@gmail.com']
9
+ spec.name = "minitest-keyword"
10
+ spec.version = version
11
+ spec.authors = ["Kevin Newton"]
12
+ spec.email = ["kddnewton@gmail.com"]
13
13
 
14
- spec.summary = 'Use Minitest assertions with keyword arguments'
15
- spec.homepage = repository
16
- spec.license = 'MIT'
14
+ spec.summary = "Use Minitest assertions with keyword arguments"
15
+ spec.homepage = repository
16
+ spec.license = "MIT"
17
17
 
18
18
  spec.metadata = {
19
- 'bug_tracker_uri' => "#{repository}/issues",
20
- 'changelog_uri' => "#{repository}/blob/v#{version}/CHANGELOG.md",
21
- 'source_code_uri' => repository,
22
- 'rubygems_mfa_required' => 'true'
19
+ "bug_tracker_uri" => "#{repository}/issues",
20
+ "changelog_uri" => "#{repository}/blob/v#{version}/CHANGELOG.md",
21
+ "source_code_uri" => repository,
22
+ "rubygems_mfa_required" => "true"
23
23
  }
24
24
 
25
- spec.files = `git ls-files -z`.split("\x0").reject do |f|
26
- f.match(%r{^(test|spec|features)/})
27
- end
25
+ spec.files =
26
+ `git ls-files -z`.split("\x0")
27
+ .reject { |f| f.match(%r{^(test|spec|features)/}) }
28
28
 
29
- spec.bindir = 'exe'
30
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
31
- spec.require_paths = ['lib']
29
+ spec.bindir = "exe"
30
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
31
+ spec.require_paths = ["lib"]
32
32
 
33
- spec.add_dependency 'minitest', '~> 5.0'
33
+ spec.add_dependency "minitest", "~> 5.0"
34
34
 
35
- spec.add_development_dependency 'bundler', '~> 2.0'
36
- spec.add_development_dependency 'rake', '~> 13.0'
37
- spec.add_development_dependency 'rubocop', '~> 1.12'
38
- spec.add_development_dependency 'simplecov', '~> 0.17'
35
+ spec.add_development_dependency "bundler", "~> 2.0"
36
+ spec.add_development_dependency "rake", "~> 13.0"
37
+ spec.add_development_dependency "rubocop", "~> 1.12"
38
+ spec.add_development_dependency "simplecov", "~> 0.17"
39
+ spec.add_development_dependency "syntax_tree"
39
40
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: minitest-keyword
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin Newton
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-11-17 00:00:00.000000000 Z
11
+ date: 2024-01-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0.17'
83
+ - !ruby/object:Gem::Dependency
84
+ name: syntax_tree
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
83
97
  description:
84
98
  email:
85
99
  - kddnewton@gmail.com
@@ -88,6 +102,7 @@ extensions: []
88
102
  extra_rdoc_files: []
89
103
  files:
90
104
  - ".github/dependabot.yml"
105
+ - ".github/workflows/auto-merge.yml"
91
106
  - ".github/workflows/main.yml"
92
107
  - ".gitignore"
93
108
  - ".rubocop.yml"
@@ -99,6 +114,7 @@ files:
99
114
  - README.md
100
115
  - Rakefile
101
116
  - bin/console
117
+ - bin/readme
102
118
  - bin/setup
103
119
  - lib/minitest/keyword.rb
104
120
  - lib/minitest/keyword/version.rb
@@ -108,7 +124,7 @@ licenses:
108
124
  - MIT
109
125
  metadata:
110
126
  bug_tracker_uri: https://github.com/kddnewton/minitest-keyword/issues
111
- changelog_uri: https://github.com/kddnewton/minitest-keyword/blob/v1.0.1/CHANGELOG.md
127
+ changelog_uri: https://github.com/kddnewton/minitest-keyword/blob/v2.0.0/CHANGELOG.md
112
128
  source_code_uri: https://github.com/kddnewton/minitest-keyword
113
129
  rubygems_mfa_required: 'true'
114
130
  post_install_message:
@@ -126,7 +142,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
126
142
  - !ruby/object:Gem::Version
127
143
  version: '0'
128
144
  requirements: []
129
- rubygems_version: 3.2.3
145
+ rubygems_version: 3.4.1
130
146
  signing_key:
131
147
  specification_version: 4
132
148
  summary: Use Minitest assertions with keyword arguments