Chris@1295: # Redmine - project management software Chris@1295: # Copyright (C) 2006-2012 Jean-Philippe Lang Chris@1295: # Chris@1295: # This program is free software; you can redistribute it and/or Chris@1295: # modify it under the terms of the GNU General Public License Chris@1295: # as published by the Free Software Foundation; either version 2 Chris@1295: # of the License, or (at your option) any later version. Chris@1295: # Chris@1295: # This program is distributed in the hope that it will be useful, Chris@1295: # but WITHOUT ANY WARRANTY; without even the implied warranty of Chris@1295: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the Chris@1295: # GNU General Public License for more details. Chris@1295: # Chris@1295: # You should have received a copy of the GNU General Public License Chris@1295: # along with this program; if not, write to the Free Software Chris@1295: # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Chris@1295: Chris@1295: require File.expand_path('../../test_helper', __FILE__) Chris@1295: Chris@1295: class PreviewsControllerTest < ActionController::TestCase Chris@1295: fixtures :projects, :trackers, :issue_statuses, :issues, Chris@1295: :enumerations, :users, :issue_categories, Chris@1295: :projects_trackers, Chris@1295: :roles, Chris@1295: :member_roles, Chris@1295: :members, Chris@1295: :enabled_modules, Chris@1295: :workflows, Chris@1295: :journals, :journal_details, Chris@1295: :news Chris@1295: Chris@1295: def test_preview_new_issue Chris@1295: @request.session[:user_id] = 2 Chris@1295: post :issue, :project_id => '1', :issue => {:description => 'Foo'} Chris@1295: assert_response :success Chris@1295: assert_template 'preview' Chris@1295: assert_not_nil assigns(:description) Chris@1295: end Chris@1295: Chris@1295: def test_preview_issue_notes Chris@1295: @request.session[:user_id] = 2 Chris@1295: post :issue, :project_id => '1', :id => 1, Chris@1295: :issue => {:description => Issue.find(1).description, :notes => 'Foo'} Chris@1295: assert_response :success Chris@1295: assert_template 'preview' Chris@1295: assert_not_nil assigns(:notes) Chris@1295: end Chris@1295: Chris@1295: def test_preview_journal_notes_for_update Chris@1295: @request.session[:user_id] = 2 Chris@1295: post :issue, :project_id => '1', :id => 1, :notes => 'Foo' Chris@1295: assert_response :success Chris@1295: assert_template 'preview' Chris@1295: assert_not_nil assigns(:notes) Chris@1295: assert_tag :p, :content => 'Foo' Chris@1295: end Chris@1295: Chris@1295: def test_preview_new_news Chris@1295: get :news, :project_id => 1, Chris@1295: :news => {:title => '', Chris@1295: :description => 'News description', Chris@1295: :summary => ''} Chris@1295: assert_response :success Chris@1295: assert_template 'common/_preview' Chris@1295: assert_tag :tag => 'fieldset', :attributes => { :class => 'preview' }, Chris@1295: :content => /News description/ Chris@1295: end Chris@1295: Chris@1295: def test_existing_new_news Chris@1295: get :news, :project_id => 1, :id => 2, Chris@1295: :news => {:title => '', Chris@1295: :description => 'News description', Chris@1295: :summary => ''} Chris@1295: assert_response :success Chris@1295: assert_template 'common/_preview' Chris@1295: assert_equal News.find(2), assigns(:previewed) Chris@1295: assert_not_nil assigns(:attachments) Chris@1295: Chris@1295: assert_tag :tag => 'fieldset', :attributes => { :class => 'preview' }, Chris@1295: :content => /News description/ Chris@1295: end Chris@1295: end