Make login only take owned values

This commit is contained in:
bitfl0wer 2023-09-01 13:01:50 +02:00
parent a8bcb58493
commit e17fcd9e0f
3 changed files with 6 additions and 5 deletions

View File

@ -14,7 +14,7 @@ impl Instance {
/// ///
/// # Reference /// # Reference
/// See <https://docs.spacebar.chat/routes/#post-/auth/login/> /// See <https://docs.spacebar.chat/routes/#post-/auth/login/>
pub async fn login_account(&mut self, login_schema: LoginSchema) -> ChorusResult<ChorusUser> { pub async fn login_account(mut self, login_schema: LoginSchema) -> ChorusResult<ChorusUser> {
let endpoint_url = self.urls.api.clone() + "/auth/login"; let endpoint_url = self.urls.api.clone() + "/auth/login";
let chorus_request = ChorusRequest { let chorus_request = ChorusRequest {
request: Client::new() request: Client::new()

View File

@ -19,7 +19,7 @@ impl Instance {
/// # Reference /// # Reference
/// See <https://docs.spacebar.chat/routes/#post-/auth/register/> /// See <https://docs.spacebar.chat/routes/#post-/auth/register/>
pub async fn register_account( pub async fn register_account(
&mut self, mut self,
register_schema: RegisterSchema, register_schema: RegisterSchema,
) -> ChorusResult<ChorusUser> { ) -> ChorusResult<ChorusUser> {
let endpoint_url = self.urls.api.clone() + "/auth/register"; let endpoint_url = self.urls.api.clone() + "/auth/register";
@ -43,7 +43,7 @@ impl Instance {
self.limits_information.as_mut().unwrap().ratelimits = shell.limits.unwrap(); self.limits_information.as_mut().unwrap().ratelimits = shell.limits.unwrap();
} }
let user_object = self.get_user(token.clone(), None).await.unwrap(); let user_object = self.get_user(token.clone(), None).await.unwrap();
let settings = ChorusUser::get_settings(&token, &self.urls.api.clone(), self).await?; let settings = ChorusUser::get_settings(&token, &self.urls.api.clone(), &mut self).await?;
let mut identify = GatewayIdentifyPayload::common(); let mut identify = GatewayIdentifyPayload::common();
let gateway = Gateway::new(self.urls.wss.clone()).await.unwrap(); let gateway = Gateway::new(self.urls.wss.clone()).await.unwrap();
identify.token = token.clone(); identify.token = token.clone();

View File

@ -31,6 +31,7 @@ impl TestBundle {
..Default::default() ..Default::default()
}; };
self.instance self.instance
.clone()
.register_account(register_schema) .register_account(register_schema)
.await .await
.unwrap() .unwrap()
@ -54,7 +55,7 @@ pub(crate) async fn setup() -> TestBundle {
"ws://localhost:3001".to_string(), "ws://localhost:3001".to_string(),
"http://localhost:3001".to_string(), "http://localhost:3001".to_string(),
); );
let mut instance = Instance::new(urls.clone(), true).await.unwrap(); let instance = Instance::new(urls.clone(), true).await.unwrap();
// Requires the existance of the below user. // Requires the existance of the below user.
let reg = RegisterSchema { let reg = RegisterSchema {
username: "integrationtestuser".into(), username: "integrationtestuser".into(),
@ -91,7 +92,7 @@ pub(crate) async fn setup() -> TestBundle {
default_thread_rate_limit_per_user: Some(0), default_thread_rate_limit_per_user: Some(0),
video_quality_mode: None, video_quality_mode: None,
}; };
let mut user = instance.register_account(reg).await.unwrap(); let mut user = instance.clone().register_account(reg).await.unwrap();
let guild = Guild::create(&mut user, guild_create_schema).await.unwrap(); let guild = Guild::create(&mut user, guild_create_schema).await.unwrap();
let channel = Channel::create(&mut user, guild.id, None, channel_create_schema) let channel = Channel::create(&mut user, guild.id, None, channel_create_schema)
.await .await