mocktail 1.2.1 → 1.2.2

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: f98c176c091bd92d1c3f28be3c8c3eea66cbc3f3b56f9a2fac3f7f78d5eb2775
4
- data.tar.gz: 9422af274277a791b225540f74e3c77f99aff75b908fb1529c56d6f47e35a27f
3
+ metadata.gz: 0d2944636158dbc47b6da4246d28303f274e2740b7d61ccf3359ff1ce668ab40
4
+ data.tar.gz: ea0aa33b02f8f9dac5be81bf6a5a394d181f078127a7b9e22fb55d5c30c85808
5
5
  SHA512:
6
- metadata.gz: bc5ae9538c17efdc5675c1f19ca1daaa72dea52162f469fd4a295e68d6d5755792f8533a4c7244d0146e82edfb688dab3a608ea449ba57da3b56ac2e15c75f48
7
- data.tar.gz: 381e52bf6c28151c0ab1dfba3f300df8cd8bc5cf218ddcc735e7dfdced93649f5f4e299fffefc449eb24cf3589c4067d23f7cffb313262c54409290ca10ac1a2
6
+ metadata.gz: 15456b62e2fe1157c17b694c9c8d83d1fa42fa64f4cc3a3aa998a3d21ccf8ae13320694ed3ed1ac500a1636210ae9b153b1070fa427ed9dfd04e5a43b29d56b6
7
+ data.tar.gz: 193f8fca67cfb78fc2eefc21b0c70cf5f9ddb9028b0ff948472c119ea0350dda587a4a150e7b8cc283ed9cfe4f8e451a323f9517517d73dbfd84a20cedfce2ed
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ # 1.2.2
2
+
3
+ * As promised in 1.2.1, there were bugs. [#19](https://github.com/testdouble/mocktail/pull/19)
4
+
1
5
  # 1.2.1
2
6
 
3
7
  * Adds support for faking methods that use options hashes that are called with
data/Gemfile CHANGED
@@ -8,3 +8,4 @@ gem "minitest"
8
8
  gem "standard"
9
9
  gem "pry"
10
10
  gem "simplecov"
11
+ gem "m"
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- mocktail (1.2.1)
4
+ mocktail (1.2.2)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -10,6 +10,9 @@ GEM
10
10
  coderay (1.1.3)
11
11
  docile (1.4.0)
12
12
  json (2.6.2)
13
+ m (1.6.1)
14
+ method_source (>= 0.6.7)
15
+ rake (>= 0.9.2.2)
13
16
  method_source (1.0.0)
14
17
  minitest (5.16.3)
15
18
  parallel (1.22.1)
@@ -54,6 +57,7 @@ PLATFORMS
54
57
  ruby
55
58
 
56
59
  DEPENDENCIES
60
+ m
57
61
  minitest
58
62
  mocktail!
59
63
  pry
data/bin/m ADDED
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'm' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ require "pathname"
12
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
+ Pathname.new(__FILE__).realpath)
14
+
15
+ bundle_binstub = File.expand_path("../bundle", __FILE__)
16
+
17
+ if File.file?(bundle_binstub)
18
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
+ load(bundle_binstub)
20
+ else
21
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
+ end
24
+ end
25
+
26
+ require "rubygems"
27
+ require "bundler/setup"
28
+
29
+ load Gem.bin_path("m", "m")
@@ -3,6 +3,8 @@ require_relative "../share/bind"
3
3
  module Mocktail
4
4
  class TransformsParams
5
5
  def transform(dry_call, params: dry_call.original_method.parameters)
6
+ params = name_unnamed_params(params)
7
+
6
8
  Signature.new(
7
9
  positional_params: Params.new(
8
10
  all: params.select { |t, _|
@@ -28,5 +30,17 @@ module Mocktail
28
30
  block_arg: dry_call.block
29
31
  )
30
32
  end
33
+
34
+ private
35
+
36
+ def name_unnamed_params(params)
37
+ params.map.with_index { |param, i|
38
+ if param.size == 1
39
+ param + ["unnamed_arg_#{i + 1}"]
40
+ else
41
+ param
42
+ end
43
+ }
44
+ end
31
45
  end
32
46
  end
@@ -1,3 +1,3 @@
1
1
  module Mocktail
2
- VERSION = "1.2.1"
2
+ VERSION = "1.2.2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mocktail
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Searls
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-11-17 00:00:00.000000000 Z
11
+ date: 2022-11-19 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description:
14
14
  email:
@@ -27,6 +27,7 @@ files:
27
27
  - README.md
28
28
  - Rakefile
29
29
  - bin/console
30
+ - bin/m
30
31
  - bin/rake
31
32
  - bin/setup
32
33
  - lib/mocktail.rb