#!/usr/bin/env node const assert = require('assert/strict'); process.env.CMS_USER = 'test-editor'; process.env.CMS_PASS = 'not-a-real-secret'; const { hasValidCredentials, hasValidCsrfToken, securityConfigIsValid, csrfToken, } = require('../content-editor'); const authorization = Buffer.from('test-editor:not-a-real-secret').toString('base64'); assert.equal(securityConfigIsValid(), true); assert.equal(hasValidCredentials({ headers: { authorization: `Basic ${authorization}` } }), true); assert.equal(hasValidCredentials({ headers: { authorization: 'Basic invalid' } }), false); assert.equal(hasValidCredentials({ headers: {} }), false); assert.equal(hasValidCsrfToken({ headers: { 'x-csrf-token': csrfToken } }), true); assert.equal(hasValidCsrfToken({ headers: { 'x-csrf-token': 'invalid-token' } }), false); assert.equal(hasValidCsrfToken({ headers: {} }), false); console.log('Content Editor security guard test: OK');