aboutsummaryrefslogtreecommitdiffstats
path: root/src/scenario/Scenario.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/scenario/Scenario.js')
-rw-r--r--src/scenario/Scenario.js28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/scenario/Scenario.js b/src/scenario/Scenario.js
index fc7150bc..ae1a6760 100644
--- a/src/scenario/Scenario.js
+++ b/src/scenario/Scenario.js
@@ -294,3 +294,31 @@ function browserTrigger(element, type) {
};
})(_jQuery.fn);
+/**
+ * Finds all bindings with the substring match of name and returns an
+ * array of their values.
+ *
+ * @param {string} name The name to match
+ * @return {Array.<string>} String of binding values
+ */
+_jQuery.fn.bindings = function(name) {
+ function contains(text, value) {
+ return value instanceof RegExp ?
+ value.test(text) :
+ text && text.indexOf(value) >= 0;
+ }
+ var result = [];
+ this.find('.ng-binding').each(function() {
+ var element = new _jQuery(this);
+ if (!angular.isDefined(name) ||
+ contains(element.attr('ng:bind'), name) ||
+ contains(element.attr('ng:bind-template'), name)) {
+ if (element.is('input, textarea')) {
+ result.push(element.val());
+ } else {
+ result.push(element.html());
+ }
+ }
+ });
+ return result;
+};