class ZeebeBpmnRspec::ActivatedJob
Attributes
client[R]
context[R]
job[R]
type[R]
Public Class Methods
new(job, type:, process_instance_key:, client:, context:, validate:)
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 13 def initialize(job, type:, process_instance_key:, client:, context:, validate:) # rubocop:disable Metrics/ParameterLists @job = job @type = type @process_instance_key = process_instance_key @client = client @context = context if validate context.instance_eval do expect(job).not_to be_nil, "expected to receive job of type '#{type}' but received none" aggregate_failures do expect(job.processInstanceKey).to eq(process_instance_key) expect(job.type).to eq(type) end end end end
Public Instance Methods
and_complete(variables = {})
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 106 def and_complete(variables = {}) client.complete_job(CompleteJobRequest.new( jobKey: job.key, variables: variables.to_json )) end
Also aliased as: complete
and_fail(message = nil, retries: nil)
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 95 def and_fail(message = nil, retries: nil) client.fail_job(FailJobRequest.new( { jobKey: job.key, retries: retries || 0, errorMessage: message, }.compact )) end
Also aliased as: fail
and_throw_error(error_code, message = nil)
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 84 def and_throw_error(error_code, message = nil) client.throw_error(ThrowErrorRequest.new( { jobKey: job.key, errorCode: error_code, errorMessage: message, }.compact )) end
Also aliased as: throw_error
expect_headers(headers)
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 74 def expect_headers(headers) job_headers = self.headers headers = headers.stringify_keys if headers.is_a?(Hash) context.instance_eval do expect(job_headers).to match(headers) end self end
expect_input(data)
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 64 def expect_input(data) job_variables = variables data = data.stringify_keys if data.is_a?(Hash) context.instance_eval do expect(job_variables).to match(data) end self end
headers()
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 60 def headers @_headers ||= JSON.parse(job.customHeaders) end
key()
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 35 def key job.key end
process_instance_key()
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 39 def process_instance_key job.processInstanceKey end
raw()
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 31 def raw job end
retries()
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 44 def retries job.retries end
task_key()
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 48 def task_key job.elementInstanceKey end
to_s()
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 52 def to_s raw.to_s end
update_retries(retries = 1)
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 114 def update_retries(retries = 1) client.update_job_retries(UpdateJobRetriesRequest.new( jobKey: job.key, retries: retries )) end
variables()
click to toggle source
# File lib/zeebe_bpmn_rspec/activated_job.rb, line 56 def variables @_variables ||= JSON.parse(job.variables) end