Skip to content

Commit 9915675

Browse files
Rachit TiwariRachit Tiwari
authored andcommitted
IN-9899 Reload session fixes
1 parent e3bbeea commit 9915675

File tree

1 file changed

+11
-6
lines changed

1 file changed

+11
-6
lines changed

src/service.js

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ export default class LambdaRestService {
3434
_useScenarioName;
3535
_lambdaCredentials;
3636
_currentTestTitle;
37+
//keep track of last reloaded session within a larger test-suite
38+
_lastReloadedSession;
3739

3840
constructor(options = {}, capabilities = {}, config = {}) {
3941
this._options = { ...DEFAULT_OPTIONS, ...options };
@@ -161,8 +163,6 @@ export default class LambdaRestService {
161163

162164
afterTest(test, context, { error, passed }) {
163165
this._specsRan = true;
164-
this._fullTitle = this._currentTestTitle
165-
166166
// remove failure if test was retried and passed
167167
// (Mocha only)
168168
if (test._retriedTest && passed) {
@@ -255,6 +255,11 @@ export default class LambdaRestService {
255255
log.info(`Session URL: ${sessionURL}`);
256256
}
257257

258+
// Use the failure value for result in case of reloaded sessions
259+
if (this._lastReloadedSession==this._browser.sessionId){
260+
return this._update({ sessionId: this._browser.sessionId, failures: failures });
261+
}
262+
258263
return this._update({ sessionId: this._browser.sessionId, failures: result });
259264
}
260265

@@ -272,6 +277,7 @@ export default class LambdaRestService {
272277
}
273278

274279
async onReload(oldSessionId, newSessionId) {
280+
this._lastReloadedSession = newSessionId;
275281
if (!this._isServiceEnabled) {
276282
return;
277283
}
@@ -287,7 +293,7 @@ export default class LambdaRestService {
287293
log.info(`Session URL: ${sessionURL}`);
288294
}
289295

290-
await this._update({ sessionId: oldSessionId, fullTitle: this._currentTestTitle, status: status, calledOnReload: true });
296+
await this._update({ sessionId: oldSessionId, fullTitle: this._fullTitle, status: status, calledOnReload: true });
291297

292298
} else {
293299
const browserName = this._browser.instances.filter(browserName => this._browser[browserName].sessionId === newSessionId)[0];
@@ -304,7 +310,6 @@ export default class LambdaRestService {
304310

305311
this._failReasons = [];
306312
this._scenariosThatRan = [];
307-
delete this._suiteTitle;
308313
delete this._fullTitle;
309314
}
310315

@@ -398,8 +403,8 @@ export default class LambdaRestService {
398403
name = `${pre}${test.parent}${post}`;
399404
}
400405

401-
if (name !== this.__fullTitle) {
402-
this.__fullTitle = name;
406+
if (name !== this._fullTitle) {
407+
this._fullTitle = name;
403408
await this._setSessionName(name);
404409
}
405410
}

0 commit comments

Comments
 (0)