Skip to content

Commit 5ae0e7c

Browse files
bors[bot]bidoubiwa
andauthored
Merge #442
442: Failing tests due to breaking patch in mockito r=irevoire a=bidoubiwa Mockito released a [new patch version](https://github.com/lipanski/mockito/releases/tag/0.32.5) messing with the asynchronousity methods. Due to that, the tests were panicking in the other PR's. Since additionally to that I received a lot of warning from the library saying that the methods we were using are deprecated, I updated mockito to its v1 version. Co-authored-by: Charlotte Vermandel <[email protected]>
2 parents 6122c78 + 81bff3f commit 5ae0e7c

File tree

4 files changed

+60
-45
lines changed

4 files changed

+60
-45
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ isahc-static-curl = ["isahc/static-curl"]
4545
env_logger = "0.10"
4646
futures-await-test = "0.3"
4747
futures = "0.3"
48-
mockito = "0.32.3"
48+
mockito = "1.0.0"
4949
meilisearch-test-macro = { path = "meilisearch-test-macro" }
5050
tokio = { version = "1", features = ["rt", "macros"] }
5151

meilisearch-test-macro/src/lib.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -169,9 +169,7 @@ pub fn meilisearch_test(params: TokenStream, input: TokenStream) -> TokenStream
169169

170170
outer_fn.sig.inputs.clear();
171171
outer_fn.sig.asyncness = inner_fn.sig.asyncness.clone();
172-
outer_fn
173-
.attrs
174-
.push(parse_quote!(#[futures_await_test::async_test]));
172+
outer_fn.attrs.push(parse_quote!(#[tokio::test]));
175173
outer_fn.block.stmts = outer_block;
176174
} else {
177175
panic!("#[meilisearch_test] can only be applied to async functions")

src/client.rs

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1039,10 +1039,7 @@ pub struct Version {
10391039

10401040
#[cfg(test)]
10411041
mod tests {
1042-
use std::mem;
1043-
10441042
use big_s::S;
1045-
use mockito::mock;
10461043
use time::OffsetDateTime;
10471044

10481045
use meilisearch_test_macro::meilisearch_test;
@@ -1108,22 +1105,25 @@ mod tests {
11081105

11091106
#[meilisearch_test]
11101107
async fn test_methods_has_qualified_version_as_header() {
1111-
let mock_server_url = &mockito::server_url();
1108+
let mut s = mockito::Server::new_async().await;
1109+
let mock_server_url = s.url();
11121110
let path = "/hello";
11131111
let address = &format!("{}{}", mock_server_url, path);
11141112
let user_agent = &*qualified_version();
11151113

11161114
let assertions = vec![
11171115
(
1118-
mock("GET", path)
1116+
s.mock("GET", path)
11191117
.match_header("User-Agent", user_agent)
1120-
.create(),
1118+
.create_async()
1119+
.await,
11211120
request::<(), (), ()>(address, "", Method::Get { query: () }, 200),
11221121
),
11231122
(
1124-
mock("POST", path)
1123+
s.mock("POST", path)
11251124
.match_header("User-Agent", user_agent)
1126-
.create(),
1125+
.create_async()
1126+
.await,
11271127
request::<(), (), ()>(
11281128
address,
11291129
"",
@@ -1135,15 +1135,17 @@ mod tests {
11351135
),
11361136
),
11371137
(
1138-
mock("DELETE", path)
1138+
s.mock("DELETE", path)
11391139
.match_header("User-Agent", user_agent)
1140-
.create(),
1140+
.create_async()
1141+
.await,
11411142
request::<(), (), ()>(address, "", Method::Delete { query: () }, 200),
11421143
),
11431144
(
1144-
mock("PUT", path)
1145+
s.mock("PUT", path)
11451146
.match_header("User-Agent", user_agent)
1146-
.create(),
1147+
.create_async()
1148+
.await,
11471149
request::<(), (), ()>(
11481150
address,
11491151
"",
@@ -1155,9 +1157,10 @@ mod tests {
11551157
),
11561158
),
11571159
(
1158-
mock("PATCH", path)
1160+
s.mock("PATCH", path)
11591161
.match_header("User-Agent", user_agent)
1160-
.create(),
1162+
.create_async()
1163+
.await,
11611164
request::<(), (), ()>(
11621165
address,
11631166
"",
@@ -1173,8 +1176,7 @@ mod tests {
11731176
for (m, req) in assertions {
11741177
let _ = req.await;
11751178

1176-
m.assert();
1177-
mem::drop(m);
1179+
m.assert_async().await;
11781180
}
11791181
}
11801182

src/tasks.rs

Lines changed: 40 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -698,7 +698,6 @@ mod test {
698698
};
699699
use big_s::S;
700700
use meilisearch_test_macro::meilisearch_test;
701-
use mockito::mock;
702701
use serde::{Deserialize, Serialize};
703702
use std::time::Duration;
704703

@@ -846,25 +845,27 @@ mod test {
846845

847846
#[meilisearch_test]
848847
async fn test_get_tasks_no_params() -> Result<(), Error> {
849-
let mock_server_url = &mockito::server_url();
848+
let mut s = mockito::Server::new_async().await;
849+
let mock_server_url = s.url();
850850
let client = Client::new(mock_server_url, "masterKey");
851851
let path = "/tasks";
852852

853-
let mock_res = mock("GET", path).with_status(200).create();
853+
let mock_res = s.mock("GET", path).with_status(200).create_async().await;
854854
let _ = client.get_tasks().await;
855-
mock_res.assert();
855+
mock_res.assert_async().await;
856856

857857
Ok(())
858858
}
859859

860860
#[meilisearch_test]
861861
async fn test_get_tasks_with_params() -> Result<(), Error> {
862-
let mock_server_url = &mockito::server_url();
862+
let mut s = mockito::Server::new_async().await;
863+
let mock_server_url = s.url();
863864
let client = Client::new(mock_server_url, "masterKey");
864865
let path =
865866
"/tasks?indexUids=movies,test&statuses=equeued&types=documentDeletion&uids=1&limit=0&from=1";
866867

867-
let mock_res = mock("GET", path).with_status(200).create();
868+
let mock_res = s.mock("GET", path).with_status(200).create_async().await;
868869

869870
let mut query = TasksSearchQuery::new(&client);
870871
query
@@ -877,13 +878,15 @@ mod test {
877878

878879
let _ = client.get_tasks_with(&query).await;
879880

880-
mock_res.assert();
881+
mock_res.assert_async().await;
882+
881883
Ok(())
882884
}
883885

884886
#[meilisearch_test]
885887
async fn test_get_tasks_with_date_params() -> Result<(), Error> {
886-
let mock_server_url = &mockito::server_url();
888+
let mut s = mockito::Server::new_async().await;
889+
let mock_server_url = s.url();
887890
let client = Client::new(mock_server_url, "masterKey");
888891
let path = "/tasks?\
889892
beforeEnqueuedAt=2022-02-03T13%3A02%3A38.369634Z\
@@ -893,7 +896,7 @@ mod test {
893896
&beforeFinishedAt=2026-02-03T13%3A02%3A38.369634Z\
894897
&afterFinishedAt=2027-02-03T13%3A02%3A38.369634Z";
895898

896-
let mock_res = mock("GET", path).with_status(200).create();
899+
let mock_res = s.mock("GET", path).with_status(200).create_async().await;
897900

898901
let before_enqueued_at = OffsetDateTime::parse(
899902
"2022-02-03T13:02:38.369634Z",
@@ -940,18 +943,20 @@ mod test {
940943

941944
let _ = client.get_tasks_with(&query).await;
942945

943-
mock_res.assert();
946+
mock_res.assert_async().await;
947+
944948
Ok(())
945949
}
946950

947951
#[meilisearch_test]
948952
async fn test_get_tasks_on_struct_with_params() -> Result<(), Error> {
949-
let mock_server_url = &mockito::server_url();
953+
let mut s = mockito::Server::new_async().await;
954+
let mock_server_url = s.url();
950955
let client = Client::new(mock_server_url, "masterKey");
951956
let path =
952957
"/tasks?indexUids=movies,test&statuses=equeued&types=documentDeletion&canceledBy=9";
953958

954-
let mock_res = mock("GET", path).with_status(200).create();
959+
let mock_res = s.mock("GET", path).with_status(200).create_async().await;
955960

956961
let mut query = TasksSearchQuery::new(&client);
957962
let _ = query
@@ -962,7 +967,8 @@ mod test {
962967
.execute()
963968
.await;
964969

965-
mock_res.assert();
970+
mock_res.assert_async().await;
971+
966972
Ok(())
967973
}
968974

@@ -1005,12 +1011,13 @@ mod test {
10051011

10061012
#[meilisearch_test]
10071013
async fn test_cancel_tasks_with_params() -> Result<(), Error> {
1008-
let mock_server_url = &mockito::server_url();
1014+
let mut s = mockito::Server::new_async().await;
1015+
let mock_server_url = s.url();
10091016
let client = Client::new(mock_server_url, "masterKey");
10101017
let path =
10111018
"/tasks/cancel?indexUids=movies,test&statuses=equeued&types=documentDeletion&uids=1";
10121019

1013-
let mock_res = mock("POST", path).with_status(200).create();
1020+
let mock_res = s.mock("POST", path).with_status(200).create_async().await;
10141021

10151022
let mut query = TasksCancelQuery::new(&client);
10161023
query
@@ -1021,18 +1028,20 @@ mod test {
10211028

10221029
let _ = client.cancel_tasks_with(&query).await;
10231030

1024-
mock_res.assert();
1031+
mock_res.assert_async().await;
1032+
10251033
Ok(())
10261034
}
10271035

10281036
#[meilisearch_test]
10291037
async fn test_cancel_tasks_with_params_execute() -> Result<(), Error> {
1030-
let mock_server_url = &mockito::server_url();
1038+
let mut s = mockito::Server::new_async().await;
1039+
let mock_server_url = s.url();
10311040
let client = Client::new(mock_server_url, "masterKey");
10321041
let path =
10331042
"/tasks/cancel?indexUids=movies,test&statuses=equeued&types=documentDeletion&uids=1";
10341043

1035-
let mock_res = mock("POST", path).with_status(200).create();
1044+
let mock_res = s.mock("POST", path).with_status(200).create_async().await;
10361045

10371046
let mut query = TasksCancelQuery::new(&client);
10381047
let _ = query
@@ -1043,17 +1052,20 @@ mod test {
10431052
.execute()
10441053
.await;
10451054

1046-
mock_res.assert();
1055+
mock_res.assert_async().await;
1056+
10471057
Ok(())
10481058
}
10491059

10501060
#[meilisearch_test]
10511061
async fn test_delete_tasks_with_params() -> Result<(), Error> {
1052-
let mock_server_url = &mockito::server_url();
1062+
let mut s = mockito::Server::new_async().await;
1063+
// let mut s = mockito::Server::new_async().await;
1064+
let mock_server_url = s.url();
10531065
let client = Client::new(mock_server_url, "masterKey");
10541066
let path = "/tasks?indexUids=movies,test&statuses=equeued&types=documentDeletion&uids=1";
10551067

1056-
let mock_res = mock("DELETE", path).with_status(200).create();
1068+
let mock_res = s.mock("DELETE", path).with_status(200).create_async().await;
10571069

10581070
let mut query = TasksDeleteQuery::new(&client);
10591071
query
@@ -1064,17 +1076,19 @@ mod test {
10641076

10651077
let _ = client.delete_tasks_with(&query).await;
10661078

1067-
mock_res.assert();
1079+
mock_res.assert_async().await;
1080+
10681081
Ok(())
10691082
}
10701083

10711084
#[meilisearch_test]
10721085
async fn test_delete_tasks_with_params_execute() -> Result<(), Error> {
1073-
let mock_server_url = &mockito::server_url();
1086+
let mut s = mockito::Server::new_async().await;
1087+
let mock_server_url = s.url();
10741088
let client = Client::new(mock_server_url, "masterKey");
10751089
let path = "/tasks?indexUids=movies,test&statuses=equeued&types=documentDeletion&uids=1";
10761090

1077-
let mock_res = mock("DELETE", path).with_status(200).create();
1091+
let mock_res = s.mock("DELETE", path).with_status(200).create_async().await;
10781092

10791093
let mut query = TasksDeleteQuery::new(&client);
10801094
let _ = query
@@ -1085,7 +1099,8 @@ mod test {
10851099
.execute()
10861100
.await;
10871101

1088-
mock_res.assert();
1102+
mock_res.assert_async().await;
1103+
10891104
Ok(())
10901105
}
10911106
}

0 commit comments

Comments
 (0)