From 10646c9f6f62dd5130606d07ffe69770b3973f47 Mon Sep 17 00:00:00 2001
From: Igor Minar
Date: Wed, 19 Jan 2011 14:50:29 -0800
Subject: add ng:view widget
---
test/widgetsSpec.js | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)
(limited to 'test')
diff --git a/test/widgetsSpec.js b/test/widgetsSpec.js
index 48b9f8a1..27c5cb82 100644
--- a/test/widgetsSpec.js
+++ b/test/widgetsSpec.js
@@ -785,5 +785,64 @@ describe("widget", function(){
expect(element.text()).toEqual('');
});
});
+
+
+ describe('ng:view', function() {
+ var rootScope, partialScope, $route, $location, $browser;
+
+ beforeEach(function() {
+ rootScope = angular.scope();
+ partialScope = angular.compile('', rootScope);
+ partialScope.$init();
+ $route = rootScope.$service('$route');
+ $location = rootScope.$service('$location');
+ $browser = rootScope.$service('$browser');
+ });
+
+ afterEach(function() {
+ dealoc(partialScope);
+ });
+
+
+ it('should do nothing when not routes are defined', function() {
+ $location.updateHash('/unknown');
+ rootScope.$eval();
+ expect(partialScope.$element.text()).toEqual('');
+ });
+
+
+ it('should load content via xhr when route changes', function() {
+ $route.when('/foo', {controller: angular.noop, template: 'myUrl1'});
+ $route.when('/bar', {controller: angular.noop, template: 'myUrl2'});
+
+ expect(partialScope.$element.text()).toEqual('');
+
+ $location.updateHash('/foo');
+ $browser.xhr.expectGET('myUrl1').respond('
{{1+3}}
');
+ rootScope.$eval();
+ $browser.xhr.flush();
+ expect(partialScope.$element.text()).toEqual('4');
+
+ $location.updateHash('/bar');
+ $browser.xhr.expectGET('myUrl2').respond('angular is da best');
+ rootScope.$eval();
+ $browser.xhr.flush();
+ expect(partialScope.$element.text()).toEqual('angular is da best');
+ });
+
+ it('should remove all content when location changes to an unknown route', function() {
+ $route.when('/foo', {controller: angular.noop, template: 'myUrl1'});
+
+ $location.updateHash('/foo');
+ $browser.xhr.expectGET('myUrl1').respond('{{1+3}}
');
+ rootScope.$eval();
+ $browser.xhr.flush();
+ expect(partialScope.$element.text()).toEqual('4');
+
+ $location.updateHash('/unknown');
+ rootScope.$eval();
+ expect(partialScope.$element.text()).toEqual('');
+ });
+ });
});
--
cgit v1.2.3