rsnext/test/isolated/config.test.js
Connor Davis fcf1167cd4 Upgrade standard and fix files (#6358)
Upgrades `standard` to major version 12
2019-02-19 22:45:07 +01:00

50 lines
1.8 KiB
JavaScript

/* eslint-env jest */
import { join } from 'path'
import loadConfig from 'next-server/next-config'
import { PHASE_DEVELOPMENT_SERVER } from 'next-server/constants'
const pathToConfig = join(__dirname, '_resolvedata', 'without-function')
const pathToConfigFn = join(__dirname, '_resolvedata', 'with-function')
describe('config', () => {
it('Should get the configuration', () => {
const config = loadConfig(PHASE_DEVELOPMENT_SERVER, pathToConfig)
expect(config.customConfig).toBe(true)
})
it('Should pass the phase correctly', () => {
const config = loadConfig(PHASE_DEVELOPMENT_SERVER, pathToConfigFn)
expect(config.phase).toBe(PHASE_DEVELOPMENT_SERVER)
})
it('Should pass the defaultConfig correctly', () => {
const config = loadConfig(PHASE_DEVELOPMENT_SERVER, pathToConfigFn)
expect(config.defaultConfig).toBeDefined()
})
it('Should pass the customConfig correctly', () => {
const config = loadConfig(PHASE_DEVELOPMENT_SERVER, null, { customConfig: true })
expect(config.customConfig).toBe(true)
})
it('Should not pass the customConfig when it is null', () => {
const config = loadConfig(PHASE_DEVELOPMENT_SERVER, null, null)
expect(config.webpack).toBe(null)
})
it('Should throw when an invalid target is provided', () => {
try {
loadConfig(PHASE_DEVELOPMENT_SERVER, join(__dirname, '_resolvedata', 'invalid-target'))
// makes sure we don't just pass if the loadConfig passes while it should fail
throw new Error('failed')
} catch (err) {
expect(err.message).toMatch(/Specified target is invalid/)
}
})
it('Should pass when a valid target is provided', () => {
const config = loadConfig(PHASE_DEVELOPMENT_SERVER, join(__dirname, '_resolvedata', 'valid-target'))
expect(config.target).toBe('serverless')
})
})