Sha256: bdfe6b267c1b29f909d7ebc5da0b9c1c4d1609ae3d1bedd3e9d3cd42337f3999

Contents?: true

Size: 1.19 KB

Versions: 20

Compression:

Stored size: 1.19 KB

Contents

module Mumuki::Laboratory::Status
  def self.load(i)
    cast(i)
  end

  def self.dump(status)
    if status.is_a? Numeric
      status
    else
      status.to_mumuki_status.to_i
    end
  end

  def self.from_sym(status)
    "Mumuki::Laboratory::Status::#{status.to_s.camelize}".constantize
  end

  def self.cast(i)
    STATUSES[i.to_i]
  end
end

require_relative './status/base'
require_relative './status/unknown'
require_relative './status/pending'
require_relative './status/running'
require_relative './status/passed'
require_relative './status/failed'
require_relative './status/errored'
require_relative './status/aborted'
require_relative './status/passed_with_warnings'
require_relative './status/manual_evaluation_pending'

module Mumuki::Laboratory::Status
  STATUSES = [Pending, Running, Passed, Failed, Errored, Aborted, PassedWithWarnings, ManualEvaluationPending]
end


class Object
  def to_mumuki_status
    status.to_mumuki_status
  end
end

class String
  def to_mumuki_status
    to_sym.to_mumuki_status
  end
end

class Symbol
  def to_mumuki_status
    Mumuki::Laboratory::Status.from_sym(self)
  end
end

module Mumuki::Laboratory::Status::Base
  def to_mumuki_status
    self
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
mumuki-laboratory-5.5.0 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.4.0 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.3.0 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.2.1 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.2.0 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.1.1 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.1.0 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.0.12 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.0.11 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.0.10 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.0.9 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.0.8 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.0.7 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.0.6 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.0.5 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.0.4 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.0.3 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.0.2 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.0.1 lib/mumuki/laboratory/status.rb
mumuki-laboratory-5.0.0 lib/mumuki/laboratory/status.rb