Class: LabTech::Observation

Inherits:
ApplicationRecord show all
Defined in:
app/models/lab_tech/observation.rb

Instance Method Summary collapse

Instance Method Details

#raised_error?Boolean

Returns:

  • (Boolean)


12
13
14
15
# File 'app/models/lab_tech/observation.rb', line 12

def raised_error?
  exception_values = [ exception_class, exception_message, exception_backtrace ]
  exception_values.any?( &:present? )
end

#record_a_science(scientist_observation) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
# File 'app/models/lab_tech/observation.rb', line 17

def record_a_science(scientist_observation)
  unless scientist_observation.kind_of?( Scientist::Observation )
    raise ArgumentError, "expected a Scientist::Observation but got #{scientist_observation.class}"
  end

  self.name     = scientist_observation.name
  self.duration = scientist_observation.duration

  self.value = scientist_observation.cleaned_value
  record_errors scientist_observation.exception
end

#timed_out?Boolean

Returns:

  • (Boolean)


29
30
31
# File 'app/models/lab_tech/observation.rb', line 29

def timed_out?
  exception_class == "Timeout::Error"
end