Class: RSpec::Sidekiq::Matchers::HaveEnqueuedJob

Inherits:
Object
  • Object
show all
Defined in:
lib/rspec/sidekiq/matchers/have_enqueued_job.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(expected_arguments) ⇒ HaveEnqueuedJob

Returns a new instance of HaveEnqueuedJob.



11
12
13
# File 'lib/rspec/sidekiq/matchers/have_enqueued_job.rb', line 11

def initialize(expected_arguments)
  @expected_arguments = expected_arguments
end

Instance Attribute Details

#actualObject (readonly)

Returns the value of attribute actual.



9
10
11
# File 'lib/rspec/sidekiq/matchers/have_enqueued_job.rb', line 9

def actual
  @actual
end

#expected_argumentsObject (readonly)

Returns the value of attribute expected_arguments.



9
10
11
# File 'lib/rspec/sidekiq/matchers/have_enqueued_job.rb', line 9

def expected_arguments
  @expected_arguments
end

#klassObject (readonly)

Returns the value of attribute klass.



9
10
11
# File 'lib/rspec/sidekiq/matchers/have_enqueued_job.rb', line 9

def klass
  @klass
end

Instance Method Details

#descriptionObject



15
16
17
# File 'lib/rspec/sidekiq/matchers/have_enqueued_job.rb', line 15

def description
  "have an enqueued #{klass} job with arguments #{expected_arguments}"
end

#failure_messageObject



19
20
21
22
# File 'lib/rspec/sidekiq/matchers/have_enqueued_job.rb', line 19

def failure_message
  "expected to have an enqueued #{klass} job with arguments #{expected_arguments}\n\n" \
  "found: #{actual}"
end

#failure_message_when_negatedObject



30
31
32
# File 'lib/rspec/sidekiq/matchers/have_enqueued_job.rb', line 30

def failure_message_when_negated
  "expected to not have an enqueued #{klass} job with arguments #{expected_arguments}"
end

#matches?(klass) ⇒ Boolean

Returns:

  • (Boolean)


24
25
26
27
28
# File 'lib/rspec/sidekiq/matchers/have_enqueued_job.rb', line 24

def matches?(klass)
  @klass = klass
  @actual = unwrapped_job_arguments(klass.jobs)
  @actual.any? { |arguments| contain_exactly?(arguments) }
end