normogen/backend/tests/medication_tests.rs
goose e1ef96b9b0
Some checks failed
Lint and Build / Lint (push) Failing after 1m35s
Lint and Build / Build (push) Has been skipped
Lint and Build / Docker Build (push) Has been skipped
fix(clippy): resolve all clippy warnings
- Add #![allow(dead_code)] to modules with future features
- Fix trailing whitespace in main.rs
- Remove unused imports (Claims, ObjectId, Deserialize, Serialize)
- Fix unnecessary map_err in health_stats.rs
- Add allow attributes for experimental and redundant code
- Fix redundant pattern matching in health.rs
2026-03-12 09:03:38 -03:00

61 lines
1.8 KiB
Rust

// Basic medication integration tests
// These tests verify the medication endpoints work correctly
// Note: These tests require MongoDB to be running
// Run with: cargo test --test medication_tests
#[cfg(test)]
mod medication_tests {
use reqwest::Client;
use serde_json::json;
const BASE_URL: &str = "http://localhost:3000";
#[tokio::test]
async fn test_create_medication_requires_auth() {
let client = Client::new();
let response = client
.post(format!("{}/api/medications", BASE_URL))
.json(&json!({
"profile_id": "test-profile",
"name": "Test Medication",
"dosage": "10mg",
"frequency": "daily"
}))
.send()
.await
.expect("Failed to send request");
// Should return 401 since no auth token provided
assert_eq!(response.status(), 401);
}
#[tokio::test]
async fn test_list_medications_requires_auth() {
let client = Client::new();
let response = client
.get(format!("{}/api/medications", BASE_URL))
.send()
.await
.expect("Failed to send request");
// Should return 401 since no auth token provided
assert_eq!(response.status(), 401);
}
#[tokio::test]
async fn test_get_medication_requires_auth() {
let client = Client::new();
let response = client
.get(format!(
"{}/api/medications/507f1f77bcf86cd799439011",
BASE_URL
))
.send()
.await
.expect("Failed to send request");
// Should return 401 since no auth token provided
assert_eq!(response.status(), 401);
}
}