use crate::database::universal_types::{UniversalTimestamp, UniversalUuid};
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct DbContext {
pub id: UniversalUuid,
pub value: String,
pub created_at: UniversalTimestamp,
pub updated_at: UniversalTimestamp,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct NewDbContext {
pub value: String,
}
#[cfg(test)]
mod tests {
use super::*;
use crate::database::universal_types::current_timestamp;
#[test]
fn test_db_context_creation() {
let now = current_timestamp();
let context = DbContext {
id: UniversalUuid::new_v4(),
value: "{\"test\":42}".to_string(),
created_at: now,
updated_at: now,
};
assert_eq!(context.value, "{\"test\":42}");
assert_eq!(context.created_at, now);
assert_eq!(context.updated_at, now);
}
#[test]
fn test_new_db_context_creation() {
let new_context = NewDbContext {
value: "{\"test\":42}".to_string(),
};
assert_eq!(new_context.value, "{\"test\":42}");
}
}