KAK
KAK

Reputation: 915

Getting "is not a thenable" message while using "eventually" in protractor chai

When I tried to verify the condition as below.

 var val1 = "ONE";
 var val2 = "TWO";
 expect(val1==val2).to.eventually.equal(false)

I'm getting false is not a thenable message, If I removed eventually condition as below then it working fine.

 var val1 = "ONE";
 var val2 = "TWO";
 expect(val1==val2).to.equal(false)

Can anyone help me to understand the difference. Also If the condition fails, It displays the error message and not executing the hooks.js.

Upvotes: 7

Views: 11753

Answers (1)

Kacper
Kacper

Reputation: 1199

In simple words:

eventually - is a method from chai-as-promised. If you use eventually protractor expects that you are asserting result of a promise to value (in this case false). val1 and val2 are bools. Comparison of val1 and val2 is also a bool.

Bool is not a promise.

You've got two possibilities: 1. Don't use eventually (just a chai). 2. Return a promise from comparison of those values.

Upvotes: 13

Related Questions