feat: Integrate TestDataTracker into all test suites

This commit is contained in:
gpt-engineer-app[bot]
2025-10-30 15:08:33 +00:00
parent 6a30a9e568
commit 1874b6ffbd
5 changed files with 80 additions and 38 deletions

View File

@@ -7,6 +7,7 @@
import { supabase } from '@/integrations/supabase/client';
import type { TestSuite, TestResult } from '../testRunner';
import { TestDataTracker } from '../TestDataTracker';
export const versioningTestSuite: TestSuite = {
id: 'versioning',
@@ -19,6 +20,7 @@ export const versioningTestSuite: TestSuite = {
description: 'Verifies version 1 is created automatically when entity is created',
run: async (): Promise<TestResult> => {
const startTime = Date.now();
const tracker = new TestDataTracker();
let parkId: string | null = null;
try {
@@ -114,6 +116,7 @@ export const versioningTestSuite: TestSuite = {
description: 'Verifies version 2 is created when entity is updated',
run: async (): Promise<TestResult> => {
const startTime = Date.now();
const tracker = new TestDataTracker();
let parkId: string | null = null;
try {
@@ -203,8 +206,10 @@ export const versioningTestSuite: TestSuite = {
timestamp: new Date().toISOString()
};
} finally {
if (parkId) {
await supabase.from('parks').delete().eq('id', parkId);
await tracker.cleanup();
const remaining = await tracker.verifyCleanup();
if (remaining.length > 0) {
console.warn('version-001 cleanup incomplete:', remaining);
}
}
}
@@ -215,6 +220,7 @@ export const versioningTestSuite: TestSuite = {
description: 'Tests that rollback_to_version requires moderator role',
run: async (): Promise<TestResult> => {
const startTime = Date.now();
const tracker = new TestDataTracker();
let parkId: string | null = null;
try {
@@ -309,8 +315,10 @@ export const versioningTestSuite: TestSuite = {
timestamp: new Date().toISOString()
};
} finally {
if (parkId) {
await supabase.from('parks').delete().eq('id', parkId);
await tracker.cleanup();
const remaining = await tracker.verifyCleanup();
if (remaining.length > 0) {
console.warn('version-002 cleanup incomplete:', remaining);
}
}
}
@@ -321,6 +329,7 @@ export const versioningTestSuite: TestSuite = {
description: 'Tests end-to-end rollback with version 3 creation',
run: async (): Promise<TestResult> => {
const startTime = Date.now();
const tracker = new TestDataTracker();
let parkId: string | null = null;
try {
@@ -469,8 +478,10 @@ export const versioningTestSuite: TestSuite = {
timestamp: new Date().toISOString()
};
} finally {
if (parkId) {
await supabase.from('parks').delete().eq('id', parkId);
await tracker.cleanup();
const remaining = await tracker.verifyCleanup();
if (remaining.length > 0) {
console.warn('version-003 cleanup incomplete:', remaining);
}
}
}