Spaces:
Runtime error
Runtime error
| import { describe, it, expect } from 'vitest'; | |
| import * as schema from '../schema'; | |
| describe('Database Schema - YouTube Channels', () => { | |
| it('should have youtubeChannels table defined with correct columns', () => { | |
| expect(schema.youtubeChannels).toBeDefined(); | |
| expect(schema.youtubeChannels.channelId).toBeDefined(); | |
| expect(schema.youtubeChannels.syncStatus).toBeDefined(); | |
| }); | |
| it('should have sync_status enum defined', () => { | |
| expect(schema.syncStatusEnum).toBeDefined(); | |
| expect(schema.syncStatusEnum.enumValues).toContain('idle'); | |
| expect(schema.syncStatusEnum.enumValues).toContain('syncing'); | |
| expect(schema.syncStatusEnum.enumValues).toContain('errored'); | |
| }); | |
| }); | |
| describe('Database Schema - Detected Objects', () => { | |
| it('should have detectedObjects table defined with correct columns', () => { | |
| expect(schema.detectedObjects).toBeDefined(); | |
| expect(schema.detectedObjects.category).toBeDefined(); | |
| expect(schema.detectedObjects.status).toBeDefined(); | |
| expect(schema.detectedObjects.confidenceScore).toBeDefined(); | |
| expect(schema.detectedObjects.moderationStatus).toBeDefined(); | |
| expect(schema.detectedObjects.moderatedAt).toBeDefined(); | |
| expect(schema.detectedObjects.moderatedBy).toBeDefined(); | |
| expect(schema.detectedObjects.moderationMetadata).toBeDefined(); | |
| }); | |
| it('should have object_category enum defined', () => { | |
| expect(schema.objectCategory).toBeDefined(); | |
| expect(schema.objectCategory.enumValues).toContain('Tech'); | |
| expect(schema.objectCategory.enumValues).toContain('Fashion'); | |
| }); | |
| it('should have detection_status enum defined', () => { | |
| expect(schema.detectionStatus).toBeDefined(); | |
| expect(schema.detectionStatus.enumValues).toContain('pending_review'); | |
| expect(schema.detectionStatus.enumValues).toContain('flagged'); | |
| }); | |
| it('should have moderation_status enum defined', () => { | |
| expect(schema.moderationStatus).toBeDefined(); | |
| expect(schema.moderationStatus.enumValues).toContain('PENDING'); | |
| expect(schema.moderationStatus.enumValues).toContain('APPROVED'); | |
| expect(schema.moderationStatus.enumValues).toContain('REJECTED'); | |
| }); | |
| }); | |
| describe('Database Schema - Marketplace Matches', () => { | |
| it('should have marketplaceMatches table defined with correct columns', () => { | |
| expect(schema.marketplaceMatches).toBeDefined(); | |
| expect(schema.marketplaceMatches.marketplace).toBeDefined(); | |
| expect(schema.marketplaceMatches.availabilityStatus).toBeDefined(); | |
| expect(schema.marketplaceMatches.price).toBeDefined(); | |
| }); | |
| it('should have marketplace_type enum defined', () => { | |
| expect(schema.marketplaceType).toBeDefined(); | |
| expect(schema.marketplaceType.enumValues).toContain('amazon'); | |
| expect(schema.marketplaceType.enumValues).toContain('ebay'); | |
| expect(schema.marketplaceType.enumValues).toContain('etsy'); | |
| }); | |
| it('should have availability_status enum defined', () => { | |
| expect(schema.availabilityStatus).toBeDefined(); | |
| expect(schema.availabilityStatus.enumValues).toContain('IN_STOCK'); | |
| expect(schema.availabilityStatus.enumValues).toContain('SOLD_OUT'); | |
| expect(schema.availabilityStatus.enumValues).toContain('DISCONTINUED'); | |
| }); | |
| }); | |
| describe('Database Schema - Admin Moderation', () => { | |
| it('should have adminModeration table defined with correct columns', () => { | |
| expect(schema.adminModeration).toBeDefined(); | |
| expect(schema.adminModeration.detectionId).toBeDefined(); | |
| expect(schema.adminModeration.adminId).toBeDefined(); | |
| expect(schema.adminModeration.action).toBeDefined(); | |
| expect(schema.adminModeration.originalValues).toBeDefined(); | |
| }); | |
| it('should have admin_moderation_type enum defined', () => { | |
| expect(schema.adminModerationType).toBeDefined(); | |
| expect(schema.adminModerationType.enumValues).toContain('corrected'); | |
| expect(schema.adminModerationType.enumValues).toContain('marked_incorrect'); | |
| }); | |
| it('should have reason_code enum defined', () => { | |
| expect(schema.reasonCode).toBeDefined(); | |
| expect(schema.reasonCode.enumValues).toContain('wrong_object'); | |
| expect(schema.reasonCode.enumValues).toContain('false_positive'); | |
| }); | |
| }); | |