summaryrefslogtreecommitdiff
path: root/packages/astro/test/astro-mode.test.js
diff options
context:
space:
mode:
Diffstat (limited to 'packages/astro/test/astro-mode.test.js')
-rw-r--r--packages/astro/test/astro-mode.test.js38
1 files changed, 38 insertions, 0 deletions
diff --git a/packages/astro/test/astro-mode.test.js b/packages/astro/test/astro-mode.test.js
index 09585831a..cffacce6e 100644
--- a/packages/astro/test/astro-mode.test.js
+++ b/packages/astro/test/astro-mode.test.js
@@ -2,15 +2,25 @@ import assert from 'node:assert/strict';
import { after, afterEach, before, describe, it } from 'node:test';
import * as cheerio from 'cheerio';
import { loadFixture } from './test-utils.js';
+import { existsSync, promises as fs } from 'node:fs';
describe('--mode', () => {
/** @type {import('./test-utils.js').Fixture} */
let fixture;
+ let devDataStoreFile;
+ let prodDataStoreFile;
+
+ async function deleteDataStoreFiles() {
+ await fs.unlink(devDataStoreFile).catch(() => {});
+ await fs.unlink(prodDataStoreFile).catch(() => {});
+ }
before(async () => {
fixture = await loadFixture({
root: './fixtures/astro-mode/',
});
+ devDataStoreFile = new URL('./.astro/data-store.json', fixture.config.root);
+ prodDataStoreFile = new URL('./node_modules/.astro/data-store.json', fixture.config.root);
});
afterEach(() => {
@@ -25,6 +35,7 @@ describe('--mode', () => {
describe('build', () => {
before(async () => {
+ await deleteDataStoreFiles();
await fixture.build();
});
@@ -37,10 +48,15 @@ describe('--mode', () => {
assert.equal($('#env-title').text(), 'production');
assert.equal($('#env-astro-title').text(), 'production');
});
+
+ it('writes data store file in the correct location', async () => {
+ assert.ok(existsSync(prodDataStoreFile));
+ })
});
describe('build --mode testing --devOutput', () => {
before(async () => {
+ await deleteDataStoreFiles();
await fixture.build({ mode: 'testing' }, { devOutput: true });
});
@@ -52,11 +68,17 @@ describe('--mode', () => {
assert.equal($('#env-prod').text(), 'false');
assert.equal($('#env-title').text(), '');
assert.equal($('#env-astro-title').text(), 'unset');
+ assert.ok
});
+
+ it('writes data store file in the correct location', async () => {
+ assert.ok(existsSync(prodDataStoreFile));
+ })
});
describe('build --mode staging', () => {
before(async () => {
+ await deleteDataStoreFiles();
await fixture.build({ mode: 'staging' });
});
@@ -69,12 +91,18 @@ describe('--mode', () => {
assert.equal($('#env-title').text(), 'staging');
assert.equal($('#env-astro-title').text(), 'staging');
});
+
+ it('writes data store file in the correct location', async () => {
+ assert.ok(existsSync(prodDataStoreFile));
+ })
+
});
describe('dev', () => {
/** @type {import('./test-utils.js').DevServer} */
let devServer;
before(async () => {
+ await deleteDataStoreFiles();
devServer = await fixture.startDevServer();
});
after(async () => {
@@ -92,12 +120,17 @@ describe('--mode', () => {
assert.equal($('#env-title').text(), 'development');
assert.equal($('#env-astro-title').text(), 'development');
});
+
+ it('writes data store file in the correct location', async () => {
+ assert.ok(existsSync(devDataStoreFile));
+ })
});
describe('dev --mode develop', () => {
/** @type {import('./test-utils.js').DevServer} */
let devServer;
before(async () => {
+ await deleteDataStoreFiles();
devServer = await fixture.startDevServer({ mode: 'develop' });
});
after(async () => {
@@ -115,5 +148,10 @@ describe('--mode', () => {
assert.equal($('#env-title').text(), '');
assert.equal($('#env-astro-title').text(), 'unset');
});
+
+ it('writes data store file in the correct location', async () => {
+ assert.ok(existsSync(devDataStoreFile));
+ })
+
});
});