Files
oib c8be9d7414 feat: add marketplace metrics, privacy features, and service registry endpoints
- Add Prometheus metrics for marketplace API throughput and error rates with new dashboard panels
- Implement confidential transaction models with encryption support and access control
- Add key management system with registration, rotation, and audit logging
- Create services and registry routers for service discovery and management
- Integrate ZK proof generation for privacy-preserving receipts
- Add metrics instru
2025-12-22 10:33:23 +01:00

265 lines
6.4 KiB
JSON

{
"name": "API Compliance Tests",
"level": "bronze",
"description": "Tests for core API compliance",
"tests": [
{
"id": "BR-001",
"name": "Health Check Endpoint",
"description": "Validate health check endpoint returns proper response",
"request": {
"method": "GET",
"path": "/health",
"headers": {
"Accept": "application/json"
}
},
"expected": {
"status": 200,
"headers": {
"Content-Type": "application/json"
},
"body": {
"status": "healthy",
"timestamp": "string",
"version": "string"
}
}
},
{
"id": "BR-002",
"name": "Authentication - Bearer Token",
"description": "Validate bearer token authentication",
"request": {
"method": "GET",
"path": "/api/v1/user/profile",
"headers": {
"Authorization": "Bearer valid-token",
"Accept": "application/json"
}
},
"expected": {
"status": 200,
"headers": {
"Content-Type": "application/json"
},
"body": {
"id": "string",
"email": "string",
"created_at": "string"
}
}
},
{
"id": "BR-003",
"name": "Authentication - Invalid Token",
"description": "Validate proper error for invalid token",
"request": {
"method": "GET",
"path": "/api/v1/user/profile",
"headers": {
"Authorization": "Bearer invalid-token",
"Accept": "application/json"
}
},
"expected": {
"status": 401,
"headers": {
"Content-Type": "application/json"
},
"body": {
"error": "AuthenticationError",
"message": "string"
}
}
},
{
"id": "BR-004",
"name": "Create Job - Valid Request",
"description": "Validate job creation with valid parameters",
"request": {
"method": "POST",
"path": "/api/v1/jobs",
"headers": {
"Authorization": "Bearer valid-token",
"Content-Type": "application/json"
},
"body": {
"service_type": "gpu_compute",
"spec": {
"gpu_type": "A100",
"count": 1,
"duration": 3600
},
"metadata": {
"name": "test-job"
}
}
},
"expected": {
"status": 201,
"headers": {
"Content-Type": "application/json",
"Location": "string"
},
"body": {
"id": "string",
"status": "pending",
"created_at": "string",
"estimated_completion": "string"
}
}
},
{
"id": "BR-005",
"name": "Create Job - Invalid Parameters",
"description": "Validate proper error for invalid job parameters",
"request": {
"method": "POST",
"path": "/api/v1/jobs",
"headers": {
"Authorization": "Bearer valid-token",
"Content-Type": "application/json"
},
"body": {
"service_type": "invalid_service",
"spec": {}
}
},
"expected": {
"status": 400,
"headers": {
"Content-Type": "application/json"
},
"body": {
"error": "ValidationError",
"message": "string",
"details": {
"field": "service_type",
"issue": "string"
}
}
}
},
{
"id": "BR-006",
"name": "Get Job - Valid ID",
"description": "Validate job retrieval with valid ID",
"request": {
"method": "GET",
"path": "/api/v1/jobs/job-123",
"headers": {
"Authorization": "Bearer valid-token",
"Accept": "application/json"
}
},
"expected": {
"status": 200,
"headers": {
"Content-Type": "application/json"
},
"body": {
"id": "string",
"status": "string",
"created_at": "string",
"updated_at": "string",
"spec": "object",
"result": "object|null"
}
}
},
{
"id": "BR-007",
"name": "Get Job - Not Found",
"description": "Validate proper error for non-existent job",
"request": {
"method": "GET",
"path": "/api/v1/jobs/nonexistent",
"headers": {
"Authorization": "Bearer valid-token",
"Accept": "application/json"
}
},
"expected": {
"status": 404,
"headers": {
"Content-Type": "application/json"
},
"body": {
"error": "NotFoundError",
"message": "string"
}
}
},
{
"id": "BR-008",
"name": "List Jobs - With Pagination",
"description": "Validate job listing with pagination",
"request": {
"method": "GET",
"path": "/api/v1/jobs?limit=10&offset=0",
"headers": {
"Authorization": "Bearer valid-token",
"Accept": "application/json"
}
},
"expected": {
"status": 200,
"headers": {
"Content-Type": "application/json"
},
"body": {
"jobs": "array",
"total": "number",
"limit": "number",
"offset": "number",
"has_more": "boolean"
}
}
},
{
"id": "BR-009",
"name": "Error Response Format",
"description": "Validate consistent error response format",
"request": {
"method": "POST",
"path": "/api/v1/invalid-endpoint",
"headers": {
"Authorization": "Bearer valid-token"
}
},
"expected": {
"status": 404,
"headers": {
"Content-Type": "application/json"
},
"body": {
"error": "string",
"message": "string",
"request_id": "string"
}
}
},
{
"id": "BR-010",
"name": "Rate Limit Headers",
"description": "Validate rate limit headers are present",
"request": {
"method": "GET",
"path": "/api/v1/jobs",
"headers": {
"Authorization": "Bearer valid-token"
}
},
"expected": {
"status": 200,
"headers": {
"X-RateLimit-Limit": "string",
"X-RateLimit-Remaining": "string",
"X-RateLimit-Reset": "string"
}
}
}
]
}