diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/scenario/DSL.js | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/scenario/DSL.js b/src/scenario/DSL.js index 26157059..13576824 100644 --- a/src/scenario/DSL.js +++ b/src/scenario/DSL.js @@ -50,6 +50,26 @@ angular.scenario.dsl.repeater = function(selector) { return $scenario.addFuture(namePrefix + ' count', function(done) { done(this.testDocument.find(selector).size()); }); + }, + collect: function() { + return $scenario.addFuture(namePrefix + ' collect', function(done) { + var doCollect = bind(this, function() { + var repeaterArray = []; + this.testDocument.find(selector).each(function(index) { + var element = angular.extend(_jQuery(this), + {bindings: [], + boundTo: function(name) { return this.bindings[name]; }} + ); + element.find('*').each(function(index) { + var bindName = _jQuery(this).attr('ng:bind'); + element.bindings[bindName] = _jQuery(this).text(); + }); + repeaterArray[index] = element; + }); + return repeaterArray; + }); + done(doCollect()); + }); } }; }; |
