65 lines
1.6 KiB
Ruby
65 lines
1.6 KiB
Ruby
# Copyright (c) 2010-2011, Diaspora Inc. This file is
|
|
# licensed under the Affero General Public License version 3 or later. See
|
|
# the COPYRIGHT file.
|
|
|
|
require 'spec_helper'
|
|
|
|
describe Report do
|
|
before do
|
|
#:report => { :post_id => @message.id, :post_type => 'post', :text => 'offensive content' }
|
|
@valid_post = {
|
|
:post_id => 666,
|
|
:post_type => 'post',
|
|
:text => 'offensive content'
|
|
}
|
|
@valid_comment = {
|
|
:post_id => 666,
|
|
:post_type => 'comment',
|
|
:text => 'offensive content'
|
|
}
|
|
@report_post = bob.reports.new(@valid_post)
|
|
@report_comment = bob.reports.new(@valid_comment)
|
|
end
|
|
|
|
describe '#validation' do
|
|
it 'validates that post ID is required' do
|
|
report = bob.reports.new(:post_type => 'post', :text => 'blub')
|
|
report.save.should_not be_true
|
|
end
|
|
|
|
it 'validates that post type is required' do
|
|
report = bob.reports.new(:post_id => 666, :text => 'blub')
|
|
report.save.should_not be_true
|
|
end
|
|
end
|
|
|
|
describe '#insert' do
|
|
it 'post successfully' do
|
|
@report_post.save.should be_true
|
|
end
|
|
|
|
it 'comment successfully' do
|
|
@report_comment.save.should be_true
|
|
end
|
|
end
|
|
|
|
describe '#delete' do
|
|
it 'post' do
|
|
@report_post.destroy_reported_item.should be_true
|
|
end
|
|
|
|
it 'comment' do
|
|
@report_comment.destroy_reported_item.should be_true
|
|
end
|
|
end
|
|
|
|
describe '.check_database' do
|
|
it 'post' do
|
|
Report.where(:reviewed => true, :post_id => 666, :post_type => 'post').should be_true
|
|
end
|
|
|
|
it 'comment' do
|
|
Report.where(:reviewed => true, :post_id => 666, :post_type => 'comment').should be_true
|
|
end
|
|
end
|
|
end
|