Sha256: bfb4362f15a1255fe5881dab374607ea9d32b0ad1921f4c199181d077a82a8f2

Contents?: true

Size: 1.31 KB

Versions: 4

Compression:

Stored size: 1.31 KB

Contents

require 'helper'

module Journey
  class TestRoutes < MiniTest::Unit::TestCase
    def test_clear
      routes = Routes.new
      exp    = Router::Strexp.new '/foo(/:id)', {}, ['/.?']
      path   = Path::Pattern.new exp
      requirements = { :hello => /world/ }

      routes.add_route nil, path, requirements, {:id => nil}, {}
      assert_equal 1, routes.length

      routes.clear
      assert_equal 0, routes.length
    end

    def test_ast
      routes = Routes.new
      path   = Path::Pattern.new '/hello'

      routes.add_route nil, path, {}, {}, {}
      ast = routes.ast
      routes.add_route nil, path, {}, {}, {}
      refute_equal ast, routes.ast
    end

    def test_simulator_changes
      routes = Routes.new
      path   = Path::Pattern.new '/hello'

      routes.add_route nil, path, {}, {}, {}
      sim = routes.simulator
      routes.add_route nil, path, {}, {}, {}
      refute_equal sim, routes.simulator
    end

    def test_first_name_wins
      #def add_route app, path, conditions, defaults, name = nil
      routes = Routes.new

      one   = Path::Pattern.new '/hello'
      two   = Path::Pattern.new '/aaron'

      routes.add_route nil, one, {}, {}, 'aaron'
      routes.add_route nil, two, {}, {}, 'aaron'

      assert_equal '/hello', routes.named_routes['aaron'].path.spec.to_s
    end
  end
end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
andyjeffries-journey-1.0.0.20111022124133 test/test_routes.rb
journey-1.0.0.rc3 test/test_routes.rb
journey-1.0.0.rc2 test/test_routes.rb
journey-1.0.0.rc1 test/test_routes.rb