From 22a9b1ac07f98d07e1e5d71ce961411b5fa9b42d Mon Sep 17 00:00:00 2001 From: Stephen Merity Date: Mon, 3 Jun 2013 18:09:36 +1000 Subject: fix(ngScenario): select().option(val) should prefer exact value match With select(...).option(val) it previously would select the first node which contains the value, even if an exact match was available. This fix prefers exact matches if available, otherwise it reverts to the previous 'contains' behaviour for backwards compatibility. Closes #2856 --- src/ngScenario/dsl.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/ngScenario/dsl.js b/src/ngScenario/dsl.js index 67a56af9..becd13a5 100644 --- a/src/ngScenario/dsl.js +++ b/src/ngScenario/dsl.js @@ -295,7 +295,12 @@ angular.scenario.dsl('select', function() { if (option.length) { select.val(value); } else { - option = select.find('option:contains("' + value + '")'); + option = select.find('option').filter(function(){ + return _jQuery(this).text() === value; + }); + if (!option.length) { + option = select.find('option:contains("' + value + '")'); + } if (option.length) { select.val(option.val()); } else { -- cgit v1.2.3