spec/private/grapher_spec.rb in joshbuddy-usher-0.4.3 vs spec/private/grapher_spec.rb in joshbuddy-usher-0.4.5

- old
+ new

@@ -1,39 +1,41 @@ require 'lib/usher' -route_set = Usher.new describe "Usher grapher" do before(:each) do - route_set.reset! + @route_set = Usher.new + @route_set.reset! + @url_generator = Usher::Generators::URL.new(@route_set) end it "should find a simple path" do - route_set.add_route('/:a/:b/:c') - route_set.generate_url(nil, {:a => 'A', :b => 'B', :c => 'C'}).should == '/A/B/C' + @route_set.add_route('/:a/:b/:c') + @url_generator.generate(nil, {:a => 'A', :b => 'B', :c => 'C'}).should == '/A/B/C' end it "should pick a more specific route" do - route_set.add_route('/:a/:b') - route_set.add_route('/:a/:b/:c') - route_set.generate_url(nil, {:a => 'A', :b => 'B', :c => 'C'}).should == '/A/B/C' + @route_set.add_route('/:a/:b') + @route_set.add_route('/:a/:b/:c') + @url_generator.generate(nil, {:a => 'A', :b => 'B', :c => 'C'}).should == '/A/B/C' end it "should fail to generate a route when none matches" do - route_set.add_route('/:a/:b') - proc {route_set.generate_url(nil, {:c => 'C', :d => 'D'}) }.should raise_error Usher::UnrecognizedException + @route_set.add_route('/:a/:b') + proc {@url_generator.generate(nil, {:c => 'C', :d => 'D'}) }.should raise_error Usher::UnrecognizedException end it "should find the most specific route and append extra parts on as a query string" do - route_set.add_route('/:a/:b/:c') - route_set.add_route('/:a/:b') - route_set.generate_url(nil, {:a => 'A', :b => 'B', :d => 'C'}).should == '/A/B?d=C' + @route_set.add_route('/:a/:b/:c') + @route_set.add_route('/:a/:b') + @url_generator.generate(nil, {:a => 'A', :b => 'B', :d => 'C'}).should == '/A/B?d=C' end - it "should do a validity check against the incoming variables when asked to" do - route_set.add_route('/:a/:b', :b => /\d+/) - route_set.generate_url(nil, {:a => 'A', :b => 'B'}).should == '/A/B' - proc{ route_set.generate_url(nil, {:a => 'A', :b => 'B'}, :check_variables => true).should == '/A/B?d=C'}.should raise_error Usher::ValidationException - end + # FIXME + #it "should do a validity check against the incoming variables when asked to" do + # route_set.add_route('/:a/:b', :b => /\d+/) + # route_set.generate_url(nil, {:a => 'A', :b => 'B'}).should == '/A/B' + # proc{ route_set.generate_url(nil, {:a => 'A', :b => 'B'})}.should raise_error Usher::ValidationException + #end end \ No newline at end of file