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

serializing complaint model for orientdb

parent bebbf08d
No related branches found
No related tags found
No related merge requests found
class Complaint class Complaint
include ActiveModel::Model include ActiveModel::Model
include OrientDbSerializable
attr_accessor :user,:object,:message,:description attr_accessor :user, :object, :message, :description
validates_presence_of :user,:object,:message validates_presence_of :user, :object, :message
def self.copyrights def self.copyrights
ComplaintMessage.new("Objeto viola direitos autorais") ComplaintMessage.new("Objeto viola direitos autorais")
...@@ -19,4 +20,8 @@ class Complaint ...@@ -19,4 +20,8 @@ class Complaint
def self.fake_user def self.fake_user
ComplaintMessage.new "Usuário falso" ComplaintMessage.new "Usuário falso"
end end
def to_orientdb_hash
super.merge("user" => @user.rid, "object" => @object.id, "message" => @message.to_s)
end
end end
require 'test_helper'
class ComplaintTest < ActiveSupport::TestCase
should validate_presence_of :user
should validate_presence_of :object
should validate_presence_of :message
test 'serialize for orientdb' do
complaint = Complaint.new(
user: User.new(rid: '#14:15'),
object: LearningObject.new(id: '#16:43'),
message: Complaint.copyrights,
description: 'teste'
)
expected_hash = {"@class" => "Complaint", "user" => complaint.user.rid, "object" => complaint.object.id, "description" => complaint.description, "message" => complaint.message.to_s}
assert_equal(expected_hash, complaint.to_orientdb_hash)
end
test 'should returns copyright message' do
assert_complaint_message Complaint.copyrights
end
test 'should returns ofensive content message' do
assert_complaint_message Complaint.ofensive_content
end
test 'should returns ofensive user message' do
assert_complaint_message Complaint.ofensive_user
end
test 'should returns fake user message' do
assert_complaint_message Complaint.fake_user
end
private
def assert_complaint_message(complaint_message)
assert_instance_of ComplaintMessage, complaint_message
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