Commit ed55018e925d7b8746aeba7fd14860671bf8c088

Authored by AntonioTerceiro
1 parent c230d671

ActionItem70: changed routing to category_controller



git-svn-id: https://svn.colivre.coop.br/svn/noosfero/trunk@532 3f533792-8f58-4932-b0fe-aaf55b0a4547
app/models/category.rb
1 1 class Category < ActiveRecord::Base
2 2  
  3 + validates_exclusion_of :slug, :in => [ 'index'], :message => N_('%{fm} cannot be like that.')
3 4 validates_presence_of :name, :environment_id
4 5 validates_uniqueness_of :slug,:scope => [ :environment_id, :parent_id ], :message => N_('%{fn} is already being used by another category.')
5 6 belongs_to :environment
... ...
config/routes.rb
... ... @@ -53,8 +53,9 @@ ActionController::Routing::Routes.draw do |map|
53 53 ######################################################
54 54 ## Public controllers
55 55 ######################################################
56   -
57   - map.connect 'cat/:action/*path', :controller => 'category', :action => 'index'
  56 +
  57 + map.connect 'cat', :controller => 'category', :action => 'index'
  58 + map.category 'cat/*path', :controller => 'category', :action => 'view'
58 59  
59 60 # *content viewing*
60 61 # XXX this route must come last so other routes have priority over it.
... ...
test/functional/category_controller_test.rb 0 → 100644
... ... @@ -0,0 +1,18 @@
  1 +require File.dirname(__FILE__) + '/../test_helper'
  2 +require 'category_controller'
  3 +
  4 +# Re-raise errors caught by the controller.
  5 +class CategoryController; def rescue_action(e) raise e end; end
  6 +
  7 +class CategoryControllerTest < Test::Unit::TestCase
  8 + def setup
  9 + @controller = CategoryController.new
  10 + @request = ActionController::TestRequest.new
  11 + @response = ActionController::TestResponse.new
  12 + end
  13 +
  14 + # Replace this with your real tests.
  15 + def test_truth
  16 + assert true
  17 + end
  18 +end
... ...
test/integration/routing_test.rb
... ... @@ -71,8 +71,8 @@ class RoutingTest &lt; ActionController::IntegrationTest
71 71 end
72 72  
73 73 def test_category_browser
74   - assert_routing('/cat/some_action/products/eletronics', :controller => 'category', :action => 'some_action', :path => [ 'products', 'eletronics'])
75   - assert_routing('/cat', :controller => 'category', :action => 'index', :path => [ ])
  74 + assert_routing('/cat/products/eletronics', :controller => 'category', :action => 'view', :path => [ 'products', 'eletronics'])
  75 + assert_routing('/cat', :controller => 'category', :action => 'index')
76 76 end
77 77  
78 78 end
... ...