casper: Fix waiting condition in message deletion tests.

We now specifically wait for the length to decrease by one. This seems
like a more deterministic condition to wait on.

Previously we were waiting till the id of the deleted message remained
visible; intuitively, this should have worked but it seems that there
is some race condition that was causing the test to fail sporadically.
This commit is contained in:
Umair Khan 2017-05-31 10:07:49 +05:00 committed by Tim Abbott
parent eb1a22a1d2
commit 6ee08e0602
1 changed files with 8 additions and 6 deletions

View File

@ -29,15 +29,17 @@ casper.then(function () {
});
casper.then(function () {
casper.waitWhileVisible(last_message_id, function () {
var msgs_after_deleting = casper.evaluate(function () {
return $('#zhome .message_row').length;
});
casper.test.assertEquals(msgs_qty - 1, msgs_after_deleting);
casper.test.assertDoesntExist(last_message_id);
casper.waitFor(function check_length() {
return casper.evaluate(function (expected_length) {
return $('#zhome .message_row').length === expected_length;
}, msgs_qty - 1);
});
});
casper.then(function () {
casper.test.assertDoesntExist(last_message_id);
});
casper.run(function () {
casper.test.done();
});