Add Makefile, package.json, and initial configuration for VitePress and Slidev integration
- Introduced a Makefile for streamlined commands related to building, running, and managing presentations. - Created package.json to define project metadata, dependencies, and scripts for development and testing. - Added .gitignore entries to exclude build artifacts and temporary files from version control. - Included playwright.config.mjs for end-to-end testing setup with Playwright. - Added README.md for project documentation, outlining setup instructions and development guidelines.
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
import { test, describe, beforeEach } from 'node:test'
|
||||
import assert from 'node:assert'
|
||||
import { getSiteBase, sitePath, vitepressAppBase } from '../tools/site-base.mjs'
|
||||
|
||||
describe('site-base (SITE_BASE / chemins statiques)', () => {
|
||||
beforeEach(() => {
|
||||
delete process.env.SITE_BASE
|
||||
delete process.env.TALKS_PORTAL_DEV
|
||||
})
|
||||
|
||||
test('défaut : même comportement que la racine du site', () => {
|
||||
assert.strictEqual(getSiteBase(), '')
|
||||
assert.strictEqual(sitePath('/slides/foo/'), '/slides/foo/')
|
||||
assert.strictEqual(sitePath('/presentations/bar/'), '/presentations/bar/')
|
||||
})
|
||||
|
||||
test('sous-chemin sans slash final', () => {
|
||||
process.env.SITE_BASE = '/mon-depot'
|
||||
assert.strictEqual(getSiteBase(), '/mon-depot')
|
||||
assert.strictEqual(sitePath('/slides/foo/'), '/mon-depot/slides/foo/')
|
||||
})
|
||||
|
||||
test('sous-chemin avec slash final', () => {
|
||||
process.env.SITE_BASE = '/repo/'
|
||||
assert.strictEqual(getSiteBase(), '/repo')
|
||||
assert.strictEqual(sitePath('/slides/x/'), '/repo/slides/x/')
|
||||
})
|
||||
|
||||
test('chemins relatifs normalisés', () => {
|
||||
delete process.env.SITE_BASE
|
||||
assert.strictEqual(sitePath('slides/x/'), '/slides/x/')
|
||||
})
|
||||
|
||||
test('SITE_BASE vide explicite : traité comme /', () => {
|
||||
process.env.SITE_BASE = ''
|
||||
assert.strictEqual(getSiteBase(), '')
|
||||
})
|
||||
|
||||
test('TALKS_PORTAL_DEV=1 : ignore SITE_BASE (dev local)', () => {
|
||||
process.env.TALKS_PORTAL_DEV = '1'
|
||||
process.env.SITE_BASE = '/pages-projet/'
|
||||
assert.strictEqual(getSiteBase(), '')
|
||||
assert.strictEqual(sitePath('/slides/a/'), '/slides/a/')
|
||||
assert.strictEqual(vitepressAppBase(), '/')
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user