feat: harden content workflows and staging smoke tests
CI — Test & Build / 🧪 Run Tests & Generate Reports (push) Waiting to run
CI — Test & Build / 🏗️ Build Docker Image (push) Blocked by required conditions
CI — Test & Build / 🐳 Docker integration & API E2E (push) Blocked by required conditions
CI — Test & Build / 🌐 Staging Playwright smoke (push) Waiting to run

This commit is contained in:
Do Siki
2026-08-17 16:08:57 +02:00
parent 35e341d5b2
commit 0047e1b441
28 changed files with 1208 additions and 360 deletions
+24
View File
@@ -0,0 +1,24 @@
#!/usr/bin/env node
const assert = require('assert/strict');
const fs = require('fs');
const os = require('os');
const path = require('path');
const { backupAndWriteAtomically } = require('../content-editor');
const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'mozdit-content-save-'));
try {
const target = path.join(tempDir, 'home.json');
const backupDir = path.join(tempDir, 'backups');
const original = { title: 'Eredeti', enabled: true };
const replacement = { title: 'Új', enabled: false };
fs.writeFileSync(target, JSON.stringify(original) + '\n');
const backupFile = backupAndWriteAtomically(target, replacement, backupDir);
assert.deepEqual(JSON.parse(fs.readFileSync(target, 'utf8')), replacement);
assert.deepEqual(JSON.parse(fs.readFileSync(backupFile, 'utf8')), original);
assert.equal(fs.readdirSync(tempDir).some(name => name.endsWith('.tmp')), false);
console.log('Content Editor atomic save test: OK');
} finally {
fs.rmSync(tempDir, { recursive: true, force: true });
}