Sha256: 2d4e509d361ddce1fc2993944757784ecf7d46af79a8d7276f523135c8e45a15

Contents?: true

Size: 1.13 KB

Versions: 9

Compression:

Stored size: 1.13 KB

Contents

require File.join(File.dirname(__FILE__), 'compat')
require 'lib/usher'

route_set = Usher::Interface.for(:rails2)

describe "Usher (for rails) URL generation" do
  
  before(:each) do
    route_set.reset!
  end

  it "should fill in the controller from recall" do
    route_set.add_route('/:controller/:action/:id')
    route_set.generate({:action => 'thingy'}, {:controller => 'sample', :action => 'index', :id => 123}, :generate).should == '/sample/thingy'
  end

  it "should skip the action if not provided" do
    route_set.add_route('/:controller/:action/:id')
    route_set.generate({:controller => 'thingy'}, {:controller => 'sample', :action => 'index', :id => 123}, :generate).should == '/thingy'
  end

  it "should pick the correct param from optional parts" do
    route_set.add_route('/:controller/:action(.:format)')
    route_set.generate({:action => 'thingy', :format => 'html'}, {:controller => 'sample', :action => 'index', :id => 123}, :generate).should == '/sample/thingy.html'
    route_set.generate({:action => 'thingy'}, {:controller => 'sample', :action => 'index', :id => 123}, :generate).should == '/sample/thingy'
  end

end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
joshbuddy-usher-0.3.2 spec/rails/generate_spec.rb
joshbuddy-usher-0.3.3 spec/rails/generate_spec.rb
joshbuddy-usher-0.3.4 spec/rails/generate_spec.rb
joshbuddy-usher-0.3.5 spec/rails/generate_spec.rb
joshbuddy-usher-0.3.6 spec/rails/generate_spec.rb
joshbuddy-usher-0.4.0 spec/rails/generate_spec.rb
joshbuddy-usher-0.4.1 spec/private/rails/generate_spec.rb
joshbuddy-usher-0.4.2 spec/private/rails/generate_spec.rb
joshbuddy-usher-0.4.3 spec/private/rails/generate_spec.rb