2023-08-10 10:19:00 -05:00
|
|
|
import { loadFixture, runCLI } from './test-utils.js';
|
|
|
|
import { expect } from 'chai';
|
|
|
|
import * as cheerio from 'cheerio';
|
|
|
|
import cloudflare from '../dist/index.js';
|
|
|
|
|
|
|
|
describe('Runtime Locals', () => {
|
|
|
|
/** @type {import('./test-utils.js').Fixture} */
|
|
|
|
let fixture;
|
|
|
|
/** @type {import('./test-utils.js').WranglerCLI} */
|
|
|
|
let cli;
|
|
|
|
|
2023-09-05 14:35:41 -05:00
|
|
|
before(async function () {
|
2023-08-10 10:19:00 -05:00
|
|
|
fixture = await loadFixture({
|
|
|
|
root: './fixtures/runtime/',
|
|
|
|
output: 'server',
|
|
|
|
adapter: cloudflare(),
|
|
|
|
});
|
|
|
|
await fixture.build();
|
|
|
|
|
2023-08-15 12:10:51 -05:00
|
|
|
cli = await runCLI('./fixtures/runtime/', { silent: true, port: 8793 });
|
2023-09-05 14:35:41 -05:00
|
|
|
await cli.ready.catch((e) => {
|
|
|
|
console.log(e);
|
|
|
|
// if fail to start, skip for now as it's very flaky
|
|
|
|
this.skip();
|
|
|
|
});
|
2023-08-10 10:19:00 -05:00
|
|
|
});
|
|
|
|
|
|
|
|
after(async () => {
|
|
|
|
await cli.stop();
|
|
|
|
});
|
|
|
|
|
|
|
|
it('has CF and Caches', async () => {
|
2023-08-15 12:10:51 -05:00
|
|
|
let res = await fetch(`http://127.0.0.1:8793/`);
|
2023-08-10 10:19:00 -05:00
|
|
|
expect(res.status).to.equal(200);
|
|
|
|
let html = await res.text();
|
|
|
|
let $ = cheerio.load(html);
|
|
|
|
expect($('#env').text()).to.contain('SECRET_STUFF');
|
|
|
|
expect($('#env').text()).to.contain('secret');
|
2023-08-16 13:28:57 -05:00
|
|
|
expect($('#hasRuntime').text()).to.contain('true');
|
2023-08-10 10:19:00 -05:00
|
|
|
expect($('#hasCache').text()).to.equal('true');
|
|
|
|
});
|
|
|
|
});
|