Module: SuperDiff::ActiveRecord::ObjectInspection::Inspectors

Defined in:
lib/super_diff/active_record/object_inspection/inspectors.rb,
lib/super_diff/active_record/object_inspection/inspectors/active_record_model.rb,
lib/super_diff/active_record/object_inspection/inspectors/active_record_relation.rb

Constant Summary collapse

ActiveRecordModel =
SuperDiff::ObjectInspection::InspectionTree.new do
  add_text do |object|
    "#<#{object.class} "
  end

  when_multiline do
    add_text "{"
  end

  nested do |object|
    add_break

    insert_separated_list(
      ["id"] + (object.attributes.keys.sort - ["id"]),
      separator: ",",
    ) do |name|
      add_text name
      add_text ": "
      add_inspection_of object.read_attribute(name)
    end
  end

  add_break

  when_multiline do
    add_text "}"
  end

  add_text ">"
end
ActiveRecordRelation =
SuperDiff::ObjectInspection::InspectionTree.new do
  add_text "#<ActiveRecord::Relation ["

  nested do |array|
    insert_array_inspection_of(array)
  end

  add_break
  add_text "]>"
end