Module: TestBench::Telemetry::Event

Defined in:
lib/test_bench/telemetry/event.rb

Defined Under Namespace

Modules: Build, CaseEquality, EventName, EventType, Export, Import Classes: Metadata

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.define(*attributes, &blk) ⇒ Object



4
5
6
7
8
9
10
11
12
# File 'lib/test_bench/telemetry/event.rb', line 4

def self.define(*attributes, &blk)
  Struct.new(*attributes, :metadata) do
    include Event

    if not blk.nil?
      instance_exec(&blk)
    end
  end
end

.included(cls) ⇒ Object



14
15
16
17
18
19
20
21
22
23
# File 'lib/test_bench/telemetry/event.rb', line 14

def self.included(cls)
  cls.class_exec do
    extend EventType
    extend EventName

    extend Build

    extend CaseEquality
  end
end

Instance Method Details

#dataObject



33
34
35
# File 'lib/test_bench/telemetry/event.rb', line 33

def data
  values[0...-1]
end

#event_nameObject



29
30
31
# File 'lib/test_bench/telemetry/event.rb', line 29

def event_name
  self.class.event_name
end

#event_typeObject



25
26
27
# File 'lib/test_bench/telemetry/event.rb', line 25

def event_type
  self.class.event_type
end