Module: Sidekiq::Sorbet::RSpec::Matchers

Defined in:
lib/sidekiq/sorbet/rspec/matchers.rb

Overview

Custom RSpec matchers for validating Sidekiq::Sorbet worker argument types

Defined Under Namespace

Classes: AcceptArgs, HaveArg, HaveArgs, RejectArgs

Instance Method Summary collapse

Instance Method Details

#accept_args(args) ⇒ AcceptArgs

Validates that a worker accepts specific arguments

Parameters:

  • args (Hash)

    The arguments to test

Returns:



307
308
309
# File 'lib/sidekiq/sorbet/rspec/matchers.rb', line 307

def accept_args(args)
  AcceptArgs.new(args)
end

#have_arg(field_name, expected_type = nil) ⇒ HaveArg

Validates that a worker has a specific argument defined

Parameters:

  • field_name (Symbol)

    The argument name

  • expected_type (Class, nil) (defaults to: nil)

    The expected type (optional)

Returns:

  • (HaveArg)

    The matcher instance



287
288
289
# File 'lib/sidekiq/sorbet/rspec/matchers.rb', line 287

def have_arg(field_name, expected_type = nil)
  HaveArg.new(field_name, expected_type)
end

#have_args(args_hash) ⇒ HaveArgs #have_args(field_name, expected_type) ⇒ HaveArgs

Validates that a worker has specific arguments defined

Overloads:

  • #have_args(args_hash) ⇒ HaveArgs

    Parameters:

    • args_hash (Hash<Symbol, Class>)

      Arguments with their types

  • #have_args(field_name, expected_type) ⇒ HaveArgs

    Parameters:

    • field_name (Symbol)

      The argument name

    • expected_type (Class)

      The expected type

Returns:



299
300
301
# File 'lib/sidekiq/sorbet/rspec/matchers.rb', line 299

def have_args(args_hash_or_field = nil, expected_type = nil)
  HaveArgs.new(args_hash_or_field, expected_type)
end

#reject_args(args) ⇒ RejectArgs

Validates that a worker rejects specific arguments

Parameters:

  • args (Hash)

    The arguments to test

Returns:



315
316
317
# File 'lib/sidekiq/sorbet/rspec/matchers.rb', line 315

def reject_args(args)
  RejectArgs.new(args)
end