feat: API route GET /api/products/search (TDD)

Implémentation test-driven du endpoint de recherche de produits par référence.
- Tests unitaires complets validant les cas nominaux et d'erreur
- Validation du paramètre ref avec gestion des chaînes vides
- Intégration avec searchProductByRef de lib/shopify
- Gestion appropriée des erreurs HTTP (400, 500)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-08 17:15:58 +02:00
parent 53008d1d43
commit c9422be78e
2 changed files with 71 additions and 0 deletions
+18
View File
@@ -0,0 +1,18 @@
import { NextRequest, NextResponse } from 'next/server'
import { searchProductByRef } from '@/lib/shopify'
export async function GET(req: NextRequest) {
const ref = req.nextUrl.searchParams.get('ref')
if (!ref || ref.trim() === '') {
return NextResponse.json({ error: 'Paramètre ref requis' }, { status: 400 })
}
try {
const result = await searchProductByRef(ref.trim())
return NextResponse.json(result)
} catch (err) {
const message = err instanceof Error ? err.message : 'Erreur inconnue'
return NextResponse.json({ error: message }, { status: 500 })
}
}