<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>lib/routing_filter/force_extension.rb</filename>
    </added>
    <added>
      <filename>spec/force_extension_spec.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -4,14 +4,11 @@ describe 'RoutingFilter', 'url generation' do
   include RoutingFilterHelpers
 
   before :each do
-    setup_environment
+    setup_environment :locale, :pagination
 
     @site = Site.new
     @section = Section.new
     @article = Article.new
-
-    Section.stub!(:types).and_return ['Section']
-    Section.stub!(:find).and_return @section
   end
 
   describe &quot;named route url_helpers&quot; do</diff>
      <filename>spec/generation_spec.rb</filename>
    </modified>
    <modified>
      <diff>@@ -4,7 +4,7 @@ describe 'RoutingFilter', 'url recognition' do
   include RoutingFilterHelpers
 
   before :each do
-    setup_environment
+    setup_environment :locale, :pagination
   end
 
   it 'recognizes the path /de/sections/1 and sets the :locale param' do
@@ -49,7 +49,7 @@ describe 'RoutingFilter', 'url recognition' do
     end
   end
 
-  it 'recognizes the path /en-US/sections/1 and does set a :locale param' do
+  it 'recognizes the path /en-US/sections/1 and sets a :locale param' do
     should_recognize_path '/en-US/sections/1', @section_params.update(:locale =&gt; 'en-US')
   end
 
@@ -61,18 +61,11 @@ describe 'RoutingFilter', 'url recognition' do
     should_recognize_path '/sections/1/articles/1', @article_params
   end
 
-  # Test that routing errors are thrown for invalid locales
-  it 'does not recognize the path /aa/sections/1/articles/1 and does not set a :locale param' do
-    begin
-      should_recognize_path '/aa/sections/1/articles/1', @article_params.update(:locale =&gt; 'aa')
-      false
-    rescue ActionController::RoutingError
-      true
-    end
+  it 'invalid locale: does not recognize the path /aa/sections/1/articles/1 and does not set a :locale param' do
+    lambda { @set.recognize_path('/aa/sections/1/articles/1', {}) }.should raise_error(ActionController::RoutingError)
   end
 
-  it 'recognizes the path /en-US/sections/1/articles/1 and does set a :locale param' do
+  it 'recognizes the path /en-US/sections/1/articles/1 and sets a :locale param' do
     should_recognize_path '/en-US/sections/1/articles/1', @article_params.update(:locale =&gt; 'en-US')
   end
-
 end
\ No newline at end of file</diff>
      <filename>spec/recognition_spec.rb</filename>
    </modified>
    <modified>
      <diff>@@ -4,7 +4,7 @@ describe 'RoutingFilter' do
   include RoutingFilterHelpers
 
   before :each do
-    setup_environment
+    setup_environment :locale, :pagination
   end
 
   def recognize_path(path = '/de/sections/1', options = {})</diff>
      <filename>spec/routing_filter_spec.rb</filename>
    </modified>
    <modified>
      <diff>@@ -51,6 +51,10 @@ module RoutingFilterHelpers
     @set.recognize_path(path, {}).should == params
   end
 
+  def home_path(*args)
+    @controller.send :home_path, *args
+  end
+
   def section_path(*args)
     @controller.send :section_path, *args
   end
@@ -59,11 +63,15 @@ module RoutingFilterHelpers
     @controller.send :section_article_path, *args
   end
 
+  def admin_articles_path(*args)
+    @controller.send :admin_articles_path, *args
+  end
+
   def url_for(*args)
     @controller.send :url_for, *args
   end
 
-  def setup_environment
+  def setup_environment(*filters)
     RoutingFilter::Locale.locales = [:en, 'en-US', :de, :fi, 'en-UK']
     RoutingFilter::Locale.include_default_locale = true
     I18n.default_locale = :en
@@ -71,10 +79,12 @@ module RoutingFilterHelpers
 
     @controller = instantiate_controller :locale =&gt; 'de', :id =&gt; 1
     @set = draw_routes do |map|
-      map.filter 'locale'
-      map.filter 'pagination'
-      map.section 'sections/:id', :controller =&gt; 'sections', :action =&gt; &quot;show&quot;
+      yield map if block_given?
+      filters.each { |filter| map.filter filter }
+      map.section 'sections/:id.:format', :controller =&gt; 'sections', :action =&gt; &quot;show&quot;
       map.section_article 'sections/:section_id/articles/:id', :controller =&gt; 'articles', :action =&gt; &quot;show&quot;
+      map.admin_articles 'admin/articles/:id', :controller =&gt; 'admin/articles', :action =&gt; &quot;index&quot;
+      map.home '/', :controller =&gt; 'home', :action =&gt; 'index'
     end
 
     @section_params = {:controller =&gt; 'sections', :action =&gt; &quot;show&quot;, :id =&gt; &quot;1&quot;}</diff>
      <filename>spec/spec_helper.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>54a641901cda17b487c5efc02c318deb13ec3315</id>
    </parent>
  </parents>
  <author>
    <name>Sven Fuchs</name>
    <email>svenfuchs@artweb-design.de</email>
  </author>
  <url>http://github.com/svenfuchs/routing-filter/commit/d646cbb08b1fa23eaa4c2dd77f3b6195a2c37e5e</url>
  <id>d646cbb08b1fa23eaa4c2dd77f3b6195a2c37e5e</id>
  <committed-date>2009-04-05T06:04:52-07:00</committed-date>
  <authored-date>2009-04-05T06:04:52-07:00</authored-date>
  <message>add a force_extension filter (customer who wants all urls to have a .html extension for legacy urls aka seo)</message>
  <tree>f740b3fc0bf366a33be62ce5fc0124645c97e363</tree>
  <committer>
    <name>Sven Fuchs</name>
    <email>svenfuchs@artweb-design.de</email>
  </committer>
</commit>
