service_base 1.0.3 → 1.0.4

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: 17af4f8d7a5f86ee24adbbbba2118e7b47134f2730e4e04fb0c0107c86cfa168
4
- data.tar.gz: 1ad5a04d75c99bbc061d1ab53ce67d0d8864c132b8be85ebeb4da3b1f759d996
3
+ metadata.gz: 6a3076af16c201914a3bdc1fd7ab57935c53ac60439dff7e0c77b97e908f5101
4
+ data.tar.gz: c686ed12bedaa0d838242802b1a023c5c174c542ec646e73397b1aebc29b2825
5
5
  SHA512:
6
- metadata.gz: 559196375ec8a48520b076feb989287c43e84cf7a759b91d0db753448f9199fe02f3febff0a06e9d797523f5774e58d26e4745f921820f94298519873d4a5732
7
- data.tar.gz: ec37a4775094ebf67fa9e09b3db800206f31f8cfa5775866675f0213f9f188f5b228bc503e6e2ff7b3827bcfae039cc1dc0285796e96831ef990f182174a5709
6
+ metadata.gz: 799b4f4cb1ab37810c1829c29cee82a63459e4bd7474db94e49975baa56dda91c458fc773946f2a6a1709a5fd96c47072edd1f36da98f2a5c333a1feda3293cb
7
+ data.tar.gz: cfbc7496074e37e46eb918b7d90df33b058d3d6ff8137bb7ea2d82a07160b31948caed2a4b623af9dd0886803883dc38ad2932229fd178113274804c5cb7a351
data/README.md CHANGED
@@ -314,9 +314,10 @@ require "service_base/rspec"
314
314
  ```
315
315
 
316
316
  ```ruby
317
- stub_service_success(User::CreateService)
318
- stub_service_success(User::CreateService, success: true)
319
- stub_service_success(User::CreateService, success: create(:user))
317
+ stub_service_success(User::CreateService) # yields the success block of the service call, disregarding the Success's value
318
+ stub_service_success(User::CreateService, success: true) # yields the success block of the service call, returning `true` as the Success's value
319
+ stub_service_success(User::CreateService, success: create(:user)) # yields the success block of the service call, returning a `User` instance as the Success's value
320
+ stub_service_success(User::CreateService, success_nil: true) # yields the success block of the service call, returning `nil` as the Success's value
320
321
 
321
322
  stub_service_failure(User::CreateService, failure: "error")
322
323
  stub_service_failure(User::CreateService failure: :invalid_email, matched: true)
@@ -3,13 +3,15 @@
3
3
  module ServiceSupport
4
4
  # Note that you must have at least one `on.success` and one `on.failure`
5
5
  # matcher for each block-style service call
6
- def stub_service_success(service_class, success: nil)
6
+ def stub_service_success(service_class, success: nil, success_nil: false)
7
7
  block = double(:on)
8
8
  allow(block).to receive(:failure)
9
- if success.present?
9
+ if !success.nil?
10
10
  allow(block).to receive(:success).and_yield(success)
11
+ elsif success_nil
12
+ allow(block).to receive(:success).and_yield(nil)
11
13
  else
12
- allow(block).to receive(:success)
14
+ allow(block).to receive(:success).and_yield
13
15
  end
14
16
  allow(service_class).to receive(:call).and_yield(block)
15
17
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ServiceBase
4
- VERSION = '1.0.3'
4
+ VERSION = '1.0.4'
5
5
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: service_base
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Klein
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-04-24 00:00:00.000000000 Z
10
+ date: 2025-05-01 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: dry-matcher