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 ...@@ -2,8 +2,12 @@ class Complaint
include ActiveModel::Model include ActiveModel::Model
include OrientDbSerializable include OrientDbSerializable
attr_accessor :user, :object, :message, :description attr_accessor :user, :object, :message, :description, :created_at
validates_presence_of :user, :object, :message validates_presence_of :user, :object, :message, :created_at
def initialize(params={})
super(params.merge(defaults))
end
def self.copyrights def self.copyrights
ComplaintMessage.new("Objeto viola direitos autorais") ComplaintMessage.new("Objeto viola direitos autorais")
...@@ -22,6 +26,19 @@ class Complaint ...@@ -22,6 +26,19 @@ class Complaint
end end
def to_orientdb_hash 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
end end
...@@ -10,10 +10,11 @@ class ComplaintTest < ActiveSupport::TestCase ...@@ -10,10 +10,11 @@ class ComplaintTest < ActiveSupport::TestCase
user: User.new(rid: '#14:15'), user: User.new(rid: '#14:15'),
object: LearningObject.new(id: '#16:43'), object: LearningObject.new(id: '#16:43'),
message: Complaint.copyrights, 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) assert_equal(expected_hash, complaint.to_orientdb_hash)
end 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