test: Test that the skip_auth option works correctly
This commit is contained in:
@@ -1527,6 +1527,46 @@ async fn test_server_vendor_info() {
|
||||
assert_eq!(server_info.version, "1.70.0");
|
||||
}
|
||||
|
||||
#[async_test]
|
||||
async fn test_server_version_without_auth() {
|
||||
let server = MatrixMockServer::new().await;
|
||||
let client = server.client_builder().build().await;
|
||||
|
||||
// If we provide an access token, we encounter a failure, likely because the
|
||||
// token has expired.
|
||||
Mock::given(method("GET"))
|
||||
.and(path_regex(r"^/_matrix/client/versions"))
|
||||
.and(header("authorization", "Bearer 1234"))
|
||||
.respond_with(ResponseTemplate::new(401))
|
||||
.mount(server.server())
|
||||
.await;
|
||||
|
||||
// If we do not provide an access token, all is fine as the endpoint does not
|
||||
// require one.
|
||||
Mock::given(method("GET"))
|
||||
.and(path_regex(r"^/_matrix/client/versions"))
|
||||
.respond_with(ResponseTemplate::new(200).set_body_json(json!({
|
||||
"versions": [
|
||||
"r0.0.1",
|
||||
"v1.1"
|
||||
]
|
||||
})))
|
||||
.mount(server.server())
|
||||
.await;
|
||||
|
||||
let request_config = RequestConfig::new().disable_retry();
|
||||
client
|
||||
.fetch_server_versions(Some(request_config))
|
||||
.await
|
||||
.expect_err("We should fail here since we provided an auth token.");
|
||||
|
||||
let request_config = RequestConfig::new().disable_retry().skip_auth();
|
||||
client
|
||||
.fetch_server_versions(Some(request_config))
|
||||
.await
|
||||
.expect("We should not fail here since we did not provide an auth token.");
|
||||
}
|
||||
|
||||
#[async_test]
|
||||
async fn test_server_vendor_info_with_missing_fields() {
|
||||
let server = MatrixMockServer::new().await;
|
||||
|
||||
Reference in New Issue
Block a user