encoded.test.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import * as assert from 'node:assert/strict';
  2. import { describe, it, before } from 'node:test';
  3. import nodejs from '../dist/index.js';
  4. import { loadFixture, createRequestAndResponse } from './test-utils.js';
  5. describe('Encoded Pathname', () => {
  6. /** @type {import('./test-utils').Fixture} */
  7. let fixture;
  8. before(async () => {
  9. fixture = await loadFixture({
  10. root: './fixtures/encoded/',
  11. output: 'server',
  12. adapter: nodejs({ mode: 'middleware' }),
  13. });
  14. await fixture.build();
  15. });
  16. it('Can get an Astro file', async () => {
  17. const { handler } = await import('./fixtures/encoded/dist/server/entry.mjs');
  18. let { req, res, text } = createRequestAndResponse({
  19. url: '/什么',
  20. });
  21. handler(req, res);
  22. req.send();
  23. const html = await text();
  24. assert.equal(html.includes('什么</h1>'), true);
  25. });
  26. it('Can get a Markdown file', async () => {
  27. const { handler } = await import('./fixtures/encoded/dist/server/entry.mjs');
  28. let { req, res, text } = createRequestAndResponse({
  29. url: '/blog/什么',
  30. });
  31. handler(req, res);
  32. req.send();
  33. const html = await text();
  34. assert.equal(html.includes('什么</h1>'), true);
  35. });
  36. });