@@ -36,7 +36,7 class RepositoriesController < ApplicationController | |||||
36 | rescue_from Redmine::Scm::Adapters::CommandFailed, :with => :show_error_command_failed |
|
36 | rescue_from Redmine::Scm::Adapters::CommandFailed, :with => :show_error_command_failed | |
37 |
|
37 | |||
38 | def new |
|
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 | @repository = Repository.factory(scm) |
|
40 | @repository = Repository.factory(scm) | |
41 | @repository.is_default = @project.repository.nil? |
|
41 | @repository.is_default = @project.repository.nil? | |
42 | @repository.project = @project |
|
42 | @repository.project = @project |
@@ -43,6 +43,22 class RepositoriesControllerTest < ActionController::TestCase | |||||
43 | assert_tag 'input', :attributes => {:name => 'repository[url]'} |
|
43 | assert_tag 'input', :attributes => {:name => 'repository[url]'} | |
44 | end |
|
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 | def test_create |
|
62 | def test_create | |
47 | @request.session[:user_id] = 1 |
|
63 | @request.session[:user_id] = 1 | |
48 | assert_difference 'Repository.count' do |
|
64 | assert_difference 'Repository.count' do |
General Comments 0
You need to be logged in to leave comments.
Login now