Chris@119: require File.expand_path('../../test_helper', __FILE__) chris@22: chris@22: class ActivitiesControllerTest < ActionController::TestCase Chris@909: fixtures :projects, :trackers, :issue_statuses, :issues, Chris@909: :enumerations, :users, :issue_categories, Chris@909: :projects_trackers, Chris@909: :roles, Chris@909: :member_roles, Chris@909: :members, Chris@909: :groups_users, Chris@909: :enabled_modules, Chris@909: :workflows, Chris@909: :auth_sources, Chris@909: :journals, :journal_details Chris@909: chris@22: chris@22: def test_project_index chris@22: get :index, :id => 1, :with_subprojects => 0 chris@22: assert_response :success chris@22: assert_template 'index' chris@22: assert_not_nil assigns(:events_by_day) Chris@441: Chris@441: assert_tag :tag => "h3", chris@22: :content => /#{2.days.ago.to_date.day}/, chris@22: :sibling => { :tag => "dl", chris@22: :child => { :tag => "dt", chris@22: :attributes => { :class => /issue-edit/ }, chris@22: :child => { :tag => "a", chris@22: :content => /(#{IssueStatus.find(2).name})/, chris@22: } chris@22: } chris@22: } chris@22: end Chris@441: Chris@909: def test_project_index_with_invalid_project_id_should_respond_404 Chris@909: get :index, :id => 299 Chris@909: assert_response 404 Chris@909: end Chris@909: chris@22: def test_previous_project_index chris@22: get :index, :id => 1, :from => 3.days.ago.to_date chris@22: assert_response :success chris@22: assert_template 'index' chris@22: assert_not_nil assigns(:events_by_day) Chris@441: Chris@441: assert_tag :tag => "h3", chris@22: :content => /#{3.day.ago.to_date.day}/, chris@22: :sibling => { :tag => "dl", chris@22: :child => { :tag => "dt", chris@22: :attributes => { :class => /issue/ }, chris@22: :child => { :tag => "a", chris@22: :content => /#{Issue.find(1).subject}/, chris@22: } chris@22: } chris@22: } chris@22: end Chris@441: chris@22: def test_global_index chris@22: get :index chris@22: assert_response :success chris@22: assert_template 'index' chris@22: assert_not_nil assigns(:events_by_day) Chris@441: Chris@441: assert_tag :tag => "h3", chris@22: :content => /#{5.day.ago.to_date.day}/, chris@22: :sibling => { :tag => "dl", chris@22: :child => { :tag => "dt", chris@22: :attributes => { :class => /issue/ }, chris@22: :child => { :tag => "a", chris@22: :content => /#{Issue.find(5).subject}/, chris@22: } chris@22: } chris@22: } chris@22: end Chris@441: chris@22: def test_user_index chris@22: get :index, :user_id => 2 chris@22: assert_response :success chris@22: assert_template 'index' chris@22: assert_not_nil assigns(:events_by_day) Chris@441: Chris@441: assert_tag :tag => "h3", chris@22: :content => /#{3.day.ago.to_date.day}/, chris@22: :sibling => { :tag => "dl", chris@22: :child => { :tag => "dt", chris@22: :attributes => { :class => /issue/ }, chris@22: :child => { :tag => "a", chris@22: :content => /#{Issue.find(1).subject}/, chris@22: } chris@22: } chris@22: } chris@22: end Chris@441: Chris@909: def test_user_index_with_invalid_user_id_should_respond_404 Chris@909: get :index, :user_id => 299 Chris@909: assert_response 404 Chris@909: end Chris@909: chris@22: def test_index_atom_feed chris@22: get :index, :format => 'atom' chris@22: assert_response :success Chris@909: assert_template 'common/feed.atom' chris@22: assert_tag :tag => 'entry', :child => { chris@22: :tag => 'link', chris@22: :attributes => {:href => 'http://test.host/issues/11'}} chris@22: end Chris@909: Chris@909: def test_index_atom_feed_with_one_item_type Chris@909: get :index, :format => 'atom', :show_issues => '1' Chris@909: assert_response :success Chris@909: assert_template 'common/feed.atom' Chris@909: assert_tag :tag => 'title', :content => /Issues/ Chris@909: end chris@22: end