Skip to main content

twitter_internal_api/
lib.rs

1pub mod api;
2pub mod tracing;
3pub mod utils;
4
5#[cfg(test)]
6mod tests {
7    use crate::api::client::ApiClient;
8    use crate::api::params::search_time_line::Product;
9    use crate::tracing::init::init_tracing;
10    use crate::utils::env::{get_envar, load_dotenv};
11
12    #[tokio::test]
13    async fn get_profile() {
14        load_dotenv();
15        init_tracing();
16        let search_timeline_endpoint = get_envar::<String>("GRAPHQL_ENDPOINT").unwrap();
17        let csrf = get_envar::<String>("X_CSRF_TOKEN").unwrap();
18        let bearer = get_envar::<String>("BEARER_TOKEN").unwrap();
19        let cookie = get_envar::<String>("COOKIE").unwrap();
20        let transaction_id = get_envar::<String>("X_CLIENT_TRANSACTION_ID").unwrap();
21        let api_client = ApiClient::new(
22            &search_timeline_endpoint,
23            &csrf,
24            &bearer,
25            &cookie,
26            &transaction_id,
27        )
28        .unwrap();
29        let profile = "___zask___";
30        let response = api_client
31            .search_timeline(20, profile, None, &Product::People)
32            .await;
33        tracing::info!("get_profile response => {:#?}", response);
34    }
35}