Gate integration tests of unrebuilt Enterprise features behind pending-rebuild; record what v0.16.22 proved

This commit is contained in:
2026-09-18 10:29:20 -07:00
parent 0c6b3dffc0
commit 0db5ab9155
6 changed files with 49 additions and 4 deletions
+13 -4
View File
@@ -4,6 +4,12 @@
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-SEL
*/
#[cfg(feature = "pending-rebuild")] // inbuxa: pending-rebuild, see docs/spec/features/
use common::enterprise::llm::{
ChatCompletionChoice, ChatCompletionRequest, ChatCompletionResponse, Message,
};
#[cfg(feature = "pending-rebuild")]
use spam_filter::analysis::llm::SpamFilterAnalyzeLlm;
use crate::utils::{
dns::DnsCache,
http_server::{HttpMessage, spawn_mock_http_server},
@@ -14,9 +20,6 @@ use common::{
Server,
auth::{AccountCache, AccountInfo},
config::mailstore::spamfilter::SpamFilterAction,
enterprise::llm::{
ChatCompletionChoice, ChatCompletionRequest, ChatCompletionResponse, Message,
},
};
use http_proto::{JsonResponse, ToHttpResponse};
use hyper::Method;
@@ -46,7 +49,7 @@ use spam_filter::{
dmarc::SpamFilterAnalyzeDmarc, domain::SpamFilterAnalyzeDomain,
ehlo::SpamFilterAnalyzeEhlo, from::SpamFilterAnalyzeFrom,
headers::SpamFilterAnalyzeHeaders, html::SpamFilterAnalyzeHtml, init::SpamFilterInit,
ip::SpamFilterAnalyzeIp, llm::SpamFilterAnalyzeLlm, messageid::SpamFilterAnalyzeMid,
ip::SpamFilterAnalyzeIp, messageid::SpamFilterAnalyzeMid,
mime::SpamFilterAnalyzeMime, pyzor::SpamFilterAnalyzePyzor,
received::SpamFilterAnalyzeReceived, recipient::SpamFilterAnalyzeRecipient,
replyto::SpamFilterAnalyzeReplyTo, rules::SpamFilterAnalyzeRules,
@@ -220,6 +223,7 @@ async fn antispam() {
}
// Spawn mock OpenAI server
#[cfg(feature = "pending-rebuild")] // inbuxa: pending-rebuild, see docs/spec/features/
let _tx = spawn_mock_http_server(
&test,
Arc::new(|req: HttpMessage| {
@@ -289,6 +293,10 @@ async fn antispam() {
{
continue;
}
// inbuxa: pending-rebuild. The LLM case needs the AI classifier rebuilt.
if cfg!(not(feature = "pending-rebuild")) && test_name == "llm" {
continue;
}
println!("===== {test_name} =====");
let contents = fs::read_to_string(base_path.join(format!("{test_name}.test"))).unwrap();
@@ -657,6 +665,7 @@ async fn antispam() {
"pyzor" => {
server.spam_filter_analyze_pyzor(&mut spam_ctx).await;
}
#[cfg(feature = "pending-rebuild")] // inbuxa: pending-rebuild, see docs/spec/features/
"llm" => {
server.spam_filter_analyze_llm(&mut spam_ctx).await;
}