Improved object serialization

This commit is contained in:
mdecimus
2025-02-23 12:22:11 +01:00
parent 4b3b158ed3
commit b7c0f8447b
118 changed files with 4666 additions and 3165 deletions

View File

@@ -6,15 +6,15 @@
use std::path::PathBuf;
use email::crypto::{
try_parse_certs, Algorithm, EncryptMessage, EncryptionMethod, EncryptionParams, EncryptionType,
use email::message::crypto::{
Algorithm, EncryptMessage, EncryptionMethod, EncryptionParams, EncryptionType, try_parse_certs,
};
use jmap_proto::types::id::Id;
use mail_parser::{MessageParser, MimeHeaders};
use crate::{
directory::internal::TestInternalDirectory,
jmap::{delivery::SmtpConnection, ManagementApi},
jmap::{ManagementApi, delivery::SmtpConnection},
};
use super::JMAPTest;
@@ -218,17 +218,19 @@ pub async fn import_certs_and_encrypt() {
}
// S/MIME and PGP should not be allowed mixed
assert!(try_parse_certs(
EncryptionMethod::PGP,
std::fs::read(
PathBuf::from(env!("CARGO_MANIFEST_DIR"))
.join("resources")
.join("crypto")
.join("cert_mixed.pem"),
assert!(
try_parse_certs(
EncryptionMethod::PGP,
std::fs::read(
PathBuf::from(env!("CARGO_MANIFEST_DIR"))
.join("resources")
.join("crypto")
.join("cert_mixed.pem"),
)
.unwrap(),
)
.unwrap(),
)
.is_err());
.is_err()
);
}
#[test]

View File

@@ -23,10 +23,11 @@ use common::{
config::{ConfigManager, Patterns},
},
};
use email::message::delete::EmailDeletion;
use enterprise::{EnterpriseCore, insert_test_metrics};
use hyper::{Method, header::AUTHORIZATION};
use imap::core::ImapSessionManager;
use jmap::{SpawnServices, api::JmapSessionManager, email::delete::EmailDeletion};
use jmap::{SpawnServices, api::JmapSessionManager};
use jmap_client::client::{Client, Credentials};
use jmap_proto::{error::request::RequestError, types::id::Id};
use managesieve::core::ManageSieveSessionManager;

View File

@@ -9,15 +9,15 @@ use std::sync::Arc;
use ahash::AHashSet;
use common::auth::{AccessToken, TenantInfo};
use directory::{
backend::internal::{PrincipalField, PrincipalUpdate, PrincipalValue},
Permission, Principal, Type,
backend::internal::{PrincipalField, PrincipalUpdate, PrincipalValue},
};
use email::delivery::{IngestMessage, LocalDeliveryStatus, MailDelivery};
use email::message::delivery::{IngestMessage, LocalDeliveryStatus, MailDelivery};
use utils::BlobHash;
use crate::jmap::assert_is_empty;
use super::{enterprise::List, JMAPTest, ManagementApi};
use super::{JMAPTest, ManagementApi, enterprise::List};
pub async fn test(params: &JMAPTest) {
println!("Running permissions tests...");

View File

@@ -6,14 +6,16 @@
use ahash::AHashSet;
use common::Server;
use directory::{backend::internal::manage::ManageDirectory, QueryBy};
use email::mailbox::{INBOX_ID, JUNK_ID, TRASH_ID};
use directory::{QueryBy, backend::internal::manage::ManageDirectory};
use email::{
mailbox::{INBOX_ID, JUNK_ID, TRASH_ID},
message::delete::EmailDeletion,
};
use imap_proto::ResponseType;
use jmap::email::delete::EmailDeletion;
use jmap_proto::types::{collection::Collection, id::Id, property::Property};
use store::{
write::{key::DeserializeBigEndian, TagValue},
IterateParams, LogKey, U32_LEN, U64_LEN,
write::{TagValue, key::DeserializeBigEndian},
};
use crate::{

View File

@@ -12,10 +12,10 @@ use crate::{
};
use common::auth::AccessToken;
use ::email::ingest::{EmailIngest, IngestEmail, IngestSource};
use ::email::message::ingest::{EmailIngest, IngestEmail, IngestSource};
use jmap_client::{email, mailbox::Role};
use jmap_proto::types::{collection::Collection, id::Id};
use mail_parser::{mailbox::mbox::MessageIterator, MessageParser};
use mail_parser::{MessageParser, mailbox::mbox::MessageIterator};
use store::{
ahash::{AHashMap, AHashSet},
rand::{self, Rng},