Skip to content

Commit e4b9875

Browse files
committed
refactor: [#1159] use new tracker api client package in tests
The Tracker API client was extracted into a new package. This removes the duplicate client in tests and starts using the new package.
1 parent a1ded65 commit e4b9875

File tree

13 files changed

+14
-205
lines changed

13 files changed

+14
-205
lines changed

Cargo.lock

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

+1
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@ ignored = ["crossbeam-skiplist", "dashmap", "figment", "parking_lot", "serde_byt
9797
[dev-dependencies]
9898
local-ip-address = "0"
9999
mockall = "0"
100+
torrust-tracker-api-client = { version = "3.0.0-develop", path = "packages/tracker-api-client" }
100101
torrust-tracker-test-helpers = { version = "3.0.0-develop", path = "packages/test-helpers" }
101102

102103
[workspace]

packages/tracker-api-client/src/connection_info.rs

-10
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,3 @@
1-
#[must_use]
2-
pub fn connection_with_invalid_token(bind_address: &str) -> ConnectionInfo {
3-
ConnectionInfo::authenticated(bind_address, "invalid token")
4-
}
5-
6-
#[must_use]
7-
pub fn connection_with_no_token(bind_address: &str) -> ConnectionInfo {
8-
ConnectionInfo::anonymous(bind_address)
9-
}
10-
111
#[derive(Clone)]
122
pub struct ConnectionInfo {
133
pub bind_address: String,

tests/servers/api/connection_info.rs

+2-22
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,9 @@
1+
use torrust_tracker_api_client::connection_info::ConnectionInfo;
2+
13
pub fn connection_with_invalid_token(bind_address: &str) -> ConnectionInfo {
24
ConnectionInfo::authenticated(bind_address, "invalid token")
35
}
46

57
pub fn connection_with_no_token(bind_address: &str) -> ConnectionInfo {
68
ConnectionInfo::anonymous(bind_address)
79
}
8-
9-
#[derive(Clone)]
10-
pub struct ConnectionInfo {
11-
pub bind_address: String,
12-
pub api_token: Option<String>,
13-
}
14-
15-
impl ConnectionInfo {
16-
pub fn authenticated(bind_address: &str, api_token: &str) -> Self {
17-
Self {
18-
bind_address: bind_address.to_string(),
19-
api_token: Some(api_token.to_string()),
20-
}
21-
}
22-
23-
pub fn anonymous(bind_address: &str) -> Self {
24-
Self {
25-
bind_address: bind_address.to_string(),
26-
api_token: None,
27-
}
28-
}
29-
}

tests/servers/api/environment.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ use std::sync::Arc;
44
use bittorrent_primitives::info_hash::InfoHash;
55
use futures::executor::block_on;
66
use tokio::sync::RwLock;
7+
use torrust_tracker_api_client::connection_info::ConnectionInfo;
78
use torrust_tracker_configuration::{Configuration, HttpApi};
89
use torrust_tracker_lib::bootstrap::app::initialize_with_configuration;
910
use torrust_tracker_lib::bootstrap::jobs::make_rust_tls;
@@ -14,8 +15,6 @@ use torrust_tracker_lib::servers::udp::server::banning::BanService;
1415
use torrust_tracker_lib::servers::udp::server::launcher::MAX_CONNECTION_ID_ERRORS_PER_IP;
1516
use torrust_tracker_primitives::peer;
1617

17-
use super::connection_info::ConnectionInfo;
18-
1918
pub struct Environment<S>
2019
where
2120
S: std::fmt::Debug + std::fmt::Display,

tests/servers/api/v1/client.rs

-161
This file was deleted.

tests/servers/api/v1/contract/authentication.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1+
use torrust_tracker_api_client::common::http::{Query, QueryParam};
2+
use torrust_tracker_api_client::v1::client::{headers_with_request_id, Client};
13
use torrust_tracker_test_helpers::configuration;
24
use uuid::Uuid;
35

4-
use crate::common::http::{Query, QueryParam};
56
use crate::common::logging::{self, logs_contains_a_line_with};
67
use crate::servers::api::v1::asserts::{assert_token_not_valid, assert_unauthorized};
7-
use crate::servers::api::v1::client::{headers_with_request_id, Client};
88
use crate::servers::api::Started;
99

1010
#[tokio::test]

tests/servers/api/v1/contract/context/auth_key.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
use std::time::Duration;
22

33
use serde::Serialize;
4+
use torrust_tracker_api_client::v1::client::{headers_with_request_id, AddKeyForm, Client};
45
use torrust_tracker_lib::core::auth::Key;
56
use torrust_tracker_test_helpers::configuration;
67
use uuid::Uuid;
@@ -12,7 +13,6 @@ use crate::servers::api::v1::asserts::{
1213
assert_invalid_auth_key_get_param, assert_invalid_auth_key_post_param, assert_ok, assert_token_not_valid,
1314
assert_unauthorized, assert_unprocessable_auth_key_duration_param,
1415
};
15-
use crate::servers::api::v1::client::{headers_with_request_id, AddKeyForm, Client};
1616
use crate::servers::api::{force_database_error, Started};
1717

1818
#[tokio::test]
@@ -462,6 +462,7 @@ async fn should_not_allow_reloading_keys_for_unauthenticated_users() {
462462

463463
mod deprecated_generate_key_endpoint {
464464

465+
use torrust_tracker_api_client::v1::client::{headers_with_request_id, Client};
465466
use torrust_tracker_lib::core::auth::Key;
466467
use torrust_tracker_test_helpers::configuration;
467468
use uuid::Uuid;
@@ -472,7 +473,6 @@ mod deprecated_generate_key_endpoint {
472473
assert_auth_key_utf8, assert_failed_to_generate_key, assert_invalid_key_duration_param, assert_token_not_valid,
473474
assert_unauthorized,
474475
};
475-
use crate::servers::api::v1::client::{headers_with_request_id, Client};
476476
use crate::servers::api::{force_database_error, Started};
477477

478478
#[tokio::test]

tests/servers/api/v1/contract/context/health_check.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1+
use torrust_tracker_api_client::v1::client::get;
12
use torrust_tracker_lib::servers::apis::v1::context::health_check::resources::{Report, Status};
23
use torrust_tracker_test_helpers::configuration;
34

45
use crate::common::logging;
5-
use crate::servers::api::v1::client::get;
66
use crate::servers::api::Started;
77

88
#[tokio::test]

tests/servers/api/v1/contract/context/stats.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
use std::str::FromStr;
22

33
use bittorrent_primitives::info_hash::InfoHash;
4+
use torrust_tracker_api_client::v1::client::{headers_with_request_id, Client};
45
use torrust_tracker_lib::servers::apis::v1::context::stats::resources::Stats;
56
use torrust_tracker_primitives::peer::fixture::PeerBuilder;
67
use torrust_tracker_test_helpers::configuration;
@@ -9,7 +10,6 @@ use uuid::Uuid;
910
use crate::common::logging::{self, logs_contains_a_line_with};
1011
use crate::servers::api::connection_info::{connection_with_invalid_token, connection_with_no_token};
1112
use crate::servers::api::v1::asserts::{assert_stats, assert_token_not_valid, assert_unauthorized};
12-
use crate::servers::api::v1::client::{headers_with_request_id, Client};
1313
use crate::servers::api::Started;
1414

1515
#[tokio::test]

tests/servers/api/v1/contract/context/torrent.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
use std::str::FromStr;
22

33
use bittorrent_primitives::info_hash::InfoHash;
4+
use torrust_tracker_api_client::common::http::{Query, QueryParam};
5+
use torrust_tracker_api_client::v1::client::{headers_with_request_id, Client};
46
use torrust_tracker_lib::servers::apis::v1::context::torrent::resources::peer::Peer;
57
use torrust_tracker_lib::servers::apis::v1::context::torrent::resources::torrent::{self, Torrent};
68
use torrust_tracker_primitives::peer::fixture::PeerBuilder;
79
use torrust_tracker_test_helpers::configuration;
810
use uuid::Uuid;
911

10-
use crate::common::http::{Query, QueryParam};
1112
use crate::common::logging::{self, logs_contains_a_line_with};
1213
use crate::servers::api::connection_info::{connection_with_invalid_token, connection_with_no_token};
1314
use crate::servers::api::v1::asserts::{
1415
assert_bad_request, assert_invalid_infohash_param, assert_not_found, assert_token_not_valid, assert_torrent_info,
1516
assert_torrent_list, assert_torrent_not_known, assert_unauthorized,
1617
};
17-
use crate::servers::api::v1::client::{headers_with_request_id, Client};
1818
use crate::servers::api::v1::contract::fixtures::{
1919
invalid_infohashes_returning_bad_request, invalid_infohashes_returning_not_found,
2020
};

tests/servers/api/v1/contract/context/whitelist.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
use std::str::FromStr;
22

33
use bittorrent_primitives::info_hash::InfoHash;
4+
use torrust_tracker_api_client::v1::client::{headers_with_request_id, Client};
45
use torrust_tracker_test_helpers::configuration;
56
use uuid::Uuid;
67

@@ -10,7 +11,6 @@ use crate::servers::api::v1::asserts::{
1011
assert_failed_to_reload_whitelist, assert_failed_to_remove_torrent_from_whitelist, assert_failed_to_whitelist_torrent,
1112
assert_invalid_infohash_param, assert_not_found, assert_ok, assert_token_not_valid, assert_unauthorized,
1213
};
13-
use crate::servers::api::v1::client::{headers_with_request_id, Client};
1414
use crate::servers::api::v1::contract::fixtures::{
1515
invalid_infohashes_returning_bad_request, invalid_infohashes_returning_not_found,
1616
};

tests/servers/api/v1/mod.rs

-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
11
pub mod asserts;
2-
pub mod client;
32
pub mod contract;

0 commit comments

Comments
 (0)