diff options
| author | Shyam Seshadri | 2010-08-09 17:55:01 -0700 | 
|---|---|---|
| committer | Shyam Seshadri | 2010-08-09 17:55:01 -0700 | 
| commit | 21d2b43e6c81b7b6b55599f0274495d25411b4f0 (patch) | |
| tree | 3a26947436ecef028e397f69e73da10c5fc86d61 /src/scenario | |
| parent | de8d0984c85ae3078fd72a9c7f010b0fd4397150 (diff) | |
| download | angular.js-21d2b43e6c81b7b6b55599f0274495d25411b4f0.tar.bz2 | |
Add element DSL, to find an element. Has knowledge of finding ng:bind elements and grabbing their contents.
Diffstat (limited to 'src/scenario')
| -rw-r--r-- | src/scenario/DSL.js | 21 | 
1 files changed, 20 insertions, 1 deletions
diff --git a/src/scenario/DSL.js b/src/scenario/DSL.js index 13576824..fe834835 100644 --- a/src/scenario/DSL.js +++ b/src/scenario/DSL.js @@ -62,7 +62,9 @@ angular.scenario.dsl.repeater = function(selector) {              );              element.find('*').each(function(index) {                var bindName = _jQuery(this).attr('ng:bind'); -              element.bindings[bindName] = _jQuery(this).text(); +              if (bindName) { +                element.bindings[bindName] = _jQuery(this).text(); +              }              });              repeaterArray[index] = element;            }); @@ -73,3 +75,20 @@ angular.scenario.dsl.repeater = function(selector) {      }    };  }; + +angular.scenario.dsl.element = function(selector) { +  var nameSuffix = "element '" + selector + "'"; +  return $scenario.addFuture('Find ' + nameSuffix, function(done) { +    var element = angular.extend(this.testDocument.find(selector), { +      bindings: [], +      boundTo: function(name) { return this.bindings[name]; } +    }); +    element.find('*').each(function(index) { +      var bindName = _jQuery(this).attr('ng:bind'); +      if (bindName) { +        element.bindings[bindName] = _jQuery(this).text(); +      } +    }); +    done(element); +  }); +};  | 
