import test from 'ava' import { Nuxt, Generator } from '../index.js' test('initRoutes with routes (fn => array)', async t => { const array = ['/1', '/2', '/3', '/4'] const config = { generate: { routes: array } } const nuxt = new Nuxt(config) const generator = new Generator(nuxt) const routes = await generator.initRoutes() t.is(routes.length, array.length) routes.map((route, index) => { t.is(route.route, array[index]) }) }) test('initRoutes with routes (fn())', async t => { const array = ['/1', '/2', '/3', '/4'] const config = { generate: { routes() { return array } } } const nuxt = new Nuxt(config) const generator = new Generator(nuxt) const routes = await generator.initRoutes() t.is(routes.length, array.length) routes.map((route, index) => { t.is(route.route, array[index]) }) }) test('initRoutes with routes (fn(args))', async t => { const config = { generate: { routes(array) { return array } } } const nuxt = new Nuxt(config) const generator = new Generator(nuxt) const array = ['/1', '/2', '/3', '/4'] const routes = await generator.initRoutes(array) t.is(routes.length, array.length) routes.map((route, index) => { t.is(route.route, array[index]) }) }) test('initRoutes with routes (fn(cb, args))', async t => { const config = { generate: { routes(cb, arg1, arg2, arg3, arg4) { cb(null, [ arg1, arg2, arg3, arg4 ]) } } } const nuxt = new Nuxt(config) const generator = new Generator(nuxt) const array = ['/1', '/2', '/3', '/4'] const routes = await generator.initRoutes(...array) t.is(routes.length, array.length) routes.map((route, index) => { t.is(route.route, array[index]) }) })