summaryrefslogtreecommitdiffstats
path: root/3rdparty/js/angular-1.0.2/docs/docs-scenario.js
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/js/angular-1.0.2/docs/docs-scenario.js')
-rw-r--r--3rdparty/js/angular-1.0.2/docs/docs-scenario.js4504
1 files changed, 4504 insertions, 0 deletions
diff --git a/3rdparty/js/angular-1.0.2/docs/docs-scenario.js b/3rdparty/js/angular-1.0.2/docs/docs-scenario.js
new file mode 100644
index 000000000..ea8a8b6af
--- /dev/null
+++ b/3rdparty/js/angular-1.0.2/docs/docs-scenario.js
@@ -0,0 +1,4504 @@
+describe("angular+jqlite", function() {
+ describe("api/index", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/index");
+ });
+
+});
+
+ describe("api/ng", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng");
+ });
+
+});
+
+ describe("cookbook/advancedform", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/cookbook/advancedform");
+ });
+
+ it('should enable save button', function() {
+ expect(element(':button:contains(Save)').attr('disabled')).toBeTruthy();
+ input('form.name').enter('');
+ expect(element(':button:contains(Save)').attr('disabled')).toBeTruthy();
+ input('form.name').enter('change');
+ expect(element(':button:contains(Save)').attr('disabled')).toBeFalsy();
+ element(':button:contains(Save)').click();
+ expect(element(':button:contains(Save)').attr('disabled')).toBeTruthy();
+ });
+ it('should enable cancel button', function() {
+ expect(element(':button:contains(Cancel)').attr('disabled')).toBeTruthy();
+ input('form.name').enter('change');
+ expect(element(':button:contains(Cancel)').attr('disabled')).toBeFalsy();
+ element(':button:contains(Cancel)').click();
+ expect(element(':button:contains(Cancel)').attr('disabled')).toBeTruthy();
+ expect(element(':input[ng\\:model="form.name"]').val()).toEqual('John Smith');
+ });
+
+});
+
+ describe("cookbook/buzz", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/cookbook/buzz");
+ });
+
+ xit('fetch buzz and expand', function() {
+ element(':button:contains(fetch)').click();
+ expect(repeater('div.buzz').count()).toBeGreaterThan(0);
+ element('.buzz a:contains(Expand replies):first').click();
+ expect(repeater('div.reply').count()).toBeGreaterThan(0);
+ });
+
+});
+
+ describe("cookbook/deeplinking", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/cookbook/deeplinking");
+ });
+
+ it('should navigate to URL', function() {
+ element('a:contains(Welcome)').click();
+ expect(element('[ng-view]').text()).toMatch(/Hello anonymous/);
+ element('a:contains(Settings)').click();
+ input('form.name').enter('yourname');
+ element(':button:contains(Save)').click();
+ element('a:contains(Welcome)').click();
+ expect(element('[ng-view]').text()).toMatch(/Hello yourname/);
+ });
+
+});
+
+ describe("cookbook/form", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/cookbook/form");
+ });
+
+ it('should show debug', function() {
+ expect(binding('user')).toMatch(/John Smith/);
+ });
+ it('should add contact', function() {
+ using('.example').element('a:contains(add)').click();
+ using('.example div:last').input('contact.value').enter('you@example.org');
+ expect(binding('user')).toMatch(/\(234\) 555\-1212/);
+ expect(binding('user')).toMatch(/you@example.org/);
+ });
+
+ it('should remove contact', function() {
+ using('.example').element('a:contains(X)').click();
+ expect(binding('user')).not().toMatch(/\(234\) 555\-1212/);
+ });
+
+ it('should validate zip', function() {
+ expect(using('.example').
+ element(':input[ng\\:model="user.address.zip"]').
+ prop('className')).not().toMatch(/ng-invalid/);
+ using('.example').input('user.address.zip').enter('abc');
+ expect(using('.example').
+ element(':input[ng\\:model="user.address.zip"]').
+ prop('className')).toMatch(/ng-invalid/);
+ });
+
+ it('should validate state', function() {
+ expect(using('.example').element(':input[ng\\:model="user.address.state"]').prop('className'))
+ .not().toMatch(/ng-invalid/);
+ using('.example').input('user.address.state').enter('XXX');
+ expect(using('.example').element(':input[ng\\:model="user.address.state"]').prop('className'))
+ .toMatch(/ng-invalid/);
+ });
+
+});
+
+ describe("cookbook/helloworld", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/cookbook/helloworld");
+ });
+
+ it('should change the binding when user enters text', function() {
+ expect(binding('name')).toEqual('World');
+ input('name').enter('angular');
+ expect(binding('name')).toEqual('angular');
+ });
+
+});
+
+ describe("cookbook/index", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/cookbook/index");
+ });
+
+});
+
+ describe("cookbook/mvc", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/cookbook/mvc");
+ });
+
+ it('should play a game', function() {
+ piece(1, 1);
+ expect(binding('nextMove')).toEqual('O');
+ piece(3, 1);
+ expect(binding('nextMove')).toEqual('X');
+ piece(1, 2);
+ piece(3, 2);
+ piece(1, 3);
+ expect(element('.winner').text()).toEqual('Player X has won!');
+ });
+
+ function piece(row, col) {
+ element('.board tr:nth-child('+row+') td:nth-child('+col+')').click();
+ }
+
+});
+
+ describe("guide/bootstrap", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/bootstrap");
+ });
+
+});
+
+ describe("guide/compiler", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/compiler");
+ });
+
+});
+
+ describe("guide/concepts", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/concepts");
+ });
+
+});
+
+ describe("guide/dev_guide.e2e-testing", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.e2e-testing");
+ });
+
+});
+
+ describe("guide/dev_guide.mvc", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.mvc");
+ });
+
+});
+
+ describe("guide/dev_guide.mvc.understanding_model", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.mvc.understanding_model");
+ });
+
+});
+
+ describe("guide/dev_guide.mvc.understanding_controller", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.mvc.understanding_controller");
+ });
+
+});
+
+ describe("guide/dev_guide.mvc.understanding_view", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.mvc.understanding_view");
+ });
+
+});
+
+ describe("guide/dev_guide.services.injecting_controllers", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.services.injecting_controllers");
+ });
+
+ it('should test service', function() {
+ expect(element(':input[ng\\:model="message"]').val()).toEqual('test');
+ });
+
+});
+
+ describe("guide/dev_guide.services.$location", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.services.$location");
+ });
+
+});
+
+ describe("guide/dev_guide.services.creating_services", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.services.creating_services");
+ });
+
+});
+
+ describe("guide/dev_guide.services.managing_dependencies", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.services.managing_dependencies");
+ });
+
+});
+
+ describe("guide/dev_guide.services", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.services");
+ });
+
+});
+
+ describe("guide/dev_guide.services.testing_services", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.services.testing_services");
+ });
+
+});
+
+ describe("guide/dev_guide.services.understanding_services", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.services.understanding_services");
+ });
+
+});
+
+ describe("guide/dev_guide.templates.css-styling", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.templates.css-styling");
+ });
+
+});
+
+ describe("guide/dev_guide.templates.databinding", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.templates.databinding");
+ });
+
+});
+
+ describe("guide/dev_guide.templates.filters.creating_filters", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.templates.filters.creating_filters");
+ });
+
+ it('should reverse greeting', function() {
+ expect(binding('greeting|reverse')).toEqual('olleh');
+ input('greeting').enter('ABC');
+ expect(binding('greeting|reverse')).toEqual('CBA');
+ });
+
+});
+
+ describe("guide/dev_guide.templates.filters", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.templates.filters");
+ });
+
+});
+
+ describe("guide/dev_guide.templates.filters.using_filters", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.templates.filters.using_filters");
+ });
+
+});
+
+ describe("guide/dev_guide.templates", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.templates");
+ });
+
+});
+
+ describe("guide/dev_guide.unit-testing", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/dev_guide.unit-testing");
+ });
+
+});
+
+ describe("guide/di", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/di");
+ });
+
+});
+
+ describe("guide/expression", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/expression");
+ });
+
+ it('should calculate expression in binding', function() {
+ expect(binding('1+2')).toEqual('3');
+ });
+
+ it('should allow user expression testing', function() {
+ element('.expressions :button').click();
+ var li = using('.expressions ul').repeater('li');
+ expect(li.count()).toBe(1);
+ expect(li.row(0)).toEqual(["3*10|currency", "$30.00"]);
+ });
+
+ it('should calculate expression in binding', function() {
+ var alertText;
+ this.addFutureAction('set mock', function($window, $document, done) {
+ $window.mockWindow = {
+ alert: function(text){ alertText = text; }
+ };
+ done();
+ });
+ element(':button:contains(Greet)').click();
+ expect(this.addFuture('alert text', function(done) {
+ done(null, alertText);
+ })).toBe('Hello World');
+ });
+
+});
+
+ describe("guide/directive", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/directive");
+ });
+
+ it('should show off bindings', function() {
+ expect(element('div[ng-controller="Ctrl1"] span[ng-bind]').text()).toBe('angular');
+ });
+
+ it('should bind and open / close', function() {
+ input('title').enter('TITLE');
+ input('text').enter('TEXT');
+ expect(element('.title').text()).toEqual('Details: TITLE...');
+ expect(binding('text')).toEqual('TEXT');
+
+ expect(element('.zippy').prop('className')).toMatch(/closed/);
+ element('.zippy > .title').click();
+ expect(element('.zippy').prop('className')).toMatch(/opened/);
+ });
+
+});
+
+ describe("guide/forms", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/forms");
+ });
+
+});
+
+ describe("guide/i18n", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/i18n");
+ });
+
+});
+
+ describe("guide/ie", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/ie");
+ });
+
+});
+
+ describe("guide/index", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/index");
+ });
+
+});
+
+ describe("guide/introduction", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/introduction");
+ });
+
+});
+
+ describe("guide/module", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/module");
+ });
+
+});
+
+ describe("guide/overview", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/overview");
+ });
+
+ it('should show of angular binding', function() {
+ expect(binding('qty * cost')).toEqual('$19.95');
+ input('qty').enter('2');
+ input('cost').enter('5.00');
+ expect(binding('qty * cost')).toEqual('$10.00');
+ });
+
+});
+
+ describe("guide/scope", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/scope");
+ });
+
+});
+
+ describe("guide/type", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/guide/type");
+ });
+
+});
+
+ describe("misc/contribute", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/misc/contribute");
+ });
+
+});
+
+ describe("misc/downloading", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/misc/downloading");
+ });
+
+});
+
+ describe("misc/faq", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/misc/faq");
+ });
+
+});
+
+ describe("misc/started", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/misc/started");
+ });
+
+});
+
+ describe("tutorial/index", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/tutorial/index");
+ });
+
+});
+
+ describe("tutorial/step_00", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/tutorial/step_00");
+ });
+
+});
+
+ describe("tutorial/step_01", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/tutorial/step_01");
+ });
+
+});
+
+ describe("tutorial/step_02", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/tutorial/step_02");
+ });
+
+});
+
+ describe("tutorial/step_03", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/tutorial/step_03");
+ });
+
+});
+
+ describe("tutorial/step_04", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/tutorial/step_04");
+ });
+
+});
+
+ describe("tutorial/step_06", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/tutorial/step_06");
+ });
+
+});
+
+ describe("tutorial/step_05", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/tutorial/step_05");
+ });
+
+});
+
+ describe("tutorial/step_07", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/tutorial/step_07");
+ });
+
+});
+
+ describe("tutorial/step_08", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/tutorial/step_08");
+ });
+
+});
+
+ describe("tutorial/step_09", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/tutorial/step_09");
+ });
+
+});
+
+ describe("tutorial/step_10", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/tutorial/step_10");
+ });
+
+});
+
+ describe("tutorial/step_11", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/tutorial/step_11");
+ });
+
+});
+
+ describe("tutorial/the_end", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/tutorial/the_end");
+ });
+
+});
+
+ describe("api/angular.version", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.version");
+ });
+
+});
+
+ describe("api/angular.lowercase", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.lowercase");
+ });
+
+});
+
+ describe("api/angular.uppercase", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.uppercase");
+ });
+
+});
+
+ describe("api/angular.forEach", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.forEach");
+ });
+
+});
+
+ describe("api/angular.extend", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.extend");
+ });
+
+});
+
+ describe("api/angular.noop", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.noop");
+ });
+
+});
+
+ describe("api/angular.identity", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.identity");
+ });
+
+});
+
+ describe("api/angular.isUndefined", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.isUndefined");
+ });
+
+});
+
+ describe("api/angular.isDefined", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.isDefined");
+ });
+
+});
+
+ describe("api/angular.isObject", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.isObject");
+ });
+
+});
+
+ describe("api/angular.isString", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.isString");
+ });
+
+});
+
+ describe("api/angular.isNumber", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.isNumber");
+ });
+
+});
+
+ describe("api/angular.isDate", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.isDate");
+ });
+
+});
+
+ describe("api/angular.isArray", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.isArray");
+ });
+
+});
+
+ describe("api/angular.isFunction", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.isFunction");
+ });
+
+});
+
+ describe("api/angular.isElement", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.isElement");
+ });
+
+});
+
+ describe("api/angular.copy", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.copy");
+ });
+
+});
+
+ describe("api/angular.equals", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.equals");
+ });
+
+});
+
+ describe("api/angular.bind", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.bind");
+ });
+
+});
+
+ describe("api/angular.toJson", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.toJson");
+ });
+
+});
+
+ describe("api/angular.fromJson", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.fromJson");
+ });
+
+});
+
+ describe("api/ng.directive:ngApp", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngApp");
+ });
+
+});
+
+ describe("api/angular.bootstrap", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.bootstrap");
+ });
+
+});
+
+ describe("api/angular.injector", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.injector");
+ });
+
+});
+
+ describe("api/AUTO", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/AUTO");
+ });
+
+});
+
+ describe("api/AUTO.$injector", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/AUTO.$injector");
+ });
+
+});
+
+ describe("api/AUTO.$provide", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/AUTO.$provide");
+ });
+
+});
+
+ describe("api/angular.element", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.element");
+ });
+
+});
+
+ describe("api/angular.Module", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.Module");
+ });
+
+});
+
+ describe("api/angular.module", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/angular.module");
+ });
+
+});
+
+ describe("api/ng.$anchorScroll", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.$anchorScroll");
+ });
+
+});
+
+ describe("api/ng.$cacheFactory", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.$cacheFactory");
+ });
+
+});
+
+ describe("api/ng.$templateCache", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.$templateCache");
+ });
+
+});
+
+ describe("api/ng.$compile", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.$compile");
+ });
+
+ it('should auto compile', function() {
+ expect(element('div[compile]').text()).toBe('Hello Angular');
+ input('html').enter('{{name}}!');
+ expect(element('div[compile]').text()).toBe('Angular!');
+ });
+
+});
+
+ describe("api/ng.$compileProvider", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.$compileProvider");
+ });
+
+});
+
+ describe("api/ng.$compile.directive.Attributes", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.$compile.directive.Attributes");
+ });
+
+});
+
+ describe("api/ng.directive:ngHref", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngHref");
+ });
+
+ it('should execute ng-click but not reload when href without value', function() {
+ element('#link-1').click();
+ expect(input('value').val()).toEqual('1');
+ expect(element('#link-1').attr('href')).toBe("");
+ });
+
+ it('should execute ng-click but not reload when href empty string', function() {
+ element('#link-2').click();
+ expect(input('value').val()).toEqual('2');
+ expect(element('#link-2').attr('href')).toBe("");
+ });
+
+ it('should execute ng-click and change url when ng-href specified', function() {
+ expect(element('#link-3').attr('href')).toBe("/123");
+
+ element('#link-3').click();
+ expect(browser().window().path()).toEqual('/123');
+ });
+
+ it('should execute ng-click but not reload when href empty string and name specified', function() {
+ element('#link-4').click();
+ expect(input('value').val()).toEqual('4');
+ expect(element('#link-4').attr('href')).toBe('');
+ });
+
+ it('should execute ng-click but not reload when no href but name specified', function() {
+ element('#link-5').click();
+ expect(input('value').val()).toEqual('5');
+ expect(element('#link-5').attr('href')).toBe('');
+ });
+
+ it('should only change url when only ng-href', function() {
+ input('value').enter('6');
+ expect(element('#link-6').attr('href')).toBe('6');
+
+ element('#link-6').click();
+ expect(browser().location().url()).toEqual('/6');
+ });
+
+});
+
+ describe("api/ng.directive:ngSrc", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngSrc");
+ });
+
+});
+
+ describe("api/ng.directive:ngDisabled", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngDisabled");
+ });
+
+ it('should toggle button', function() {
+ expect(element('.doc-example-live :button').prop('disabled')).toBeFalsy();
+ input('checked').check();
+ expect(element('.doc-example-live :button').prop('disabled')).toBeTruthy();
+ });
+
+});
+
+ describe("api/ng.directive:ngChecked", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngChecked");
+ });
+
+ it('should check both checkBoxes', function() {
+ expect(element('.doc-example-live #checkSlave').prop('checked')).toBeFalsy();
+ input('master').check();
+ expect(element('.doc-example-live #checkSlave').prop('checked')).toBeTruthy();
+ });
+
+});
+
+ describe("api/ng.directive:ngMultiple", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngMultiple");
+ });
+
+ it('should toggle multiple', function() {
+ expect(element('.doc-example-live #select').prop('multiple')).toBeFalsy();
+ input('checked').check();
+ expect(element('.doc-example-live #select').prop('multiple')).toBeTruthy();
+ });
+
+});
+
+ describe("api/ng.directive:ngReadonly", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngReadonly");
+ });
+
+ it('should toggle readonly attr', function() {
+ expect(element('.doc-example-live :text').prop('readonly')).toBeFalsy();
+ input('checked').check();
+ expect(element('.doc-example-live :text').prop('readonly')).toBeTruthy();
+ });
+
+});
+
+ describe("api/ng.directive:ngSelected", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngSelected");
+ });
+
+ it('should select Greetings!', function() {
+ expect(element('.doc-example-live #greet').prop('selected')).toBeFalsy();
+ input('selected').check();
+ expect(element('.doc-example-live #greet').prop('selected')).toBeTruthy();
+ });
+
+});
+
+ describe("api/ng.directive:a", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:a");
+ });
+
+});
+
+ describe("api/ng.$controllerProvider", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.$controllerProvider");
+ });
+
+});
+
+ describe("api/ng.$controller", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.$controller");
+ });
+
+});
+
+ describe("api/ng.directive:ngBind", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngBind");
+ });
+
+ it('should check ng-bind', function() {
+ expect(using('.doc-example-live').binding('name')).toBe('Whirled');
+ using('.doc-example-live').input('name').enter('world');
+ expect(using('.doc-example-live').binding('name')).toBe('world');
+ });
+
+});
+
+ describe("api/ng.directive:ngBindTemplate", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngBindTemplate");
+ });
+
+ it('should check ng-bind', function() {
+ expect(using('.doc-example-live').binding('salutation')).
+ toBe('Hello');
+ expect(using('.doc-example-live').binding('name')).
+ toBe('World');
+ using('.doc-example-live').input('salutation').enter('Greetings');
+ using('.doc-example-live').input('name').enter('user');
+ expect(using('.doc-example-live').binding('salutation')).
+ toBe('Greetings');
+ expect(using('.doc-example-live').binding('name')).
+ toBe('user');
+ });
+
+});
+
+ describe("api/ng.directive:ngBindHtmlUnsafe", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngBindHtmlUnsafe");
+ });
+
+});
+
+ describe("api/ng.directive:ngClass", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngClass");
+ });
+
+ it('should check ng-class', function() {
+ expect(element('.doc-example-live span').prop('className')).not().
+ toMatch(/my-class/);
+
+ using('.doc-example-live').element(':button:first').click();
+
+ expect(element('.doc-example-live span').prop('className')).
+ toMatch(/my-class/);
+
+ using('.doc-example-live').element(':button:last').click();
+
+ expect(element('.doc-example-live span').prop('className')).not().
+ toMatch(/my-class/);
+ });
+
+});
+
+ describe("api/ng.directive:ngClassOdd", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngClassOdd");
+ });
+
+ it('should check ng-class-odd and ng-class-even', function() {
+ expect(element('.doc-example-live li:first span').prop('className')).
+ toMatch(/odd/);
+ expect(element('.doc-example-live li:last span').prop('className')).
+ toMatch(/even/);
+ });
+
+});
+
+ describe("api/ng.directive:ngClassEven", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngClassEven");
+ });
+
+ it('should check ng-class-odd and ng-class-even', function() {
+ expect(element('.doc-example-live li:first span').prop('className')).
+ toMatch(/odd/);
+ expect(element('.doc-example-live li:last span').prop('className')).
+ toMatch(/even/);
+ });
+
+});
+
+ describe("api/ng.directive:ngCloak", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngCloak");
+ });
+
+ it('should remove the template directive and css class', function() {
+ expect(element('.doc-example-live #template1').attr('ng-cloak')).
+ not().toBeDefined();
+ expect(element('.doc-example-live #template2').attr('ng-cloak')).
+ not().toBeDefined();
+ });
+
+});
+
+ describe("api/ng.directive:ngController", function() {
+ beforeEach(function() {
+ browser().navigateTo("index-nocache.html#!/api/ng.directive:ngController");
+ });
+
+ it('should check controller', function() {
+ expect(element('.doc-example-live div>:input').val()).toBe('John Smith');
+ expect(element('.doc-example-live li:nth-child(1) input').val())
+ .toBe('408 555 1212');
+ expect(element('.doc-example-live li:nth-child(2) input').val())
+ .toBe('john.smith@example.org');
+
+ element('