require File.dirname(__FILE__) + '/../test_helper' class TicketReportTest < Test::Unit::TestCase fixtures :ticket_reports, :projects, :groups def setup RetroCM.reload end def test_crud pj = projects(:retro) o1 = TicketReport.new(:name => 'Some Report', :project_id => pj.id, :filter_options => {:status => ['1']}) assert(o1.save) o2 = TicketReport.find(o1.id) assert_equal(o1.name, o2.name) o2.name = 'New name' assert(o2.save) assert_not_equal(o1.name, o2.name) o1.reload assert_equal(o1.name, o2.name) assert(o1.destroy) end def test_validations o1 = TicketReport.new assert(!o1.save) assert_not_nil(o1.errors[:name]) assert_not_nil(o1.errors[:project_id]) assert_not_nil(o1.errors[:filter_options]) pj1 = projects(:retro) pj2 = Project.new(:name => 'Project 2') assert(pj2.save) o1 = pj1.ticket_reports.first o2 = TicketReport.new(:name => o1.name, :project_id => pj1.id, :filter_options => {:status => ['1']}) assert(!o2.save) assert_not_nil(o2.errors[:name]) o2 = TicketReport.new(:name => o1.name, :project_id => pj2.id, :filter_options => {:status => ['1']}) assert(o2.save) end end