From 44850710dfee35b46151733ade10201ed0edb92b Mon Sep 17 00:00:00 2001 From: Jeff Baskin Date: Wed, 24 Dec 2025 17:54:25 -0500 Subject: [PATCH] Separating elements from their parts. --- src/lib.rs | 9 +++++++++ src/message.rs | 43 ++++++++++++++----------------------------- src/mtterror.rs | 26 ++++++++++++++++++++++++++ 3 files changed, 49 insertions(+), 29 deletions(-) create mode 100644 src/mtterror.rs diff --git a/src/lib.rs b/src/lib.rs index 4046b25..f3e153e 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,13 +1,22 @@ mod message; +mod mtterror; use message::{ Action, Addition, CalcValue, Calculation, Clock, CreateDoc, Field, FieldType, Include, Message, Name, NameType, Operand, Path, Queue, RegMsg, Register, Session, }; pub use message::{MsgAction, Query}; +use mtterror::MTTError; use std::sync::mpsc::{channel, Receiver}; use uuid::Uuid; +#[cfg(test)] +mod support_tests { + use std::time::Duration; + + pub static TIMEOUT: Duration = Duration::from_millis(500); +} + #[derive(Clone)] pub struct MoreThanText { queue: Queue, diff --git a/src/message.rs b/src/message.rs index bbb5a11..e5fd82e 100644 --- a/src/message.rs +++ b/src/message.rs @@ -11,36 +11,16 @@ use std::{ time::Duration, }; use uuid::Uuid; +use super::MTTError; +/* #[cfg(test)] mod support_test { use std::time::Duration; pub static TIMEOUT: Duration = Duration::from_millis(500); } - -#[derive(Clone, Debug)] -pub enum MTTError { - AdditionMissingField(Name), - CannotConvertMessageToRouteID, - DocumentAlreadyExists(String), - DocumentFieldAlreadyExists(String, Field), - DocumentFieldMissing(String), - DocumentFieldNotFound(String), - DocumentFieldWrongDataType(FieldType, FieldType), - DocumentNotFound(String), - FieldDuplicate, - FieldInvalidType, - FieldMissingData, - InvalidNone, - RecordMismatch, - NameDuplicate(Name), - NameInvalidID(Uuid), - NameMissingTranslation(Language), - NameNotFound(Name), - QueryCannotChangeData, - RouteRequiresDocumentID, -} +*/ #[derive(Clone, Debug, Eq, Hash, PartialEq)] pub enum Action { @@ -1591,7 +1571,8 @@ impl Router { #[cfg(test)] mod routers { - use super::{support_test::TIMEOUT, *}; + use crate::support_tests::TIMEOUT; + use super::*; #[test] fn can_pass_message() { @@ -1700,7 +1681,8 @@ impl Queue { #[cfg(test)] mod queues { - use super::{support_test::TIMEOUT, *}; + use crate::support_tests::TIMEOUT; + use super::*; use std::sync::mpsc::RecvTimeoutError; struct TestQueue { @@ -5262,7 +5244,8 @@ impl DocumentFile { #[cfg(test)] mod document_files { - use super::{support_test::TIMEOUT, *}; + use crate::support_tests::TIMEOUT; + use super::*; use std::{sync::mpsc::RecvTimeoutError, thread::sleep}; fn standard_paths() -> Vec { @@ -6942,7 +6925,7 @@ mod document_files { #[cfg(test)] mod createdocs { - use super::support_test::TIMEOUT; + use crate::support_tests::TIMEOUT; use super::*; struct TestCreateDoc { @@ -7350,7 +7333,8 @@ impl MessageLog { #[cfg(test)] mod message_logs { - use super::{support_test::TIMEOUT, *}; + use crate::support_tests::TIMEOUT; + use super::*; #[test] fn does_log_store_messages() { @@ -7474,7 +7458,8 @@ impl Session { #[cfg(test)] mod sessions { - use super::{support_test::TIMEOUT, *}; + use crate::support_tests::TIMEOUT; + use super::*; use std::{sync::mpsc::RecvTimeoutError, thread::sleep}; struct Setup { diff --git a/src/mtterror.rs b/src/mtterror.rs new file mode 100644 index 0000000..16d413d --- /dev/null +++ b/src/mtterror.rs @@ -0,0 +1,26 @@ +use isolang::Language; +use super::message::{Field, FieldType, Name}; +use uuid::Uuid; + +#[derive(Clone, Debug)] +pub enum MTTError { + AdditionMissingField(Name), + CannotConvertMessageToRouteID, + DocumentAlreadyExists(String), + DocumentFieldAlreadyExists(String, Field), + DocumentFieldMissing(String), + DocumentFieldNotFound(String), + DocumentFieldWrongDataType(FieldType, FieldType), + DocumentNotFound(String), + FieldDuplicate, + FieldInvalidType, + FieldMissingData, + InvalidNone, + RecordMismatch, + NameDuplicate(Name), + NameInvalidID(Uuid), + NameMissingTranslation(Language), + NameNotFound(Name), + QueryCannotChangeData, + RouteRequiresDocumentID, +}