codi-test-framework
Advanced tools
Comparing version 0.0.26 to 0.0.27
@@ -5,2 +5,2 @@ #!/usr/bin/env bun | ||
runCLI(); | ||
await runCLI(); |
{ | ||
"name": "codi-test-framework", | ||
"version": "0.0.26", | ||
"version": "0.0.27", | ||
"description": "A simple test framework for JavaScript", | ||
@@ -25,2 +25,2 @@ "main": "src/testRunner.js", | ||
} | ||
} | ||
} |
import fs from 'fs'; | ||
import path from 'path'; | ||
import chalk from 'chalk'; | ||
import figlet from 'figlet'; | ||
import assertions from './assertions/_assertions.js'; | ||
import { excludePattern } from './util/regex.js'; | ||
// Assertion functions | ||
@@ -17,3 +16,3 @@ export const assertEqual = assertions.assertEqual; | ||
let testResults = []; | ||
let version = 'v0.0.26'; | ||
let version = 'v0.0.27'; | ||
@@ -69,5 +68,9 @@ export async function describe(description, callback) { | ||
// Function to run all test files in a directory | ||
export async function runTests(testDirectory, returnResults = false) { | ||
export async function runTests(testDirectory, returnResults = false, codiConfig) { | ||
// Read all files in the test directory | ||
const testFiles = fs.readdirSync(testDirectory, { recursive: true }).filter(file => file.endsWith('.mjs')); | ||
const matcher = excludePattern(codiConfig.excludeDirectories); | ||
console.log(matcher); | ||
let testFiles = fs.readdirSync(testDirectory, { recursive: true }).filter(file => file.endsWith('.mjs')); | ||
console.log(testFiles); | ||
console.log(testFiles.filter(matcher)); | ||
@@ -141,3 +144,3 @@ console.log(chalk.bold.magenta(`\nRunning tests in directory: ${chalk.underline(testDirectory)}`)); | ||
// CLI function | ||
export function runCLI() { | ||
export async function runCLI() { | ||
const testDirectory = process.argv[2]; | ||
@@ -147,2 +150,17 @@ const returnResults = process.argv.includes('--returnResults'); | ||
let codiConfig = {}; | ||
try { | ||
const currentDir = process.cwd(); | ||
const codiFilePath = path.join(currentDir, 'codi.json'); | ||
// await fs.access(codiFilePath); | ||
const codiFileContent = fs.readFileSync(codiFilePath, 'utf-8'); | ||
codiConfig = JSON.parse(codiFileContent); | ||
} | ||
catch (err) { | ||
console.log(err); | ||
} | ||
if (returnVersion) { | ||
@@ -162,4 +180,5 @@ console.log(chalk.blue(`🐶 Woof! Woof!: ${chalk.green(version)}`)); | ||
runTests(testDirectory, returnResults); | ||
console.log(codiConfig); | ||
runTests(testDirectory, returnResults, codiConfig); | ||
} |
17360
19
261