diff options
Diffstat (limited to 'test/scenario/DSLSpec.js')
| -rw-r--r-- | test/scenario/DSLSpec.js | 38 |
1 files changed, 36 insertions, 2 deletions
diff --git a/test/scenario/DSLSpec.js b/test/scenario/DSLSpec.js index c8e30917..ccd9e32b 100644 --- a/test/scenario/DSLSpec.js +++ b/test/scenario/DSLSpec.js @@ -6,10 +6,12 @@ describe("DSL", function() { setUpContext(); executeFuture = function(future, html, callback) { lastDocument = _jQuery('<div>' + html + '</div>'); + lastFrame = _jQuery('<iframe>' + lastDocument + '</iframe>'); _jQuery(document.body).append(lastDocument); var specThis = { testWindow: window, testDocument: lastDocument, + testFrame: lastFrame, jQuery: _jQuery }; future.behavior.call(specThis, callback || noop); @@ -39,6 +41,38 @@ describe("DSL", function() { }); }); + describe('browser', function() { + var browser = angular.scenario.dsl.browser; + it('shoud return true if location with empty hash provided is same ' + + 'as location of the page', function() { + browser.location.href = "http://server"; + expect(browser.location.toEqual("http://server")).toEqual(true); + }); + it('shoud return true if location with hash provided is same ' + + 'as location of the page', function() { + browser.location.href = "http://server"; + browser.location.hash = "hashPath"; + expect(browser.location.toEqual("http://server/#/hashPath")) + .toEqual(true); + }); + it('should return true if the location provided is the same as which ' + + 'browser navigated to', function() { + var future = browser.navigateTo("http://server/#/hashPath"); + expect(future.name).toEqual("Navigate to: http://server/#/hashPath"); + executeFuture(future, '<input type="text" name="name" />'); + expect(browser.location.toEqual("http://server/#/hashPath")) + .toEqual(true); + expect(browser.location.toEqual("http://server/")) + .toEqual(false); + + future = browser.navigateTo("http://server/"); + expect(future.name).toEqual("Navigate to: http://server/"); + executeFuture(future, '<input type="text" name="name" />'); + expect(browser.location.toEqual("http://server/")) + .toEqual(true); + }); + }); + describe('repeater', function() { var repeater = angular.scenario.dsl.repeater; @@ -125,7 +159,7 @@ describe("DSL", function() { expect(future.fulfilled).toBeTruthy(); } it('should find elements on the page and provide jquery api', function() { - var future = element('.reports-detail'); + var future = element('.reports-detail').find(); expect(future.name).toEqual("Find element '.reports-detail'"); timeTravel(future); expect(future.value.text()). @@ -134,7 +168,7 @@ describe("DSL", function() { toEqual('Description : Details...'); }); it('should find elements with angular syntax', function() { - var future = element('{{report.description}}'); + var future = element('{{report.description}}').find(); expect(future.name).toEqual("Find element '{{report.description}}'"); timeTravel(future); expect(future.value.text()).toEqual('Details...'); |
