parchambeau parchambeau - 14 days ago 10
AngularJS Question

Protractor getAttribute('value') returning as null

I'm fairly new to Protractor and am having some difficulty in obtaining the text from an error box that displays only when a certain condition is met.

I am sure that it is just a syntax issue. Below is the line I am using to attempt to get the "text" that displays in the box, and compare it to a preset static string.

expect(element(by.css('[ng-switch-default=""]')).getAttribute('value')).toEqual(expected_error_message);


I am receiving the message back:

Message: Expected null to equal 'User with login test8827391@gmail.com' already exists.'


So basically there is nothing to compare strings against because the value that "getAttribute('value') is supposed to grab is returning null".

The block of HTML that I am referencing is found below:

<div ng-class="config.message" ng-switch="" on="toaster.bodyOutputType" class="toast-message"><div ng-switch-default="" class="ng-binding">User with login 'test8827391@gmail.com' already exists.</div></div>

Answer

It looks like your message is not an attribute, but the text for the div. Try:

expect(element(by.css('[ng-switch-default=""]')).getText()).toEqual(expected_error_message);
Comments