mirror of
https://github.com/cypress-io/cypress.git
synced 2026-01-04 13:39:52 -06:00
60 lines
1.7 KiB
JavaScript
60 lines
1.7 KiB
JavaScript
const { expect } = require('chai')
|
|
const { _checkCanaries } = require('../circle-env')
|
|
|
|
describe('circle-env', () => {
|
|
let cachedEnv = { ...process.env }
|
|
|
|
afterEach(() => {
|
|
process.env = cachedEnv
|
|
})
|
|
|
|
beforeEach(() => {
|
|
process.env = { CI: 'true' }
|
|
})
|
|
|
|
context('with missing canaries', () => {
|
|
context('internal PR', () => {
|
|
it('fails when neither canary is set', () => {
|
|
expect(() => _checkCanaries({ isContributorPR: false })).to.throw('Missing MAIN_CANARY')
|
|
})
|
|
|
|
it('fails when only MAIN_CANARY is set', () => {
|
|
process.env.MAIN_CANARY = 'true'
|
|
|
|
expect(() => _checkCanaries({ isContributorPR: false })).to.throw('Missing CONTEXT_CANARY')
|
|
})
|
|
|
|
it('fails when only CONTEXT_CANARY is set', () => {
|
|
process.env.CONTEXT_CANARY = 'true'
|
|
|
|
expect(() => _checkCanaries({ isContributorPR: false })).to.throw('Missing MAIN_CANARY')
|
|
})
|
|
})
|
|
|
|
context('contributor PR', () => {
|
|
it('fails when MAIN_CANARY is set', () => {
|
|
process.env.MAIN_CANARY = 'true'
|
|
|
|
expect(() => _checkCanaries({ isContributorPR: true })).to.throw('MAIN_CANARY should not be present in a contributor PR.')
|
|
})
|
|
|
|
it('fails when CONTEXT_CANARY is set', () => {
|
|
process.env.CONTEXT_CANARY = 'true'
|
|
|
|
expect(() => _checkCanaries({ isContributorPR: true })).to.throw('CONTEXT_CANARY should not be present in a contributor PR.')
|
|
})
|
|
})
|
|
})
|
|
|
|
it('passes with canaries', () => {
|
|
process.env.MAIN_CANARY = 'true'
|
|
process.env.CONTEXT_CANARY = 'true'
|
|
|
|
_checkCanaries({ isContributorPR: false })
|
|
})
|
|
|
|
it('passes for contributor PR', () => {
|
|
_checkCanaries({ isContributorPR: true })
|
|
})
|
|
})
|