The q.delay is needed to make sure (or at least reasonably
sure...) that the login component has appeared by that point. The
done handler needs to be the error callback too otherwise failures
result in timeouts rather than the actual failure.
This commit is contained in:
David Baker 2017-06-06 15:54:45 +01:00
parent d06934c5f6
commit 15d0bd9271

View File

@ -192,13 +192,15 @@ describe('loading:', function () {
}).respond(403, "Guest access is disabled"); }).respond(403, "Guest access is disabled");
return httpBackend.flush(); return httpBackend.flush();
}).then(() => {
// Wait for another trip around the event loop for the UI to update
return q.delay(1);
}).then(() => { }).then(() => {
// we expect a single <Login> component following session load // we expect a single <Login> component following session load
ReactTestUtils.findRenderedComponentWithType( ReactTestUtils.findRenderedComponentWithType(
matrixChat, sdk.getComponent('structures.login.Login')); matrixChat, sdk.getComponent('structures.login.Login'));
expect(windowLocation.hash).toEqual(""); expect(windowLocation.hash).toEqual("");
done(); }).done(done, done);
});
}); });
it('should follow the original link after successful login', function(done) { it('should follow the original link after successful login', function(done) {