diff options
| author | Misko Hevery | 2010-10-26 22:02:24 -0700 |
|---|---|---|
| committer | Misko Hevery | 2010-10-27 15:42:46 -0700 |
| commit | 62c0e5c46091d8b98a20c31ab26e715bad574bae (patch) | |
| tree | 18e73b82cb9017b9e9b66d3ec094c53ce0b633a8 /src/scenario/dsl.js | |
| parent | c67af8a03819004c4aaa775805badd1e631af738 (diff) | |
| download | angular.js-62c0e5c46091d8b98a20c31ab26e715bad574bae.tar.bz2 | |
Fix failing tests for ie, and mark elements as ng-widget, ng-directive, and ng-binding
Diffstat (limited to 'src/scenario/dsl.js')
| -rw-r--r-- | src/scenario/dsl.js | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/src/scenario/dsl.js b/src/scenario/dsl.js index 1ae26db8..47ec68c8 100644 --- a/src/scenario/dsl.js +++ b/src/scenario/dsl.js @@ -86,17 +86,21 @@ angular.scenario.dsl('using', function() { * binding(name) returns the value of a binding */ angular.scenario.dsl('binding', function() { + function contains(text, value) { + return text && text.indexOf(value) >=0; + } return function(name) { return this.addFutureAction("select binding '" + name + "'", function($window, $document, done) { - var element; - try { - element = $document.elements('[ng\\:bind-template*="{{$1}}"]', name); - } catch(e) { - if (e.type !== 'selector') - throw e; - element = $document.elements('[ng\\:bind="$1"]', name); + var elements = $document.elements('.ng-binding'); + for ( var i = 0; i < elements.length; i++) { + var element = new elements.init(elements[i]); + if (contains(element.attr('ng:bind'), name) >= 0 || + contains(element.attr('ng:bind-template'), name) >= 0) { + done(null, element.text()); + return; + } } - done(null, element.text()); + throw "Could not find binding: " + name; }); }; }); |
