Commit 29bc97929fba74c161b11c39ede61abd85b68f3c

Authored by Diego Camarinha
Committed by Diego Martinez
1 parent 1cdaecd5

[Mezuro] Refactored and tested repository controller.

plugins/mezuro/controllers/profile/mezuro_plugin_repository_controller.rb
@@ -55,18 +55,18 @@ class MezuroPluginRepositoryController < MezuroPluginProfileController @@ -55,18 +55,18 @@ class MezuroPluginRepositoryController < MezuroPluginProfileController
55 end 55 end
56 end 56 end
57 57
58 - def show #TODO verificar data_content e data_profile 58 + def show
59 project_content = profile.articles.find(params[:id]) 59 project_content = profile.articles.find(params[:id])
60 @project_name = project_content.name 60 @project_name = project_content.name
61 - @repository = project_content.repositories.select{ |repository| repository.id == params[:repository_id].to_s }.first 61 + @repository = project_content.repositories.select{ |repository| repository.id.to_s == params[:repository_id] }.first
62 @configuration_name = Kalibro::Configuration.configuration_of(@repository.id).name 62 @configuration_name = Kalibro::Configuration.configuration_of(@repository.id).name
63 @data_profile = project_content.profile.identifier 63 @data_profile = project_content.profile.identifier
64 @data_content = project_content.id 64 @data_content = project_content.id
65 end 65 end
66 66
67 - def destroy #TODO verificar se está correto 67 + def destroy
68 project_content = profile.articles.find(params[:id]) 68 project_content = profile.articles.find(params[:id])
69 - repository = project_content.repositories.select{ |repository| repository.id == params[:repository_id].to_s }.first 69 + repository = project_content.repositories.select{ |repository| repository.id.to_s == params[:repository_id] }.first
70 repository.destroy 70 repository.destroy
71 if( repository.errors.empty? ) 71 if( repository.errors.empty? )
72 redirect_to "/#{profile.identifier}/#{project_content.name.downcase.gsub(/\s/, '-')}" 72 redirect_to "/#{profile.identifier}/#{project_content.name.downcase.gsub(/\s/, '-')}"
plugins/mezuro/test/functional/profile/mezuro_plugin_repository_controller_test.rb
@@ -6,7 +6,6 @@ require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/repository_fixtures" @@ -6,7 +6,6 @@ require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/repository_fixtures"
6 require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/project_content_fixtures" 6 require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/project_content_fixtures"
7 require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/configuration_fixtures" 7 require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/configuration_fixtures"
8 8
9 -#TODO terminar os testes  
10 class MezuroPluginRepositoryControllerTest < ActionController::TestCase 9 class MezuroPluginRepositoryControllerTest < ActionController::TestCase
11 10
12 def setup 11 def setup
@@ -87,14 +86,36 @@ class MezuroPluginRepositoryControllerTest &lt; ActionController::TestCase @@ -87,14 +86,36 @@ class MezuroPluginRepositoryControllerTest &lt; ActionController::TestCase
87 assert_response :redirect 86 assert_response :redirect
88 end 87 end
89 88
90 - should 'set variables to show a repository' do #TODO Terminar esse teste 89 + should 'set variables to show a repository' do
91 Kalibro::Repository.expects(:repositories_of).with(@content.project_id).returns([@repository]) 90 Kalibro::Repository.expects(:repositories_of).with(@content.project_id).returns([@repository])
92 Kalibro::Configuration.expects(:configuration_of).with(@repository.id).returns(@configuration) 91 Kalibro::Configuration.expects(:configuration_of).with(@repository.id).returns(@configuration)
93 92
  93 + get :show, :profile => @profile.identifier, :id => @content.id, :repository_id => @repository.id
94 assert_equal @content.name, assigns(:project_name) 94 assert_equal @content.name, assigns(:project_name)
95 assert_equal @repository, assigns(:repository) 95 assert_equal @repository, assigns(:repository)
96 -# @configuration_name = Kalibro::Configuration.find(@repository.configuration_id).name  
97 -# @processing = processing(@repository.id) 96 + assert_equal @configuration.name, assigns(:configuration_name)
  97 + assert_equal @content.profile.identifier, assigns(:data_profile)
  98 + assert_equal @content.id, assigns(:data_content)
98 end 99 end
99 100
  101 + should 'destroy a repository' do
  102 + @repository.expects(:destroy)
  103 + Kalibro::Repository.expects(:repositories_of).with(@content.project_id).returns([@repository])
  104 +
  105 + get :destroy, :profile => @profile.identifier, :id => @content.id, :repository_id => @repository.id
  106 +
  107 + assert @repository.errors.empty?
  108 + assert_response :redirect
  109 + end
  110 +
  111 + should 'not destroy a repository' do
  112 + @repository.errors = [Exception.new]
  113 + @repository.expects(:destroy)
  114 + Kalibro::Repository.expects(:repositories_of).with(@content.project_id).returns([@repository])
  115 +
  116 + get :destroy, :profile => @profile.identifier, :id => @content.id, :repository_id => @repository.id
  117 +
  118 + assert !@repository.errors.empty?
  119 + assert_response :redirect
  120 + end
100 end 121 end