Module: CrossSpec
- Defined in:
- lib/cross_spec.rb,
lib/cross_spec/spec.rb,
lib/cross_spec/client.rb,
lib/cross_spec/config.rb,
lib/cross_spec/message.rb,
lib/cross_spec/version.rb,
lib/cross_spec/kafka_client.rb,
lib/cross_spec/task_message.rb,
lib/cross_spec/service_message.rb
Defined Under Namespace
Classes: Client, Config, FailureBeacon, KafkaClient, Message, ServiceMessage, Spec, SpecWaiting, TaskMessage
Constant Summary
collapse
- FAIL_TASK =
"cross_spec:failure".freeze
- VERSION =
"0.1.0"
Class Method Summary
collapse
Class Method Details
.beacon(task, data = nil, biomarkers = nil) ⇒ Object
51
52
53
54
55
56
57
58
|
# File 'lib/cross_spec.rb', line 51
def self.beacon(task, data = nil, biomarkers = nil)
str = JSON.dump(
task: task,
biomarkers: biomarkers || DistributedTracing.get,
data: data
)
config.client.broadcast(str)
end
|
.config ⇒ Object
30
31
32
33
34
|
# File 'lib/cross_spec.rb', line 30
def self.config
return @config if defined?(@config)
@config = Config.new
@config
end
|
25
26
27
28
|
# File 'lib/cross_spec.rb', line 25
def self.configure
@config = Config.new
yield(@config)
end
|
.failure_beacon!(data = nil) ⇒ Object
47
48
49
|
# File 'lib/cross_spec.rb', line 47
def self.failure_beacon!(data = nil)
beacon(FAIL_TASK, data)
end
|
.handle(service, &block) ⇒ Object
36
37
38
39
40
41
|
# File 'lib/cross_spec.rb', line 36
def self.handle(service, &block)
config.handlers[service] = Proc.new do |*args|
block.call(*args)
nil
end
end
|
.listen! ⇒ Object
43
44
45
|
# File 'lib/cross_spec.rb', line 43
def self.listen!
config.client.listen!
end
|