external_environment_controller_test.rb
1.37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
require_relative '../test_helper'
require 'external_environments_controller'
include ExternalEnvironmentUpdater
class ExternalEnvironmentsControllerTest < ActionController::TestCase
all_fixtures
def setup
@controller = ExternalEnvironmentsController.new
@request = ActionController::TestRequest.new
@response = ActionController::TestResponse.new
ExternalEnvironment.destroy_all
@external_environment = ExternalEnvironment.create!(name: 'Test', url: 'test.org',
identifier: 'Testing')
login_as(create_admin_user(Environment.default))
end
should 'list external environments' do
get :index
assert_response :success
assert_template 'index'
assert assigns(:environments)
end
should 'save external environments' do
post :save_environments, environment: { external_environment_ids: [@external_environment] }
assert_response 302
assert_redirected_to controller: 'external_environments', action: 'index'
assert Environment.default.external_environments, @external_environment
assert_equal 'External environments updated successfully.', session[:notice]
end
should 'not allow non admin user to update external environments' do
login_as('johndoe')
post :save_environments, environment: { external_environment_ids: [@external_environment] }
assert_response 403
end
end