Skip to content
Snippets Groups Projects
Commit a9d8ec80 authored by Mauricio Giacomini Girardello's avatar Mauricio Giacomini Girardello
Browse files

change complaint serialization

parent 811bee48
No related branches found
No related tags found
No related merge requests found
......@@ -2,8 +2,12 @@ class Complaint
include ActiveModel::Model
include OrientDbSerializable
attr_accessor :user, :object, :message, :description
validates_presence_of :user, :object, :message
attr_accessor :user, :object, :message, :description, :created_at
validates_presence_of :user, :object, :message, :created_at
def initialize(params={})
super(params.merge(defaults))
end
def self.copyrights
ComplaintMessage.new("Objeto viola direitos autorais")
......@@ -22,6 +26,19 @@ class Complaint
end
def to_orientdb_hash
super.merge("user" => @user.rid, "object" => @object.id, "message" => @message.to_s)
super.merge("message" => @message.to_s)
end
private
def excluded_orientdb_properties
['user', 'object', '@class']
end
def defaults
{
created_at: DateTime.now.strftime("%Y-%m-%d %H:%M:%S")
}
end
end
......@@ -10,10 +10,11 @@ class ComplaintTest < ActiveSupport::TestCase
user: User.new(rid: '#14:15'),
object: LearningObject.new(id: '#16:43'),
message: Complaint.copyrights,
description: 'teste'
description: 'teste',
created_at: DateTime.now.strftime("%Y-%m-%d %H:%M:%S")
)
expected_hash = {"@class" => "Complaint", "user" => complaint.user.rid, "object" => complaint.object.id, "description" => complaint.description, "message" => complaint.message.to_s}
expected_hash = {"created_at" => complaint.created_at.to_s, "description" => complaint.description, "message" => complaint.message.to_s}
assert_equal(expected_hash, complaint.to_orientdb_hash)
end
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment