domain: add Storage & Sources entities (StorageVolume, LibraryPath, IngestSession, Quota)

This commit is contained in:
2026-05-31 03:23:34 +02:00
parent 04811ff436
commit 3c5c4ed9b1
10 changed files with 335 additions and 0 deletions

View File

@@ -0,0 +1,17 @@
use domain::entities::{QuotaDefinition, TimePeriod, UsageType};
use domain::value_objects::SystemId;
#[test]
fn quota_with_rules() {
let mut q = QuotaDefinition::new(SystemId::new());
assert!(q.is_enforced);
assert!(q.rules.is_empty());
q.add_rule(UsageType::StorageBytes, 1_000_000, TimePeriod::Monthly);
q.add_unlimited_rule(UsageType::ApiCalls);
assert_eq!(q.rules.len(), 2);
assert!(!q.rules[0].is_unlimited);
assert_eq!(q.rules[0].limit_value, 1_000_000);
assert!(q.rules[1].is_unlimited);
}