2021-09-01 09:57:06 +00:00
|
|
|
use crate::helper::*;
|
2021-09-04 07:12:53 +00:00
|
|
|
use flowy_test::{builder::UserTestBuilder, init_test_sdk};
|
2021-09-01 09:57:06 +00:00
|
|
|
use flowy_user::{errors::ErrorCode, event::UserEvent::*, prelude::*};
|
|
|
|
use serial_test::*;
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
#[serial]
|
|
|
|
fn sign_up_with_invalid_email() {
|
|
|
|
for email in invalid_email_test_case() {
|
2021-09-04 07:12:53 +00:00
|
|
|
let sdk = init_test_sdk();
|
2021-09-01 09:57:06 +00:00
|
|
|
let request = SignUpRequest {
|
|
|
|
email: email.to_string(),
|
|
|
|
name: valid_name(),
|
2021-09-03 08:43:03 +00:00
|
|
|
password: login_password(),
|
2021-09-01 09:57:06 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
assert_eq!(
|
2021-09-04 07:12:53 +00:00
|
|
|
UserTestBuilder::new(sdk).event(SignUp).request(request).sync_send().error().code,
|
2021-09-01 09:57:06 +00:00
|
|
|
ErrorCode::EmailFormatInvalid
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
#[test]
|
|
|
|
#[serial]
|
|
|
|
fn sign_up_with_invalid_password() {
|
|
|
|
for password in invalid_password_test_case() {
|
2021-09-04 07:12:53 +00:00
|
|
|
let sdk = init_test_sdk();
|
2021-09-01 09:57:06 +00:00
|
|
|
let request = SignUpRequest {
|
|
|
|
email: random_email(),
|
|
|
|
name: valid_name(),
|
|
|
|
password,
|
|
|
|
};
|
|
|
|
|
2021-09-04 07:12:53 +00:00
|
|
|
UserTestBuilder::new(sdk).event(SignUp).request(request).sync_send().assert_error();
|
2021-09-01 09:57:06 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
#[serial]
|
|
|
|
fn sign_in_success() {
|
2021-09-04 07:12:53 +00:00
|
|
|
let sdk = init_test_sdk();
|
|
|
|
let context = UserTestBuilder::new(sdk.clone()).sign_up();
|
|
|
|
let _ = UserTestBuilder::new(sdk.clone()).event(SignOut).sync_send();
|
2021-09-01 09:57:06 +00:00
|
|
|
|
|
|
|
let request = SignInRequest {
|
|
|
|
email: context.user_detail.email,
|
|
|
|
password: context.password,
|
|
|
|
};
|
|
|
|
|
2021-09-04 07:12:53 +00:00
|
|
|
let response = UserTestBuilder::new(sdk)
|
2021-09-01 09:57:06 +00:00
|
|
|
.event(SignIn)
|
|
|
|
.request(request)
|
|
|
|
.sync_send()
|
|
|
|
.parse::<UserDetail>();
|
|
|
|
dbg!(&response);
|
|
|
|
}
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
#[serial]
|
|
|
|
fn sign_in_with_invalid_email() {
|
|
|
|
for email in invalid_email_test_case() {
|
2021-09-04 07:12:53 +00:00
|
|
|
let sdk = init_test_sdk();
|
2021-09-01 09:57:06 +00:00
|
|
|
let request = SignInRequest {
|
|
|
|
email: email.to_string(),
|
2021-09-03 08:43:03 +00:00
|
|
|
password: login_password(),
|
2021-09-01 09:57:06 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
assert_eq!(
|
2021-09-04 07:12:53 +00:00
|
|
|
UserTestBuilder::new(sdk).event(SignIn).request(request).sync_send().error().code,
|
2021-09-01 09:57:06 +00:00
|
|
|
ErrorCode::EmailFormatInvalid
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
#[serial]
|
|
|
|
fn sign_in_with_invalid_password() {
|
|
|
|
for password in invalid_password_test_case() {
|
2021-09-04 07:12:53 +00:00
|
|
|
let sdk = init_test_sdk();
|
2021-09-01 09:57:06 +00:00
|
|
|
let request = SignInRequest {
|
|
|
|
email: random_email(),
|
|
|
|
password,
|
|
|
|
};
|
|
|
|
|
2021-09-04 07:12:53 +00:00
|
|
|
UserTestBuilder::new(sdk).event(SignIn).request(request).sync_send().assert_error();
|
2021-09-01 09:57:06 +00:00
|
|
|
}
|
|
|
|
}
|