MOBILE-4420 behat: Support sync network requests

main
Dani Palou 2023-09-15 12:34:54 +02:00
parent 1f05729cb0
commit a4ea36399f
1 changed files with 16 additions and 4 deletions

View File

@ -236,15 +236,27 @@ export class TestingBehatBlockingService {
NgZone.run(() => {
const index = requestIndex++;
const key = 'httprequest-' + index;
const isAsync = args[2] !== false;
try {
// Add to the list of pending requests.
TestingBehatBlocking.block(key);
// Detect when it finishes and remove it from the list.
if (isAsync) {
this.addEventListener('loadend', () => {
TestingBehatBlocking.unblock(key);
});
} else {
const realSend = this.send;
this.send = (...args) => {
try {
return realSend.apply(this, args);
} finally {
TestingBehatBlocking.unblock(key);
}
};
}
return realOpen.apply(this, args);
} catch (error) {