remove company name

This commit is contained in:
johnpccd 2025-05-26 18:47:21 +02:00
parent 35a5236bbd
commit a866e5bddc
35 changed files with 179 additions and 183 deletions

View File

@ -7,11 +7,11 @@ CORS_ORIGINS=["*"]
# Firestore settings
FIRESTORE_PROJECT_ID=gen-lang-client-0424120530
FIRESTORE_DATABASE_NAME=sereact-imagedb
FIRESTORE_DATABASE_NAME=contoso-imagedb
FIRESTORE_CREDENTIALS_FILE=firestore-credentials.json
# Google Cloud Storage settings
GCS_BUCKET_NAME=sereact-images
GCS_BUCKET_NAME=contoso-images
GCS_CREDENTIALS_FILE=firestore-credentials.json
# Security settings

View File

@ -1,4 +1,4 @@
Sereact GmbH
Contoso GmbH
Assignment
Image Management API - Coding Challenge

View File

@ -186,11 +186,11 @@ Uses Google's Vertex AI multimodal embedding model for generating high-quality i
# Firestore settings
FIRESTORE_PROJECT_ID=gen-lang-client-0424120530
FIRESTORE_DATABASE_NAME=sereact-imagedb
FIRESTORE_DATABASE_NAME=contoso-imagedb
FIRESTORE_CREDENTIALS_FILE=firestore-credentials.json
# Google Cloud Storage settings
GCS_BUCKET_NAME=sereact-images
GCS_BUCKET_NAME=contoso-images
GCS_CREDENTIALS_FILE=firestore-credentials.json
# Security settings
@ -324,7 +324,7 @@ source venv/Scripts/activate && python scripts/run_tests.py all
## API Modules Architecture
The SEREACT API is organized into the following key modules to ensure separation of concerns and maintainable code:
The CONTOSO API is organized into the following key modules to ensure separation of concerns and maintainable code:
```
src/

View File

@ -1,6 +1,6 @@
# SeReact Frontend Client
# Contoso Frontend Client
A modern, responsive web frontend for the SeReact AI-powered image management platform. This is a pure frontend application that communicates directly with your SeReact backend API.
A modern, responsive web frontend for the Contoso AI-powered image management platform. This is a pure frontend application that communicates directly with your Contoso backend API.
## Features
@ -24,7 +24,7 @@ A modern, responsive web frontend for the SeReact AI-powered image management pl
### Prerequisites
- A running SeReact backend API server
- A running Contoso backend API server
- Modern web browser (Chrome, Firefox, Safari, Edge)
- Web server to serve static files (optional for development)
@ -32,8 +32,8 @@ A modern, responsive web frontend for the SeReact AI-powered image management pl
1. **Download/Clone the frontend files**:
```bash
# If you have the full SeReact repository
cd sereact/client
# If you have the full Contoso repository
cd contoso/client
# Or download just the client folder
```
@ -67,7 +67,7 @@ A modern, responsive web frontend for the SeReact AI-powered image management pl
1. **Configure API Connection**:
- Click "Configure Now" in the welcome dialog
- Enter your SeReact API base URL (e.g., `http://localhost:8000`)
- Enter your Contoso API base URL (e.g., `http://localhost:8000`)
- Enter your API key
- Test the connection
@ -82,7 +82,7 @@ A modern, responsive web frontend for the SeReact AI-powered image management pl
The frontend stores configuration in browser localStorage:
- **API Base URL**: The URL of your SeReact backend (e.g., `http://localhost:8000`)
- **API Base URL**: The URL of your Contoso backend (e.g., `http://localhost:8000`)
- **API Key**: Your authentication key for the backend API
### Environment Variables
@ -176,7 +176,7 @@ For proper routing with hash-based navigation, no special server configuration i
### CORS Configuration
Ensure your SeReact backend API is configured to allow requests from your frontend domain:
Ensure your Contoso backend API is configured to allow requests from your frontend domain:
```python
# In your backend CORS configuration
@ -263,8 +263,8 @@ For issues and questions:
1. Check the browser console for error messages
2. Verify backend API is running and accessible
3. Check network connectivity and CORS configuration
4. Review the SeReact backend documentation
4. Review the Contoso backend documentation
## License
This frontend client is part of the SeReact project. See the main project license for details.
This frontend client is part of the Contoso project. See the main project license for details.

View File

@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SeReact Debug</title>
<title>Contoso Debug</title>
<style>
body { font-family: Arial, sans-serif; margin: 20px; }
button { margin: 5px; padding: 10px; }
@ -12,7 +12,7 @@
</style>
</head>
<body>
<h1>SeReact Debug Page</h1>
<h1>Contoso Debug Page</h1>
<div class="debug">
<h3>Debug Controls</h3>

View File

@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SeReact - AI-Powered Image Management</title>
<title>Contoso - AI-Powered Image Management</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet">
<link href="styles.css" rel="stylesheet">
@ -13,7 +13,7 @@
<nav class="navbar navbar-expand-lg navbar-dark bg-primary">
<div class="container">
<a class="navbar-brand" href="#home" onclick="showPage('home'); return false;">
<i class="fas fa-search me-2"></i>SeReact
<i class="fas fa-search me-2"></i>Contoso
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
<span class="navbar-toggler-icon"></span>
@ -72,7 +72,7 @@
<div class="row">
<div class="col-12">
<div class="jumbotron bg-light p-5 rounded">
<h1 class="display-4">Welcome to SeReact</h1>
<h1 class="display-4">Welcome to Contoso</h1>
<p class="lead">AI-powered image management and semantic search platform</p>
<hr class="my-4">
<p>Upload images, manage your team, and search using natural language queries.</p>
@ -127,7 +127,7 @@
<label for="apiBaseUrl" class="form-label">API Base URL</label>
<input type="url" class="form-control" id="apiBaseUrl"
placeholder="http://localhost:8000" required>
<div class="form-text">The base URL of your SeReact API server</div>
<div class="form-text">The base URL of your Contoso API server</div>
</div>
<div class="mb-3">
<label for="apiKey" class="form-label">API Key</label>

View File

@ -10,7 +10,7 @@ const app = {
// Initialize the application
document.addEventListener('DOMContentLoaded', () => {
console.log('App.js DOMContentLoaded fired');
console.log('SeReact Frontend v' + app.version + ' - Initializing...');
console.log('Contoso Frontend v' + app.version + ' - Initializing...');
// Initialize configuration
initializeApp();
@ -22,7 +22,7 @@ document.addEventListener('DOMContentLoaded', () => {
checkInitialConfiguration();
app.initialized = true;
console.log('SeReact Frontend - Initialization complete');
console.log('Contoso Frontend - Initialization complete');
});
// Initialize the application
@ -98,7 +98,7 @@ function showWelcomeMessage() {
const modalBody = `
<div class="text-center mb-4">
<i class="fas fa-rocket fa-3x text-primary mb-3"></i>
<h4>Welcome to SeReact!</h4>
<h4>Welcome to Contoso!</h4>
<p class="lead">AI-powered image management and semantic search platform</p>
</div>
@ -135,7 +135,7 @@ function showWelcomeMessage() {
</button>
`;
const modal = createModal('welcomeModal', 'Welcome to SeReact', modalBody, modalFooter);
const modal = createModal('welcomeModal', 'Welcome to Contoso', modalBody, modalFooter);
modal.show();
}
@ -366,10 +366,10 @@ window.addEventListener('unhandledrejection', (e) => {
});
// Export app object for debugging
window.SeReactApp = app;
window.ContosoApp = app;
// Add helpful console messages
console.log('%cSeReact Frontend', 'color: #0d6efd; font-size: 24px; font-weight: bold;');
console.log('%cContoso Frontend', 'color: #0d6efd; font-size: 24px; font-weight: bold;');
console.log('%cVersion: ' + app.version, 'color: #6c757d; font-size: 14px;');
console.log('%cKeyboard Shortcuts:', 'color: #198754; font-size: 16px; font-weight: bold;');
console.log('%c Ctrl+K: Search', 'color: #6c757d;');

View File

@ -114,11 +114,6 @@ async function displaySearchResults(response, query) {
<div class="loading-spinner"></div>
</div>
</div>
<div class="position-absolute top-0 end-0 m-2">
<span class="badge bg-primary similarity-score">
${Math.round(similarity * 100)}% match
</span>
</div>
</div>
<div class="card-body">
<h6 class="card-title">${escapeHtml(truncateText(image.description || 'Untitled', 60))}</h6>
@ -274,7 +269,7 @@ async function shareSearchResults(query) {
if (navigator.share) {
try {
await navigator.share({
title: 'SeReact Search Results',
title: 'Contoso Search Results',
text: text,
url: url
});

View File

@ -43,8 +43,8 @@ function showPage(pageId) {
updateNavActiveState(pageId);
// Update app state
if (window.SeReactApp) {
window.SeReactApp.currentPage = pageId;
if (window.ContosoApp) {
window.ContosoApp.currentPage = pageId;
}
app.currentPage = pageId; // Also update the local app state
@ -329,8 +329,8 @@ function initializeUI() {
console.log('Initial page:', initialPage);
// Set initial app state
if (window.SeReactApp) {
window.SeReactApp.currentPage = initialPage;
if (window.ContosoApp) {
window.ContosoApp.currentPage = initialPage;
}
showPage(initialPage);

View File

@ -1,4 +1,4 @@
# SeReact Frontend Client
# Contoso Frontend Client
#
# This is a pure frontend application that runs in the browser.
# No Python dependencies are required.

View File

@ -1,6 +1,6 @@
#!/usr/bin/env python3
"""
Simple HTTP server for serving the SeReact frontend during development.
Simple HTTP server for serving the Contoso frontend during development.
"""
import http.server
@ -44,7 +44,7 @@ def main():
with socketserver.TCPServer((HOST, PORT), CustomHTTPRequestHandler) as httpd:
server_url = f"http://{HOST}:{PORT}"
print(f"🚀 SeReact Frontend Development Server")
print(f"🚀 Contoso Frontend Development Server")
print(f"📁 Serving files from: {os.getcwd()}")
print(f"🌐 Server running at: {server_url}")
print(f"📱 Open in browser: {server_url}")
@ -69,7 +69,7 @@ def main():
httpd.serve_forever()
except KeyboardInterrupt:
print("\n🛑 Server stopped by user")
print("👋 Thanks for using SeReact!")
print("👋 Thanks for using Contoso!")
if __name__ == "__main__":
main()

View File

@ -1,4 +1,4 @@
/* Custom styles for SeReact Frontend */
/* Custom styles for Contoso Frontend */
:root {
--primary-color: #0d6efd;

View File

@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SeReact Test</title>
<title>Contoso Test</title>
<style>
.page { display: none; padding: 20px; border: 1px solid #ccc; margin: 10px; }
.page.active { display: block; }
@ -11,7 +11,7 @@
</style>
</head>
<body>
<h1>SeReact Navigation Test</h1>
<h1>Contoso Navigation Test</h1>
<div>
<button onclick="showPage('home')">Home</button>

View File

@ -44,7 +44,7 @@ else:
storage_client = storage.Client()
# Get bucket name from environment variable
GCS_BUCKET_NAME = os.environ.get('GCS_BUCKET_NAME', 'sereact-images')
GCS_BUCKET_NAME = os.environ.get('GCS_BUCKET_NAME', 'contoso-images')
# Initialize Qdrant
QDRANT_HOST = os.environ.get('QDRANT_HOST', 'localhost')

View File

@ -2,9 +2,9 @@
set -e
# Configuration
IMAGE_NAME="sereact-api"
IMAGE_NAME="contoso-api"
REGION="us-central1"
SERVICE_NAME="sereact"
SERVICE_NAME="contoso"
# Get project ID from terraform.tfvars if it exists, otherwise use gcloud
if [ -f "$(dirname "$0")/terraform/terraform.tfvars" ]; then

View File

@ -0,0 +1 @@
{"ID":"f7ebd466-aa1e-1c15-bedf-0f9c92044463","Operation":"OperationTypeApply","Info":"","Who":"DESKTOP\\habal@Desktop","Version":"1.10.1","Created":"2025-05-26T16:46:06.4288884Z","Path":"terraform.tfstate"}

View File

@ -50,11 +50,11 @@ resource "google_firestore_database" "database" {
}
# Container Registry - no explicit resource needed, just enable the API
# You'll push images to gcr.io/${var.project_id}/sereact-api
# You'll push images to gcr.io/${var.project_id}/contoso-api
# Cloud Run service
resource "google_cloud_run_service" "sereact" {
name = "sereact"
resource "google_cloud_run_service" "contoso" {
name = "contoso"
location = var.region
metadata {
@ -77,7 +77,7 @@ resource "google_cloud_run_service" "sereact" {
spec {
containers {
# Use our optimized image
image = "gcr.io/${var.project_id}/sereact-api:${var.image_tag}"
image = "gcr.io/${var.project_id}/contoso-api:${var.image_tag}"
ports {
container_port = 8000
@ -154,8 +154,8 @@ resource "google_cloud_run_service" "sereact" {
# Make the Cloud Run service publicly accessible
resource "google_cloud_run_service_iam_member" "public_access" {
service = google_cloud_run_service.sereact.name
location = google_cloud_run_service.sereact.location
service = google_cloud_run_service.contoso.name
location = google_cloud_run_service.contoso.location
role = "roles/run.invoker"
member = "allUsers"
}

View File

@ -1,5 +1,5 @@
output "cloud_run_url" {
value = google_cloud_run_service.sereact.status[0].url
value = google_cloud_run_service.contoso.status[0].url
description = "The URL of the deployed Cloud Run service"
}
@ -14,7 +14,7 @@ output "firestore_database_id" {
}
output "container_registry_url" {
value = "gcr.io/${var.project_id}/sereact"
value = "gcr.io/${var.project_id}/contoso"
description = "The URL of the Container Registry repository"
}
@ -63,7 +63,7 @@ output "cloud_run_qdrant_host_internal" {
output "deployment_summary" {
value = {
cloud_run_url = google_cloud_run_service.sereact.status[0].url
cloud_run_url = google_cloud_run_service.contoso.status[0].url
qdrant_endpoint = "http://${google_compute_instance.vector_db_vm.network_interface[0].access_config[0].nat_ip}:6333"
qdrant_host_ip = google_compute_instance.vector_db_vm.network_interface[0].access_config[0].nat_ip
firestore_database = var.firestore_db_name

View File

@ -10,7 +10,7 @@ resource "google_pubsub_topic" "image_processing" {
labels = {
environment = var.environment
service = "sereact"
service = "contoso"
component = "image-processing"
}
}
@ -21,7 +21,7 @@ resource "google_pubsub_topic" "image_processing_dlq" {
labels = {
environment = var.environment
service = "sereact"
service = "contoso"
component = "image-processing-dlq"
}
}
@ -37,7 +37,7 @@ resource "google_pubsub_subscription" "image_processing_dlq" {
labels = {
environment = var.environment
service = "sereact"
service = "contoso"
component = "image-processing-dlq"
}
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -2,7 +2,7 @@ project_id = "your-gcp-project-id"
region = "us-central1"
zone = "us-central1-a"
storage_bucket_name = "your-app-storage-bucket"
firestore_db_name = "sereact-imagedb"
firestore_db_name = "contoso-imagedb"
# Vector Database Configuration
qdrant_api_key = "your-secure-api-key-here" # Optional: leave empty for no authentication

View File

@ -23,7 +23,7 @@ variable "storage_bucket_name" {
variable "firestore_db_name" {
description = "The name of the Firestore database"
type = string
default = "sereact-imagedb"
default = "contoso-imagedb"
}
variable "environment" {

View File

@ -1,6 +1,6 @@
# VM instance for vector database
resource "google_compute_instance" "vector_db_vm" {
name = "sereact-vector-db"
name = "contoso-vector-db"
machine_type = "e2-standard-2" # 2 vCPUs, 8GB RAM
zone = var.zone

View File

@ -1,6 +1,6 @@
# Build and Deployment Scripts
This directory contains scripts for building and deploying the Sereact API application.
This directory contains scripts for building and deploying the Contoso API application.
## Prerequisites
@ -12,7 +12,7 @@ This directory contains scripts for building and deploying the Sereact API appli
### Build Script (`build.sh`)
Builds the Docker image for the Sereact API.
Builds the Docker image for the Contoso API.
**Usage:**
```bash
@ -30,7 +30,7 @@ REGISTRY=gcr.io/my-project ./scripts/build.sh
```
**Environment Variables:**
- `IMAGE_NAME`: Name for the Docker image (default: "sereact-api")
- `IMAGE_NAME`: Name for the Docker image (default: "contoso-api")
- `IMAGE_TAG`: Tag for the Docker image (default: "latest")
- `REGISTRY`: Container registry to use (default: empty, using DockerHub)
@ -54,7 +54,7 @@ DEPLOY_TO_CLOUD_RUN=true PROJECT_ID=my-project-id REGION=us-west1 SERVICE_NAME=m
All variables from the build script, plus:
- `PROJECT_ID`: Google Cloud project ID (required for Cloud Run deployment)
- `REGION`: Google Cloud region (default: "us-central1")
- `SERVICE_NAME`: Name for the Cloud Run service (default: "sereact-api")
- `SERVICE_NAME`: Name for the Cloud Run service (default: "contoso-api")
### Cloud Run Deployment Script (`deploy-to-cloud-run.sh`)
@ -76,7 +76,7 @@ PROJECT_ID=my-project-id REGION=us-west1 IMAGE_TAG=v1.0.0 ./scripts/deploy-to-cl
- `PROJECT_ID`: Google Cloud project ID (required)
- `REGION`: Google Cloud region (default: "us-central1")
- `SERVICE_CONFIG`: Path to the service configuration file (default: "deployment/cloud-run/service.yaml")
- `IMAGE_NAME`: Name for the Docker image (default: "sereact-api")
- `IMAGE_NAME`: Name for the Docker image (default: "contoso-api")
- `IMAGE_TAG`: Tag for the Docker image (default: "latest")
- `REGISTRY`: Container registry to use (default: "gcr.io")
- `BUILD`: Set to "true" to build the image before deployment (default: "false")
@ -84,7 +84,7 @@ PROJECT_ID=my-project-id REGION=us-west1 IMAGE_TAG=v1.0.0 ./scripts/deploy-to-cl
### Frontend Client Script (`client.sh`)
Manages the SeReact frontend client development, building, and deployment.
Manages the Contoso frontend client development, building, and deployment.
**Usage:**
```bash
@ -170,13 +170,13 @@ DEPLOY_TARGET=netlify ./scripts/client.sh deploy
# Scripts Documentation
This directory contains utility scripts for the SEREACT application.
This directory contains utility scripts for the CONTOSO application.
## Database Seeding Scripts
### `seed_firestore.py`
This script initializes and seeds a Google Cloud Firestore database with initial data for the SEREACT application. It creates teams, users, API keys, and sample image metadata.
This script initializes and seeds a Google Cloud Firestore database with initial data for the CONTOSO application. It creates teams, users, API keys, and sample image metadata.
#### Requirements
@ -195,9 +195,9 @@ This script initializes and seeds a Google Cloud Firestore database with initial
2. If not using application default credentials, create a service account key file:
```bash
gcloud iam service-accounts create sereact-app
gcloud projects add-iam-policy-binding YOUR_PROJECT_ID --member="serviceAccount:sereact-app@YOUR_PROJECT_ID.iam.gserviceaccount.com" --role="roles/datastore.user"
gcloud iam service-accounts keys create credentials.json --iam-account=sereact-app@YOUR_PROJECT_ID.iam.gserviceaccount.com
gcloud iam service-accounts create contoso-app
gcloud projects add-iam-policy-binding YOUR_PROJECT_ID --member="serviceAccount:contoso-app@YOUR_PROJECT_ID.iam.gserviceaccount.com" --role="roles/datastore.user"
gcloud iam service-accounts keys create credentials.json --iam-account=contoso-app@YOUR_PROJECT_ID.iam.gserviceaccount.com
```
3. Set environment variables:
@ -233,13 +233,13 @@ python scripts/seed_firestore.py
The script will create the following data:
1. **Teams**:
- Sereact Development
- Contoso Development
- Marketing Team
- Customer Support
2. **Users**:
- Admin User (team: Sereact Development)
- Developer User (team: Sereact Development)
- Admin User (team: Contoso Development)
- Developer User (team: Contoso Development)
- Marketing User (team: Marketing Team)
- Support User (team: Customer Support)

View File

@ -2,7 +2,7 @@
set -e
# Set defaults
IMAGE_NAME=${IMAGE_NAME:-"sereact-api"}
IMAGE_NAME=${IMAGE_NAME:-"contoso-api"}
IMAGE_TAG=${IMAGE_TAG:-"latest"}
PROJECT_ID=${PROJECT_ID:-"gen-lang-client-0424120530"}

View File

@ -25,7 +25,7 @@ print_color() {
print_header() {
echo
print_color $CYAN "🚀 SeReact Frontend Client Manager"
print_color $CYAN "🚀 Contoso Frontend Client Manager"
echo
}

View File

@ -1,6 +1,6 @@
#!/usr/bin/env python3
"""
Test runner script for SEREACT API
Test runner script for CONTOSO API
This script provides a convenient way to run different types of tests
with proper environment setup and reporting.
@ -159,7 +159,7 @@ def run_coverage_tests():
def main():
"""Main function"""
parser = argparse.ArgumentParser(description="Run SEREACT API tests")
parser = argparse.ArgumentParser(description="Run CONTOSO API tests")
parser.add_argument(
"test_type",
choices=["unit", "integration", "e2e", "all", "coverage"],
@ -173,7 +173,7 @@ def main():
args = parser.parse_args()
print("🧪 SEREACT API Test Runner")
print("🧪 CONTOSO API Test Runner")
print("=" * 50)
# Check environment unless skipped

View File

@ -141,7 +141,7 @@ async def seed_teams():
teams_data = [
{
"name": "Sereact Development",
"name": "Contoso Development",
"description": "Internal development team"
},
{
@ -169,23 +169,23 @@ async def seed_users(team_ids):
users_data = [
{
"email": "admin@sereact.com",
"email": "admin@contoso.com",
"name": "Admin User",
"team_id": team_ids[0],
"is_admin": True
},
{
"email": "developer@sereact.com",
"email": "developer@contoso.com",
"name": "Developer User",
"team_id": team_ids[0]
},
{
"email": "marketing@sereact.com",
"email": "marketing@contoso.com",
"name": "Marketing User",
"team_id": team_ids[1]
},
{
"email": "support@sereact.com",
"email": "support@contoso.com",
"name": "Support User",
"team_id": team_ids[2]
}

View File

@ -1,6 +1,6 @@
#!/bin/bash
echo "Stopping Sereact API server..."
echo "Stopping Contoso API server..."
# Find and kill uvicorn processes
PIDS=$(ps aux | grep "uvicorn main:app" | grep -v grep | awk '{print $2}')

View File

@ -5,7 +5,7 @@ from pydantic import AnyHttpUrl, field_validator
class Settings(BaseSettings):
# Project settings
PROJECT_NAME: str = "SEREACT - Secure Image Management API"
PROJECT_NAME: str = "CONTOSO - Secure Image Management API"
API_V1_STR: str = "/api/v1"
# Environment
@ -66,7 +66,7 @@ class Settings(BaseSettings):
# Firestore settings
FIRESTORE_PROJECT_ID: str = os.getenv("FIRESTORE_PROJECT_ID", "")
FIRESTORE_DATABASE_NAME: str = os.getenv("FIRESTORE_DATABASE_NAME", "sereact-db")
FIRESTORE_DATABASE_NAME: str = os.getenv("FIRESTORE_DATABASE_NAME", "contoso-db")
FIRESTORE_CREDENTIALS_FILE: str = os.getenv("FIRESTORE_CREDENTIALS_FILE", "firestore-credentials.json")
# Google Cloud Storage settings

View File

@ -39,7 +39,7 @@ async def test_create_collection(client: TestClient, admin_api_key: tuple, test_
"description": "A collection for testing images",
"metadata": {
"category": "test",
"project": "sereact"
"project": "contoso"
}
}
)
@ -480,7 +480,7 @@ async def test_collection_export(client: TestClient, admin_api_key: tuple):
json={
"name": "Export Collection",
"description": "Collection for export testing",
"metadata": {"category": "test", "project": "sereact"}
"metadata": {"category": "test", "project": "contoso"}
}
)
collection_id = collection_response.json()["id"]

View File

@ -1,5 +1,5 @@
"""
Global test configuration and fixtures for SEREACT tests.
Global test configuration and fixtures for CONTOSO tests.
This file provides shared fixtures and configuration for:
- Unit tests (with mocked dependencies)

View File

@ -1 +1 @@
"""Integration tests package for SEREACT database layer"""
"""Integration tests package for CONTOSO database layer"""

View File

@ -1,5 +1,5 @@
"""
End-to-End Tests for SEREACT API
End-to-End Tests for CONTOSO API
These tests cover the complete user workflows described in the README:
1. Use pre-seeded API key for authentication