const assert = require('assert'); const CatML = require('../catml.js'); console.log('🐾 Running CaTML Test Suite...\n'); // Test 1: Tag Translations console.log('Test 1: Basic tag translations'); const source1 = 'Hello world'; const expected1 = '

Hello world

'; assert.strictEqual(CatML.compile(source1), expected1); console.log('āœ“ Passed: Basic tags'); // Test 2: Headings and lists console.log('Test 2: Headings and food bowls'); const source2 = 'Grand MeowTunaSalmon'; const expected2 = '

Grand Meow

'; assert.strictEqual(CatML.compile(source2), expected2); console.log('āœ“ Passed: Headings and lists'); // Test 3: Attributes (catch, prey, scent, breed, tag, fluff) console.log('Test 3: Attribute translation'); const source3 = ''; const compiled3 = CatML.compile(source3); assert(compiled3.includes('Catch!')); assert(compiled4.includes(', , , , ) console.log('Test 5: Full document translation'); const source5 = ` My Cat Page Header Content Footer `.trim(); const compiled5 = CatML.compile(source5); assert(compiled5.includes('')); assert(compiled5.includes('')); assert(compiled5.includes('My Cat Page')); assert(compiled5.includes('')); assert(compiled5.includes('

Header

')); assert(compiled5.includes('
')); assert(compiled5.includes('

Footer

')); assert(compiled5.includes('')); console.log('āœ“ Passed: Full document structure'); // Test 6: Script / Style elements (, ) console.log('Test 6: Script & styles'); const source6 = 'box { color: orange; }console.log("purr");'; const compiled6 = CatML.compile(source6); assert.strictEqual(compiled6, ''); console.log('āœ“ Passed: Styles and scripts'); console.log('\nšŸŽ‰ ALL CaTML TESTS PASSED! Purrfection achieved! 🐱');