diff options
Diffstat (limited to 'packages/astro/test/units/cookies/error.test.js')
-rw-r--r-- | packages/astro/test/units/cookies/error.test.js | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/packages/astro/test/units/cookies/error.test.js b/packages/astro/test/units/cookies/error.test.js new file mode 100644 index 000000000..027474424 --- /dev/null +++ b/packages/astro/test/units/cookies/error.test.js @@ -0,0 +1,22 @@ +import * as assert from 'node:assert/strict'; +import { describe, it } from 'node:test'; +import { AstroCookies } from '../../../dist/core/cookies/index.js'; +import { apply as applyPolyfill } from '../../../dist/core/polyfill.js'; + +applyPolyfill(); + +describe('astro/src/core/cookies', () => { + describe('errors', () => { + it('Produces an error if the response is already sent', () => { + const req = new Request('http://example.com/', {}); + const cookies = new AstroCookies(req); + req[Symbol.for('astro.responseSent')] = true; + try { + cookies.set('foo', 'bar'); + assert.equal(false, true); + } catch (err) { + assert.equal(err.name, 'ResponseSentError'); + } + }); + }); +}); |