Module: Applitools::Jsonable

Defined in:
lib/applitools/core/jsonable.rb

Defined Under Namespace

Modules: ClassMethods

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



4
5
6
7
8
9
10
11
12
# File 'lib/applitools/core/jsonable.rb', line 4

def self.included(base)
  base.extend ClassMethods
  base.class_eval do
    class << self
      attr_accessor :json_methods
    end
    @json_methods = {}
  end
end

Instance Method Details

#jsonObject



43
44
45
# File 'lib/applitools/core/jsonable.rb', line 43

def json
  Oj.dump json_data
end

#json_dataObject



39
40
41
# File 'lib/applitools/core/jsonable.rb', line 39

def json_data
  self.class.json_methods.sort.map {|k,v| [k, json_value(send(v))]}.to_h
end