diff --git a/src/ngScenario/SpecRunner.js b/src/ngScenario/SpecRunner.js index f4b9b0a7ad1d..23cc1dc724e6 100644 --- a/src/ngScenario/SpecRunner.js +++ b/src/ngScenario/SpecRunner.js @@ -119,7 +119,9 @@ angular.scenario.SpecRunner.prototype.addFutureAction = function(name, behavior, }); var result = $document.find(selector); if (selector.match(NG)) { - result = result.add(selector.replace(NG, '[ng-'), $document); + angular.forEach(['[ng-','[data-ng-','[x-ng-'], function(value, index){ + result = result.add(selector.replace(NG, value), $document); + }); } if (!result.length) { throw { diff --git a/test/ngScenario/SpecRunnerSpec.js b/test/ngScenario/SpecRunnerSpec.js index c104a9b73dd9..5970607ce18e 100644 --- a/test/ngScenario/SpecRunnerSpec.js +++ b/test/ngScenario/SpecRunnerSpec.js @@ -173,5 +173,4 @@ describe('angular.scenario.SpecRunner', function() { 'SpecEnd' ]); }); - }); diff --git a/test/ngScenario/dslSpec.js b/test/ngScenario/dslSpec.js index 9c7893fdf3c2..4a4b17bc8f5d 100644 --- a/test/ngScenario/dslSpec.js +++ b/test/ngScenario/dslSpec.js @@ -217,6 +217,30 @@ describe("angular.scenario.dsl", function() { expect(doc.find('[ng-model="test"]').val()).toEqual('A'); }); + it('should select single option using data-ng', function() { + doc.append( + '' + ); + $root.dsl.select('test').option('A'); + expect(doc.find('[data-ng-model="test"]').val()).toEqual('A'); + }); + it('should select single option using x-ng', function() { + doc.append( + '' + ); + $root.dsl.select('test').option('A'); + expect(doc.find('[x-ng-model="test"]').val()).toEqual('A'); + }); + + + + it('should select option by name', function() { doc.append( ''); + var chain = $root.dsl.input('test.input'); + chain.enter('foo'); + expect(_jQuery('input[data-ng-model="test.input"]').val()).toEqual('foo'); + }); + it('should change value in text input in x-ng form', function() { + doc.append(''); + var chain = $root.dsl.input('test.input'); + chain.enter('foo'); + expect(_jQuery('input[x-ng-model="test.input"]').val()).toEqual('foo'); + }); + + it('should return error if no input exists', function() { var chain = $root.dsl.input('test.input');