annotate test/integration/lib/redmine/themes_test.rb @ 1082:997f6d7738f7 bug_531

In repo controller entry action, show the page for the file even if it's binary (so user still has access to history etc links). This makes it possible to use the entry action as the default when a file is clicked on
author Chris Cannam <chris.cannam@soundsoftware.ac.uk>
date Thu, 22 Nov 2012 18:04:17 +0000
parents cbb26bc654de
children 433d4f72a19b
rev   line source
Chris@119 1 # Redmine - project management software
Chris@909 2 # Copyright (C) 2006-2011 Jean-Philippe Lang
Chris@119 3 #
Chris@119 4 # This program is free software; you can redistribute it and/or
Chris@119 5 # modify it under the terms of the GNU General Public License
Chris@119 6 # as published by the Free Software Foundation; either version 2
Chris@119 7 # of the License, or (at your option) any later version.
Chris@909 8 #
Chris@119 9 # This program is distributed in the hope that it will be useful,
Chris@119 10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
Chris@119 11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
Chris@119 12 # GNU General Public License for more details.
Chris@909 13 #
Chris@119 14 # You should have received a copy of the GNU General Public License
Chris@119 15 # along with this program; if not, write to the Free Software
Chris@119 16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Chris@119 17
Chris@119 18 require File.expand_path('../../../../test_helper', __FILE__)
Chris@119 19
Chris@119 20 class ThemesTest < ActionController::IntegrationTest
Chris@909 21
Chris@119 22 def setup
Chris@119 23 @theme = Redmine::Themes.themes.last
Chris@119 24 Setting.ui_theme = @theme.id
Chris@119 25 end
Chris@909 26
Chris@119 27 def teardown
Chris@119 28 Setting.ui_theme = ''
Chris@119 29 end
Chris@909 30
Chris@119 31 def test_application_css
Chris@119 32 get '/'
Chris@909 33
Chris@119 34 assert_response :success
Chris@119 35 assert_tag :tag => 'link',
Chris@119 36 :attributes => {:href => %r{^/themes/#{@theme.dir}/stylesheets/application.css}}
Chris@119 37 end
Chris@909 38
Chris@119 39 def test_without_theme_js
Chris@119 40 get '/'
Chris@909 41
Chris@119 42 assert_response :success
Chris@119 43 assert_no_tag :tag => 'script',
Chris@119 44 :attributes => {:src => %r{^/themes/#{@theme.dir}/javascripts/theme.js}}
Chris@119 45 end
Chris@909 46
Chris@119 47 def test_with_theme_js
Chris@119 48 # Simulates a theme.js
Chris@119 49 @theme.javascripts << 'theme'
Chris@119 50 get '/'
Chris@909 51
Chris@119 52 assert_response :success
Chris@119 53 assert_tag :tag => 'script',
Chris@119 54 :attributes => {:src => %r{^/themes/#{@theme.dir}/javascripts/theme.js}}
Chris@909 55
Chris@119 56 ensure
Chris@119 57 @theme.javascripts.delete 'theme'
Chris@119 58 end
Chris@909 59
Chris@119 60 def test_with_sub_uri
Chris@119 61 Redmine::Utils.relative_url_root = '/foo'
Chris@119 62 @theme.javascripts << 'theme'
Chris@119 63 get '/'
Chris@909 64
Chris@119 65 assert_response :success
Chris@119 66 assert_tag :tag => 'link',
Chris@119 67 :attributes => {:href => %r{^/foo/themes/#{@theme.dir}/stylesheets/application.css}}
Chris@119 68 assert_tag :tag => 'script',
Chris@119 69 :attributes => {:src => %r{^/foo/themes/#{@theme.dir}/javascripts/theme.js}}
Chris@909 70
Chris@119 71 ensure
Chris@119 72 Redmine::Utils.relative_url_root = ''
Chris@119 73 end
Chris@119 74 end