mirror of
https://github.com/meilisearch/MeiliSearch
synced 2025-01-30 23:27:36 +01:00
Fix tests
This commit is contained in:
parent
e8c4ea5de2
commit
b2abef6522
@ -229,7 +229,7 @@ pub(crate) mod test {
|
|||||||
use big_s::S;
|
use big_s::S;
|
||||||
use maplit::{btreemap, btreeset};
|
use maplit::{btreemap, btreeset};
|
||||||
use meilisearch_types::facet_values_sort::FacetValuesSort;
|
use meilisearch_types::facet_values_sort::FacetValuesSort;
|
||||||
use meilisearch_types::features::RuntimeTogglableFeatures;
|
use meilisearch_types::features::{Network, Remote, RuntimeTogglableFeatures};
|
||||||
use meilisearch_types::index_uid_pattern::IndexUidPattern;
|
use meilisearch_types::index_uid_pattern::IndexUidPattern;
|
||||||
use meilisearch_types::keys::{Action, Key};
|
use meilisearch_types::keys::{Action, Key};
|
||||||
use meilisearch_types::milli;
|
use meilisearch_types::milli;
|
||||||
@ -455,6 +455,10 @@ pub(crate) mod test {
|
|||||||
|
|
||||||
dump.create_experimental_features(features).unwrap();
|
dump.create_experimental_features(features).unwrap();
|
||||||
|
|
||||||
|
// ========== network
|
||||||
|
let network = create_test_network();
|
||||||
|
dump.create_network(network).unwrap();
|
||||||
|
|
||||||
// create the dump
|
// create the dump
|
||||||
let mut file = tempfile::tempfile().unwrap();
|
let mut file = tempfile::tempfile().unwrap();
|
||||||
dump.persist_to(&mut file).unwrap();
|
dump.persist_to(&mut file).unwrap();
|
||||||
@ -467,6 +471,13 @@ pub(crate) mod test {
|
|||||||
RuntimeTogglableFeatures::default()
|
RuntimeTogglableFeatures::default()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn create_test_network() -> Network {
|
||||||
|
Network {
|
||||||
|
local: Some("myself".to_string()),
|
||||||
|
remotes: maplit::btreemap! {"other".to_string() => Remote { url: "http://test".to_string(), search_api_key: Some("apiKey".to_string()) }},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_creating_and_read_dump() {
|
fn test_creating_and_read_dump() {
|
||||||
let mut file = create_test_dump();
|
let mut file = create_test_dump();
|
||||||
@ -515,5 +526,9 @@ pub(crate) mod test {
|
|||||||
// ==== checking the features
|
// ==== checking the features
|
||||||
let expected = create_test_features();
|
let expected = create_test_features();
|
||||||
assert_eq!(dump.features().unwrap().unwrap(), expected);
|
assert_eq!(dump.features().unwrap().unwrap(), expected);
|
||||||
|
|
||||||
|
// ==== checking the network
|
||||||
|
let expected = create_test_network();
|
||||||
|
assert_eq!(&expected, dump.network().unwrap().unwrap());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -23,6 +23,7 @@ mod v6;
|
|||||||
pub type Document = serde_json::Map<String, serde_json::Value>;
|
pub type Document = serde_json::Map<String, serde_json::Value>;
|
||||||
pub type UpdateFile = dyn Iterator<Item = Result<Document>>;
|
pub type UpdateFile = dyn Iterator<Item = Result<Document>>;
|
||||||
|
|
||||||
|
#[allow(clippy::large_enum_variant)]
|
||||||
pub enum DumpReader {
|
pub enum DumpReader {
|
||||||
Current(V6Reader),
|
Current(V6Reader),
|
||||||
Compat(CompatV5ToV6),
|
Compat(CompatV5ToV6),
|
||||||
@ -335,6 +336,7 @@ pub(crate) mod test {
|
|||||||
}
|
}
|
||||||
|
|
||||||
assert_eq!(dump.features().unwrap().unwrap(), RuntimeTogglableFeatures::default());
|
assert_eq!(dump.features().unwrap().unwrap(), RuntimeTogglableFeatures::default());
|
||||||
|
assert_eq!(dump.network().unwrap(), None);
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
@ -380,6 +382,27 @@ pub(crate) mod test {
|
|||||||
assert_eq!(dump.features().unwrap().unwrap(), RuntimeTogglableFeatures::default());
|
assert_eq!(dump.features().unwrap().unwrap(), RuntimeTogglableFeatures::default());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn import_dump_v6_network() {
|
||||||
|
let dump = File::open("tests/assets/v6-with-network.dump").unwrap();
|
||||||
|
let dump = DumpReader::open(dump).unwrap();
|
||||||
|
|
||||||
|
// top level infos
|
||||||
|
insta::assert_snapshot!(dump.date().unwrap(), @"2025-01-29 15:45:32.738676 +00:00:00");
|
||||||
|
insta::assert_debug_snapshot!(dump.instance_uid().unwrap(), @"None");
|
||||||
|
|
||||||
|
// network
|
||||||
|
|
||||||
|
let network = dump.network().unwrap().unwrap();
|
||||||
|
insta::assert_snapshot!(network.local.as_ref().unwrap(), @"ms-0");
|
||||||
|
insta::assert_snapshot!(network.remotes.get("ms-0").as_ref().unwrap().url, @"http://localhost:7700");
|
||||||
|
insta::assert_snapshot!(network.remotes.get("ms-0").as_ref().unwrap().search_api_key.is_none(), @"true");
|
||||||
|
insta::assert_snapshot!(network.remotes.get("ms-1").as_ref().unwrap().url, @"http://localhost:7701");
|
||||||
|
insta::assert_snapshot!(network.remotes.get("ms-1").as_ref().unwrap().search_api_key.is_none(), @"true");
|
||||||
|
insta::assert_snapshot!(network.remotes.get("ms-2").as_ref().unwrap().url, @"http://ms-5679.example.meilisearch.io");
|
||||||
|
insta::assert_snapshot!(network.remotes.get("ms-2").as_ref().unwrap().search_api_key.as_ref().unwrap(), @"foo");
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn import_dump_v5() {
|
fn import_dump_v5() {
|
||||||
let dump = File::open("tests/assets/v5.dump").unwrap();
|
let dump = File::open("tests/assets/v5.dump").unwrap();
|
||||||
|
@ -299,7 +299,8 @@ pub(crate) mod test {
|
|||||||
├---- experimental-features.json
|
├---- experimental-features.json
|
||||||
├---- instance_uid.uuid
|
├---- instance_uid.uuid
|
||||||
├---- keys.jsonl
|
├---- keys.jsonl
|
||||||
└---- metadata.json
|
├---- metadata.json
|
||||||
|
└---- network.json
|
||||||
"###);
|
"###);
|
||||||
|
|
||||||
// ==== checking the top level infos
|
// ==== checking the top level infos
|
||||||
|
@ -326,7 +326,7 @@ fn test_auto_deletion_of_tasks() {
|
|||||||
fn test_task_queue_is_full() {
|
fn test_task_queue_is_full() {
|
||||||
let (index_scheduler, mut handle) = IndexScheduler::test_with_custom_config(vec![], |config| {
|
let (index_scheduler, mut handle) = IndexScheduler::test_with_custom_config(vec![], |config| {
|
||||||
// that's the minimum map size possible
|
// that's the minimum map size possible
|
||||||
config.task_db_size = 1048576;
|
config.task_db_size = 1048576 * 3;
|
||||||
None
|
None
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -1908,7 +1908,8 @@ async fn import_dump_v6_containing_experimental_features() {
|
|||||||
"metrics": false,
|
"metrics": false,
|
||||||
"logsRoute": false,
|
"logsRoute": false,
|
||||||
"editDocumentsByFunction": false,
|
"editDocumentsByFunction": false,
|
||||||
"containsFilter": false
|
"containsFilter": false,
|
||||||
|
"proxySearch": false
|
||||||
}
|
}
|
||||||
"###);
|
"###);
|
||||||
|
|
||||||
@ -2069,7 +2070,8 @@ async fn generate_and_import_dump_containing_vectors() {
|
|||||||
"metrics": false,
|
"metrics": false,
|
||||||
"logsRoute": false,
|
"logsRoute": false,
|
||||||
"editDocumentsByFunction": false,
|
"editDocumentsByFunction": false,
|
||||||
"containsFilter": false
|
"containsFilter": false,
|
||||||
|
"proxySearch": false
|
||||||
}
|
}
|
||||||
"###);
|
"###);
|
||||||
|
|
||||||
|
@ -21,7 +21,8 @@ async fn experimental_features() {
|
|||||||
"metrics": false,
|
"metrics": false,
|
||||||
"logsRoute": false,
|
"logsRoute": false,
|
||||||
"editDocumentsByFunction": false,
|
"editDocumentsByFunction": false,
|
||||||
"containsFilter": false
|
"containsFilter": false,
|
||||||
|
"proxySearch": false
|
||||||
}
|
}
|
||||||
"###);
|
"###);
|
||||||
|
|
||||||
@ -33,7 +34,8 @@ async fn experimental_features() {
|
|||||||
"metrics": true,
|
"metrics": true,
|
||||||
"logsRoute": false,
|
"logsRoute": false,
|
||||||
"editDocumentsByFunction": false,
|
"editDocumentsByFunction": false,
|
||||||
"containsFilter": false
|
"containsFilter": false,
|
||||||
|
"proxySearch": false
|
||||||
}
|
}
|
||||||
"###);
|
"###);
|
||||||
|
|
||||||
@ -45,7 +47,8 @@ async fn experimental_features() {
|
|||||||
"metrics": true,
|
"metrics": true,
|
||||||
"logsRoute": false,
|
"logsRoute": false,
|
||||||
"editDocumentsByFunction": false,
|
"editDocumentsByFunction": false,
|
||||||
"containsFilter": false
|
"containsFilter": false,
|
||||||
|
"proxySearch": false
|
||||||
}
|
}
|
||||||
"###);
|
"###);
|
||||||
|
|
||||||
@ -58,7 +61,8 @@ async fn experimental_features() {
|
|||||||
"metrics": true,
|
"metrics": true,
|
||||||
"logsRoute": false,
|
"logsRoute": false,
|
||||||
"editDocumentsByFunction": false,
|
"editDocumentsByFunction": false,
|
||||||
"containsFilter": false
|
"containsFilter": false,
|
||||||
|
"proxySearch": false
|
||||||
}
|
}
|
||||||
"###);
|
"###);
|
||||||
|
|
||||||
@ -71,7 +75,8 @@ async fn experimental_features() {
|
|||||||
"metrics": true,
|
"metrics": true,
|
||||||
"logsRoute": false,
|
"logsRoute": false,
|
||||||
"editDocumentsByFunction": false,
|
"editDocumentsByFunction": false,
|
||||||
"containsFilter": false
|
"containsFilter": false,
|
||||||
|
"proxySearch": false
|
||||||
}
|
}
|
||||||
"###);
|
"###);
|
||||||
}
|
}
|
||||||
@ -91,7 +96,8 @@ async fn experimental_feature_metrics() {
|
|||||||
"metrics": true,
|
"metrics": true,
|
||||||
"logsRoute": false,
|
"logsRoute": false,
|
||||||
"editDocumentsByFunction": false,
|
"editDocumentsByFunction": false,
|
||||||
"containsFilter": false
|
"containsFilter": false,
|
||||||
|
"proxySearch": false
|
||||||
}
|
}
|
||||||
"###);
|
"###);
|
||||||
|
|
||||||
@ -146,7 +152,7 @@ async fn errors() {
|
|||||||
meili_snap::snapshot!(code, @"400 Bad Request");
|
meili_snap::snapshot!(code, @"400 Bad Request");
|
||||||
meili_snap::snapshot!(meili_snap::json_string!(response), @r###"
|
meili_snap::snapshot!(meili_snap::json_string!(response), @r###"
|
||||||
{
|
{
|
||||||
"message": "Unknown field `NotAFeature`: expected one of `metrics`, `logsRoute`, `editDocumentsByFunction`, `containsFilter`",
|
"message": "Unknown field `NotAFeature`: expected one of `metrics`, `logsRoute`, `editDocumentsByFunction`, `containsFilter`, `proxySearch`",
|
||||||
"code": "bad_request",
|
"code": "bad_request",
|
||||||
"type": "invalid_request",
|
"type": "invalid_request",
|
||||||
"link": "https://docs.meilisearch.com/errors#bad_request"
|
"link": "https://docs.meilisearch.com/errors#bad_request"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user