@@ -36,7 +36,7 class RepositoriesController < ApplicationController | |||
|
36 | 36 | rescue_from Redmine::Scm::Adapters::CommandFailed, :with => :show_error_command_failed |
|
37 | 37 | |
|
38 | 38 | def new |
|
39 | scm = params[:repository_scm] || Redmine::Scm::Base.all.first | |
|
39 | scm = params[:repository_scm] || (Redmine::Scm::Base.all & Setting.enabled_scm).first | |
|
40 | 40 | @repository = Repository.factory(scm) |
|
41 | 41 | @repository.is_default = @project.repository.nil? |
|
42 | 42 | @repository.project = @project |
@@ -43,6 +43,22 class RepositoriesControllerTest < ActionController::TestCase | |||
|
43 | 43 | assert_tag 'input', :attributes => {:name => 'repository[url]'} |
|
44 | 44 | end |
|
45 | 45 | |
|
46 | def test_new_should_propose_enabled_scm_only | |
|
47 | @request.session[:user_id] = 1 | |
|
48 | with_settings :enabled_scm => ['Mercurial', 'Git'] do | |
|
49 | get :new, :project_id => 'subproject1' | |
|
50 | end | |
|
51 | assert_response :success | |
|
52 | assert_template 'new' | |
|
53 | assert_kind_of Repository::Mercurial, assigns(:repository) | |
|
54 | assert_tag 'select', :attributes => {:name => 'repository_scm'}, | |
|
55 | :children => {:count => 3} | |
|
56 | assert_tag 'select', :attributes => {:name => 'repository_scm'}, | |
|
57 | :child => {:tag => 'option', :attributes => {:value => 'Mercurial', :selected => 'selected'}} | |
|
58 | assert_tag 'select', :attributes => {:name => 'repository_scm'}, | |
|
59 | :child => {:tag => 'option', :attributes => {:value => 'Git', :selected => nil}} | |
|
60 | end | |
|
61 | ||
|
46 | 62 | def test_create |
|
47 | 63 | @request.session[:user_id] = 1 |
|
48 | 64 | assert_difference 'Repository.count' do |
General Comments 0
You need to be logged in to leave comments.
Login now