Method: Kennel::Models::Screen.normalize

Defined in:
lib/kennel/models/screen.rb

.normalize(expected, actual) ⇒ Object



68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# File 'lib/kennel/models/screen.rb', line 68

def self.normalize(expected, actual)
  super

  (actual[:widgets] || []).each do |w|
    # api randomly returns time.live_span or timeframe or empty time hash
    if w.dig(:time, :live_span)
      w[:timeframe] = w[:time].delete(:live_span)
    end

    COPIED_WIDGET_VALUES.each { |v| w.delete v }
  end

  ignore_default expected, actual, SCREEN_DEFAULTS
  ignore_defaults expected[:widgets], actual[:widgets], WIDGET_DEFAULTS
  ignore_request_defaults expected, actual, :widgets, :tile_def
end