cleanup
This commit is contained in:
@@ -2,7 +2,7 @@ mod common;
|
||||
|
||||
use anyhow::Result;
|
||||
use axum::http::StatusCode;
|
||||
use common::{acquire_db_lock, body_to_vec, TestApp, UploadExtras};
|
||||
use common::{acquire_db_lock, body_to_vec, ApiErrorResponse, TestApp, UploadExtras};
|
||||
use serde::{Deserialize, Serialize};
|
||||
use serde_json::{json, Value};
|
||||
use uuid::Uuid;
|
||||
@@ -97,13 +97,6 @@ struct AnalyzeJobPayload {
|
||||
force: bool,
|
||||
}
|
||||
|
||||
#[derive(Deserialize)]
|
||||
struct ErrorResponse {
|
||||
error: String,
|
||||
#[serde(default)]
|
||||
code: Option<String>,
|
||||
}
|
||||
|
||||
#[derive(Deserialize)]
|
||||
struct FolderResponse {
|
||||
folder: FolderInfo,
|
||||
@@ -1062,7 +1055,7 @@ async fn patch_document_updates_title_and_handles_conflict() -> Result<()> {
|
||||
.await?;
|
||||
assert_eq!(conflict.status(), StatusCode::CONFLICT);
|
||||
let conflict_body = body_to_vec(conflict.into_body()).await?;
|
||||
let conflict_json: ErrorResponse = serde_json::from_slice(&conflict_body)?;
|
||||
let conflict_json: ApiErrorResponse = serde_json::from_slice(&conflict_body)?;
|
||||
assert_eq!(conflict_json.code.as_deref(), Some("duplicate_filename"));
|
||||
|
||||
app.cleanup().await?;
|
||||
@@ -1244,7 +1237,7 @@ async fn patch_document_validation_errors() -> Result<()> {
|
||||
.await?;
|
||||
assert_eq!(empty_title.status(), StatusCode::BAD_REQUEST);
|
||||
let title_body = body_to_vec(empty_title.into_body()).await?;
|
||||
let title_error: ErrorResponse = serde_json::from_slice(&title_body)?;
|
||||
let title_error: ApiErrorResponse = serde_json::from_slice(&title_body)?;
|
||||
assert_eq!(title_error.error, "title must not be empty");
|
||||
|
||||
let empty_issued = app
|
||||
@@ -1256,7 +1249,7 @@ async fn patch_document_validation_errors() -> Result<()> {
|
||||
.await?;
|
||||
assert_eq!(empty_issued.status(), StatusCode::BAD_REQUEST);
|
||||
let issued_body = body_to_vec(empty_issued.into_body()).await?;
|
||||
let issued_error: ErrorResponse = serde_json::from_slice(&issued_body)?;
|
||||
let issued_error: ApiErrorResponse = serde_json::from_slice(&issued_body)?;
|
||||
assert_eq!(issued_error.error, "issued_at must not be empty");
|
||||
|
||||
let invalid_merge = app
|
||||
@@ -1272,7 +1265,7 @@ async fn patch_document_validation_errors() -> Result<()> {
|
||||
.await?;
|
||||
assert_eq!(invalid_merge.status(), StatusCode::BAD_REQUEST);
|
||||
let merge_body = body_to_vec(invalid_merge.into_body()).await?;
|
||||
let merge_error: ErrorResponse = serde_json::from_slice(&merge_body)?;
|
||||
let merge_error: ApiErrorResponse = serde_json::from_slice(&merge_body)?;
|
||||
assert_eq!(
|
||||
merge_error.error,
|
||||
"metadata value must be a JSON object when replace is false"
|
||||
@@ -1308,7 +1301,7 @@ async fn patch_document_validation_errors() -> Result<()> {
|
||||
.await?;
|
||||
assert_eq!(merge_after_scalar.status(), StatusCode::BAD_REQUEST);
|
||||
let merge_after_body = body_to_vec(merge_after_scalar.into_body()).await?;
|
||||
let merge_after_error: ErrorResponse = serde_json::from_slice(&merge_after_body)?;
|
||||
let merge_after_error: ApiErrorResponse = serde_json::from_slice(&merge_after_body)?;
|
||||
assert_eq!(
|
||||
merge_after_error.error,
|
||||
"existing metadata is not an object; set replace=true to overwrite"
|
||||
@@ -1323,7 +1316,7 @@ async fn patch_document_validation_errors() -> Result<()> {
|
||||
.await?;
|
||||
assert_eq!(malformed_timestamp.status(), StatusCode::BAD_REQUEST);
|
||||
let malformed_body = body_to_vec(malformed_timestamp.into_body()).await?;
|
||||
let malformed_error: ErrorResponse = serde_json::from_slice(&malformed_body)?;
|
||||
let malformed_error: ApiErrorResponse = serde_json::from_slice(&malformed_body)?;
|
||||
assert!(
|
||||
malformed_error
|
||||
.error
|
||||
@@ -1591,7 +1584,10 @@ async fn list_documents_filtered_by_document_type() -> Result<()> {
|
||||
assert!(refreshed_a.status().is_success());
|
||||
let refreshed_a_body = body_to_vec(refreshed_a.into_body()).await?;
|
||||
let refreshed_a_detail: DocumentDetail = serde_json::from_slice(&refreshed_a_body)?;
|
||||
assert_eq!(refreshed_a_detail.document.document_type_id, Some(invoices.id));
|
||||
assert_eq!(
|
||||
refreshed_a_detail.document.document_type_id,
|
||||
Some(invoices.id)
|
||||
);
|
||||
|
||||
let refreshed_b = app
|
||||
.get(
|
||||
@@ -1602,7 +1598,10 @@ async fn list_documents_filtered_by_document_type() -> Result<()> {
|
||||
assert!(refreshed_b.status().is_success());
|
||||
let refreshed_b_body = body_to_vec(refreshed_b.into_body()).await?;
|
||||
let refreshed_b_detail: DocumentDetail = serde_json::from_slice(&refreshed_b_body)?;
|
||||
assert_eq!(refreshed_b_detail.document.document_type_id, Some(receipts.id));
|
||||
assert_eq!(
|
||||
refreshed_b_detail.document.document_type_id,
|
||||
Some(receipts.id)
|
||||
);
|
||||
|
||||
app.cleanup().await?;
|
||||
Ok(())
|
||||
|
||||
Reference in New Issue
Block a user