| require File.dirname(__FILE__) + '/../test_helper' |
| require 'baselines_controller' |
| |
| #--###################################################################### |
| # Copyright (c) 2006 LogicaCMG |
| # |
| # All rights reserved. This program and the accompanying materials |
| # are made available under the terms of the Eclipse Public License v1.0 |
| # which accompanies this distribution, and is available at |
| # http://www.eclipse.org/legal/epl-v10.html |
| # |
| # Contributors: |
| # |
| # Onno van der Straaten:: initial implementation |
| #++###################################################################### |
| # {Copyright (c) 2006 LogicaCMG}[link:files/COPYRIGHT.html] |
| |
| # Re-raise errors caught by the controller. |
| class BaselinesController; def rescue_action(e) raise e end; end |
| |
| class BaselinesControllerTest < Test::Unit::TestCase |
| |
| def setup |
| @controller = BaselinesController.new |
| @request = ActionController::TestRequest.new |
| @response = ActionController::TestResponse.new |
| @openupwiki = Site.find_by_title('OpenUP Wiki') |
| @admin = User.find_by_admin('Y') |
| @cadmin = User.find_central_admin |
| @user = User.find_by_admin('N') |
| end |
| |
| # Shows: |
| # 1. only admin can edit baseline |
| def test01_edit |
| baseline = Baseline.find_first |
| get :list |
| session['user'] = @user |
| get :edit, :id => baseline.id |
| assert_unot_admin_message |
| session['user'] = @admin |
| get :edit, :id => baseline.id |
| assert_response :success |
| end |
| |
| def test02_list |
| get :list |
| [@admin, @user].each do |user| |
| session['user'] = user |
| get :list |
| assert_response :success |
| end |
| end |
| |
| def test03_show |
| get :list |
| [@admin, @user].each do |user| |
| Baseline.find_all.each do |baseline| |
| session['user'] = user |
| get :show, :id => baseline.id |
| assert_response :success |
| get :show_comments, :id => baseline.id |
| assert_response :success |
| end |
| end |
| end |
| |
| end |