aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/service/routeSpec.js27
1 files changed, 25 insertions, 2 deletions
diff --git a/test/service/routeSpec.js b/test/service/routeSpec.js
index 4d24279c..7422ab56 100644
--- a/test/service/routeSpec.js
+++ b/test/service/routeSpec.js
@@ -55,14 +55,37 @@ describe('$route', function() {
it('should return fn registered with onChange()', function() {
- var scope = angular.scope(),
- $route = scope.$service('$route'),
+ var $route = scope.$service('$route'),
fn = function() {};
expect($route.onChange(fn)).toBe(fn);
});
+ it('should match a route that contains special chars in the path', function() {
+ var $route = scope.$service('$route'),
+ $location = scope.$service('$location');
+
+ $route.when('/$test.23/foo(bar)/:baz', {template: 'test.html'});
+
+ $location.hashPath = '/test';
+ scope.$eval();
+ expect($route.current).toBe(null);
+
+ $location.hashPath = '/$testX23/foo(bar)/222';
+ scope.$eval();
+ expect($route.current).toBe(null);
+
+ $location.hashPath = '/$test.23/foo(bar)/222';
+ scope.$eval();
+ expect($route.current).toBeDefined();
+
+ $location.hashPath = '/$test.23/foo\\(bar)/222';
+ scope.$eval();
+ expect($route.current).toBe(null);
+ });
+
+
it('should allow routes to be defined with just templates without controllers', function() {
var scope = angular.scope(),
$location = scope.$service('$location'),