50 lines
1.6 KiB
JavaScript
50 lines
1.6 KiB
JavaScript
import db from "./src/lib/db.js";
|
|
import {
|
|
createProjectTask,
|
|
updateProjectTaskStatus,
|
|
} from "./src/lib/queries/tasks.js";
|
|
import { getNotesByTaskId } from "./src/lib/queries/notes.js";
|
|
|
|
console.log("Testing automatic logging system...\n");
|
|
|
|
// Test 1: Create a new task and check if system note is created
|
|
console.log("Test 1: Creating a new task...");
|
|
try {
|
|
const result = createProjectTask({
|
|
project_id: 1, // Assuming project ID 1 exists
|
|
custom_task_name: "Test Task for Logging",
|
|
custom_description: "Testing automatic note creation",
|
|
custom_max_wait_days: 7,
|
|
priority: "high",
|
|
status: "pending",
|
|
});
|
|
|
|
const taskId = result.lastInsertRowid;
|
|
console.log(`✓ Task created with ID: ${taskId}`);
|
|
|
|
// Check if system note was created
|
|
const notes = getNotesByTaskId(taskId);
|
|
console.log(`✓ Notes found: ${notes.length}`);
|
|
console.log("Notes:", notes);
|
|
|
|
// Test 2: Update task status and check if system note is created
|
|
console.log("\nTest 2: Updating task status...");
|
|
updateProjectTaskStatus(taskId, "in_progress");
|
|
console.log("✓ Task status updated to in_progress");
|
|
|
|
// Check if new system note was created
|
|
const updatedNotes = getNotesByTaskId(taskId);
|
|
console.log(`✓ Notes after status update: ${updatedNotes.length}`);
|
|
console.log("Updated notes:", updatedNotes);
|
|
|
|
// Clean up - delete test task
|
|
console.log("\nCleaning up test data...");
|
|
db.prepare("DELETE FROM notes WHERE task_id = ?").run(taskId);
|
|
db.prepare("DELETE FROM project_tasks WHERE id = ?").run(taskId);
|
|
console.log("✓ Test data cleaned up");
|
|
} catch (error) {
|
|
console.error("❌ Error during testing:", error);
|
|
}
|
|
|
|
console.log("\nTest completed.");
|