Skip to content

Commit

Permalink
Merge pull request jashkenas#1011 from wookiehangover/issue996
Browse files Browse the repository at this point in the history
adding test coverage for route precedence as per issue jashkenas#996
  • Loading branch information
jashkenas committed Feb 15, 2012
2 parents 16b37e7 + 8d8a359 commit e5db1c9
Showing 1 changed file with 27 additions and 0 deletions.
27 changes: 27 additions & 0 deletions test/router.js
Expand Up @@ -37,6 +37,9 @@ $(document).ready(function() {
"counter": "counter",
"search/:query": "search",
"search/:query/p:page": "search",
"contacts": "contacts",
"contacts/new": "newContact",
"contacts/:id": "loadContact",
"splat/*args/end": "splat",
"*first/complex-:part/*rest": "complex",
":entity?*args": "query",
Expand All @@ -61,6 +64,18 @@ $(document).ready(function() {
this.page = page;
},

contacts: function(){
this.contact = 'index';
},

newContact: function(){
this.contact = 'new';
},

loadContact: function(){
this.contact = 'load';
},

splat : function(args) {
this.args = args;
},
Expand Down Expand Up @@ -120,6 +135,18 @@ $(document).ready(function() {
equal(router.page, '20');
});

test("Router: route precedence via navigate", 6, function(){
// check both 0.9.x and backwards-compatibility options
_.each([ { trigger: true }, true ], function( options ){
Backbone.history.navigate('contacts', options);
equal(router.contact, 'index');
Backbone.history.navigate('contacts/new', options);
equal(router.contact, 'new');
Backbone.history.navigate('contacts/foo', options);
equal(router.contact, 'load');
});
});

test("Router: doesn't fire routes to the same place twice", function() {
equal(router.count, 0);
router.navigate('counter', {trigger: true});
Expand Down

0 comments on commit e5db1c9

Please sign in to comment.