javascript - Cannot return string from value of element in protractor test -


so i'm trying string value returned value of element on resolution of promise. want pass raw string value function i'm building inside protractor test.

this element:

<div style='hidden' >     <input id="group-sendgrid-hidden-input" ng-model='groupcode' value='dangyo' > </div> 

i'm looking way @ either model value or attribute value (either work). model value might better.

this attempt resolve promise here , return result:

// first element driver object var groupcode = element(by.id('group-sendgrid-hidden-input'));  // next resolve promise provided element groupcode.getattribute('value').then(function(value){      console.log( 'should string: ' + value);      return value; }); 

here console.log( 'should string: ' + value); returns null value , nothing can seems resolve this. i'm sure i'm doing wrong because new protractor , seems simple. else experience behavior?

it's big comment , still guess, how making custom "expected condition" , wait input element's value attribute value not null:

var hasnotnullvalue = function(elementfinder) {     return function() {         return elementfinder.getattribute("value").then(function(value) {             return !!value;  // not null         });     };  };  var groupcode = element(by.id('group-sendgrid-hidden-input')); browser.wait(hasnotnullvalue(groupcode), 10000);  groupcode.getattribute('value').then(function(value){     console.log('should string: ' + value); }); 

you can use evaluate() retrieve model value:

groupcode.evaluate('groupcode').then(function(value) {     console.log(value); }); 

Comments

Popular posts from this blog

javascript - AngularJS custom datepicker directive -

javascript - jQuery date picker - Disable dates after the selection from the first date picker -