From dc1001979a596174732d19ff7cd16e8f6777e845 Mon Sep 17 00:00:00 2001 From: AntonioTerceiro Date: Fri, 12 Oct 2007 14:23:19 +0000 Subject: [PATCH] ActionItem102: adding an integration test --- test/integration/assigning_validator_organizations_to_regions_test.rb | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+), 0 deletions(-) create mode 100644 test/integration/assigning_validator_organizations_to_regions_test.rb diff --git a/test/integration/assigning_validator_organizations_to_regions_test.rb b/test/integration/assigning_validator_organizations_to_regions_test.rb new file mode 100644 index 0000000..31a1d4c --- /dev/null +++ b/test/integration/assigning_validator_organizations_to_regions_test.rb @@ -0,0 +1,45 @@ +require "#{File.dirname(__FILE__)}/../test_helper" + +class AssigningValidatorOrganizationsToRegionsTest < ActionController::IntegrationTest + + should 'be able to properly assign organizations as validators to regions' do + env = Environment.default + + Organization.destroy_all + org1 = Organization.create!(:name => 'Organization one', :identifier => 'org1') + org2 = Organization.create!(:name => 'Organization two', :identifier => 'org2') + + Region.destroy_all + region1 = Region.create!(:name => "Region 1", :environment_id => env.id) + region2 = Region.create!(:name => "Region 2", :environment_id => env.id) + + login('ze', 'test') + + get '/admin/region_validators' + assert_response :success + + get "/admin/region_validators/region/#{region1.id}" + assert_response :success + assert_tag :tag => 'form', :attributes => { :action => "/admin/region_validators/region/#{region1.id}" }, :descendant => { :tag => 'input', :attributes => { :type => 'text', :name => 'search' } } + + get "/admin/region_validators/region/#{region1.id}", :search => 'two' + assert_response :success + assert_tag :tag => 'form', :attributes => { :action => "/admin/region_validators/add/#{region1.id}" }, :descendant => { :tag => 'input', :attributes => { :type => 'hidden', :name => 'validator_id', :value => org2.id } } + + post "/admin/region_validators/add/#{region1.id}", :validator_id => org2.id + assert_response :redirect + + follow_redirect! + assert_equal "/admin/region_validators/region/#{region1.id}", path + + assert_tag :tag => 'a', :attributes => { :href => "/admin/region_validators/remove/#{region1.id}?validator_id=#{org2.id}" } + + post "/admin/region_validators/remove/#{region1.id}", :validator_id => org2.id + assert_response :redirect + + follow_redirect! + assert_equal "/admin/region_validators/region/#{region1.id}", path + assert_no_tag :tag => 'a', :attributes => { :href => "/admin/region_validators/remove/#{region1.id}?validator_id=#{org2.id}" } + + end +end -- libgit2 0.21.2