board_test.rb 1.44 KB
Newer Older
1
#-- encoding: UTF-8
2 3
#-- copyright
# ChiliProject is a project management system.
4
#
Holger Just's avatar
Holger Just committed
5
# Copyright (C) 2010-2013 the ChiliProject Team
6
#
7 8 9 10
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
11
#
12 13 14
# See doc/COPYRIGHT.rdoc for more details.
#++

15
require File.expand_path('../../test_helper', __FILE__)
16

17
class BoardTest < ActiveSupport::TestCase
18
  fixtures :projects, :boards, :messages, :attachments, :watchers
19 20 21 22

  def setup
    @project = Project.find(1)
  end
23

24 25 26 27 28 29 30 31 32 33 34 35 36
  def test_create
    board = Board.new(:project => @project, :name => 'Test board', :description => 'Test board description')
    assert board.save
    board.reload
    assert_equal 'Test board', board.name
    assert_equal 'Test board description', board.description
    assert_equal @project, board.project
    assert_equal 0, board.topics_count
    assert_equal 0, board.messages_count
    assert_nil board.last_message
    # last position
    assert_equal @project.boards.size, board.position
  end
37

38 39
  def test_destroy
    board = Board.find(1)
40 41 42 43 44 45 46
    assert_difference 'Message.count', -6 do
      assert_difference 'Attachment.count', -1 do
        assert_difference 'Watcher.count', -1 do
          assert board.destroy
        end
      end
    end
47 48 49
    assert_equal 0, Message.count(:conditions => {:board_id => 1})
  end
end