recreate property prevents restoring shared session in Cypress.env
bahmutov opened this issue ยท comments
Seems if a shared data session has recreate
method, then it is not placed back into Cypress.env
// @ts-check
import '../../src'
describe('Restores data session', () => {
beforeEach(() => {
Cypress.clearDataSession('parent')
})
it('sets the session in Cypress.env', function () {
/** @type Cypress.DataSessionOptions */
const parentOptions = {
name: 'parent',
setup: cy.stub().as('parentSetup').returns(1),
recreate: cy.stub().as('parentRecreate').returns(2),
validate: true,
shareAcrossSpecs: true,
}
const key = Cypress.formDataSessionKey('parent')
cy.dataSession(parentOptions)
.then(() => {
expect(Cypress.env()).to.have.property(key)
cy.log('removing data session from env')
delete Cypress.env()[key]
})
.then(() => {
expect(Cypress.env()).to.not.have.property(key)
cy.dataSession(parentOptions).then(() => {
expect(Cypress.env()).to.have.property(key)
})
})
})
})
๐ This issue has been resolved in version 1.14.3 ๐
The release is available on:
Your semantic-release bot ๐ฆ๐