Make register and login return User
This commit is contained in:
parent
b199d11889
commit
f06b43a8fe
|
@ -12,7 +12,7 @@ pub mod login {
|
||||||
pub async fn login_account(
|
pub async fn login_account(
|
||||||
&mut self,
|
&mut self,
|
||||||
login_schema: &LoginSchema,
|
login_schema: &LoginSchema,
|
||||||
) -> Result<LoginResult, InstanceServerError> {
|
) -> Result<crate::api::types::User, InstanceServerError> {
|
||||||
let requester = &mut self.requester;
|
let requester = &mut self.requester;
|
||||||
let json_schema = json!(login_schema);
|
let json_schema = json!(login_schema);
|
||||||
let client = Client::new();
|
let client = Client::new();
|
||||||
|
@ -49,9 +49,21 @@ pub mod login {
|
||||||
return Err(InstanceServerError::InvalidFormBodyError { error_type, error });
|
return Err(InstanceServerError::InvalidFormBodyError { error_type, error });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let cloned_limits = self.limits.clone();
|
||||||
let login_result: LoginResult = from_str(&response_text_string).unwrap();
|
let login_result: LoginResult = from_str(&response_text_string).unwrap();
|
||||||
|
let object = self
|
||||||
|
.get_user(login_result.token.clone(), None)
|
||||||
|
.await
|
||||||
|
.unwrap();
|
||||||
|
let user = crate::api::types::User::new(
|
||||||
|
self,
|
||||||
|
login_result.token,
|
||||||
|
cloned_limits,
|
||||||
|
login_result.settings,
|
||||||
|
Some(object),
|
||||||
|
);
|
||||||
|
|
||||||
Ok(login_result)
|
Ok(user)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,7 +5,7 @@ pub mod register {
|
||||||
use crate::{
|
use crate::{
|
||||||
api::{limits::LimitType, schemas::RegisterSchema, types::ErrorResponse},
|
api::{limits::LimitType, schemas::RegisterSchema, types::ErrorResponse},
|
||||||
errors::InstanceServerError,
|
errors::InstanceServerError,
|
||||||
instance::{Instance, Token},
|
instance::Instance,
|
||||||
};
|
};
|
||||||
|
|
||||||
impl Instance {
|
impl Instance {
|
||||||
|
@ -19,7 +19,7 @@ pub mod register {
|
||||||
pub async fn register_account(
|
pub async fn register_account(
|
||||||
&mut self,
|
&mut self,
|
||||||
register_schema: &RegisterSchema,
|
register_schema: &RegisterSchema,
|
||||||
) -> Result<Token, InstanceServerError> {
|
) -> Result<crate::api::types::User, InstanceServerError> {
|
||||||
let json_schema = json!(register_schema);
|
let json_schema = json!(register_schema);
|
||||||
let limited_requester = &mut self.requester;
|
let limited_requester = &mut self.requester;
|
||||||
let client = Client::new();
|
let client = Client::new();
|
||||||
|
@ -55,9 +55,25 @@ pub mod register {
|
||||||
}
|
}
|
||||||
return Err(InstanceServerError::InvalidFormBodyError { error_type, error });
|
return Err(InstanceServerError::InvalidFormBodyError { error_type, error });
|
||||||
}
|
}
|
||||||
Ok(Token {
|
let user_object = self
|
||||||
token: response_text_string,
|
.get_user(response_text_string.clone(), None)
|
||||||
})
|
.await
|
||||||
|
.unwrap();
|
||||||
|
let settings = crate::api::types::User::get_settings(
|
||||||
|
&response_text_string,
|
||||||
|
&self.urls.get_api().to_string(),
|
||||||
|
&mut self.limits,
|
||||||
|
)
|
||||||
|
.await
|
||||||
|
.unwrap();
|
||||||
|
let user: crate::api::types::User = crate::api::types::User::new(
|
||||||
|
self,
|
||||||
|
response_text_string.clone(),
|
||||||
|
cloned_limits,
|
||||||
|
settings,
|
||||||
|
Some(user_object),
|
||||||
|
);
|
||||||
|
Ok(user)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -117,7 +133,7 @@ mod test {
|
||||||
AuthUsername::new("Hiiii".to_string()).unwrap(),
|
AuthUsername::new("Hiiii".to_string()).unwrap(),
|
||||||
Some(AuthPassword::new("mysupersecurepass123!".to_string()).unwrap()),
|
Some(AuthPassword::new("mysupersecurepass123!".to_string()).unwrap()),
|
||||||
true,
|
true,
|
||||||
Some(AuthEmail::new("random978234@aaaa.xyz".to_string()).unwrap()),
|
Some(AuthEmail::new("three12@aaaa.xyz".to_string()).unwrap()),
|
||||||
None,
|
None,
|
||||||
None,
|
None,
|
||||||
Some("2000-01-01".to_string()),
|
Some("2000-01-01".to_string()),
|
||||||
|
|
Loading…
Reference in New Issue