start working on the frontend side
This commit is contained in:
85
backend/tests/integration/README.md
Normal file
85
backend/tests/integration/README.md
Normal file
@@ -0,0 +1,85 @@
|
||||
# Integration Tests
|
||||
|
||||
This directory contains integration tests for the Calypso API.
|
||||
|
||||
## Setup
|
||||
|
||||
### 1. Create Test Database (Optional)
|
||||
|
||||
For isolated testing, create a separate test database:
|
||||
|
||||
```bash
|
||||
sudo -u postgres createdb calypso_test
|
||||
sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE calypso_test TO calypso;"
|
||||
```
|
||||
|
||||
### 2. Environment Variables
|
||||
|
||||
Set test database configuration:
|
||||
|
||||
```bash
|
||||
export TEST_DB_HOST=localhost
|
||||
export TEST_DB_PORT=5432
|
||||
export TEST_DB_USER=calypso
|
||||
export TEST_DB_PASSWORD=calypso123
|
||||
export TEST_DB_NAME=calypso_test # or use existing 'calypso' database
|
||||
```
|
||||
|
||||
Or use the existing database:
|
||||
|
||||
```bash
|
||||
export TEST_DB_NAME=calypso
|
||||
export TEST_DB_PASSWORD=calypso123
|
||||
```
|
||||
|
||||
## Running Tests
|
||||
|
||||
### Run All Integration Tests
|
||||
|
||||
```bash
|
||||
cd backend
|
||||
go test ./tests/integration/... -v
|
||||
```
|
||||
|
||||
### Run Specific Test
|
||||
|
||||
```bash
|
||||
go test ./tests/integration/... -run TestHealthEndpoint -v
|
||||
```
|
||||
|
||||
### Run with Coverage
|
||||
|
||||
```bash
|
||||
go test -cover ./tests/integration/... -v
|
||||
```
|
||||
|
||||
## Test Structure
|
||||
|
||||
- `setup.go` - Test database setup and helper functions
|
||||
- `api_test.go` - API endpoint integration tests
|
||||
|
||||
## Test Coverage
|
||||
|
||||
### ✅ Implemented Tests
|
||||
|
||||
1. **TestHealthEndpoint** - Tests enhanced health check endpoint
|
||||
2. **TestLoginEndpoint** - Tests user login with password verification
|
||||
3. **TestLoginEndpoint_WrongPassword** - Tests wrong password rejection
|
||||
4. **TestGetCurrentUser** - Tests authenticated user info retrieval
|
||||
5. **TestListAlerts** - Tests monitoring alerts endpoint
|
||||
|
||||
### ⏳ Future Tests
|
||||
|
||||
- Storage endpoints
|
||||
- SCST endpoints
|
||||
- VTL endpoints
|
||||
- Task management
|
||||
- IAM endpoints
|
||||
|
||||
## Notes
|
||||
|
||||
- Tests use the actual database (test or production)
|
||||
- Tests clean up data after each test run
|
||||
- Tests create test users with proper password hashing
|
||||
- Tests verify authentication and authorization
|
||||
|
||||
Reference in New Issue
Block a user