Sha256: 3b3ddd45bb089c3980b3453c381bf9270f4543fa90e9d3e2a5ee5dfbda0adb07
Contents?: true
Size: 917 Bytes
Versions: 8
Compression:
Stored size: 917 Bytes
Contents
require 'cucumber/formatter/errors' module Cucumber module Formatter module Query class HookByTestStep def initialize(config) @hook_id_by_test_step_id = {} config.on_event :test_step_created, &method(:on_test_step_created) config.on_event :hook_test_step_created, &method(:on_hook_test_step_created) end def hook_id(test_step) return @hook_id_by_test_step_id[test_step.id] if @hook_id_by_test_step_id.key?(test_step.id) raise TestStepUnknownError, "No hook found for #{test_step.id} }. Known: #{@hook_id_by_test_step_id.keys}" end private def on_test_step_created(event) @hook_id_by_test_step_id[event.test_step.id] = nil end def on_hook_test_step_created(event) @hook_id_by_test_step_id[event.test_step.id] = event.hook.id end end end end end
Version data entries
8 entries across 8 versions & 2 rubygems