Nuxt/test/express.test.js
2018-01-13 08:52:11 +03:30

46 lines
996 B
JavaScript

import test from 'ava'
import { resolve } from 'path'
import { Nuxt, Builder } from '..'
import express from 'express'
import rp from 'request-promise-native'
import { interceptLog } from './helpers/console'
const port = 4000
const url = route => 'http://localhost:' + port + route
let nuxt
let app
// Init nuxt.js and create express server
test.serial('Init Nuxt.js', async t => {
const config = {
rootDir: resolve(__dirname, 'fixtures/basic'),
buildDir: '.nuxt-express',
dev: false,
build: {
stats: false
}
}
const logSpy = await interceptLog(async () => {
nuxt = new Nuxt(config)
await new Builder(nuxt).build()
})
t.true(logSpy.calledWithMatch('DONE'))
// Create express app
app = express()
// Register nuxt
app.use(nuxt.render)
// Start listening on localhost:4000
app.listen(port)
})
test('/stateless with express', async t => {
const html = await rp(url('/stateless'))
t.true(html.includes('<h1>My component!</h1>'))
})