remove tests in favor of sytests
This commit is contained in:
		
							parent
							
								
									b192fddf2f
								
							
						
					
					
						commit
						1c85b0fd05
					
				
					 1 changed files with 0 additions and 124 deletions
				
			
		
							
								
								
									
										124
									
								
								src/test.rs
									
									
									
									
									
								
							
							
						
						
									
										124
									
								
								src/test.rs
									
									
									
									
									
								
							|  | @ -1,124 +0,0 @@ | |||
| use super::*; | ||||
| use rocket::local::Client; | ||||
| use serde_json::{json, Value}; | ||||
| 
 | ||||
| fn setup_client() -> Client { | ||||
|     Database::try_remove("localhost"); | ||||
|     let rocket = setup_rocket(); | ||||
|     Client::new(rocket).expect("valid rocket instance") | ||||
| } | ||||
| 
 | ||||
| #[tokio::test] | ||||
| async fn register_login() { | ||||
|     let client = setup_client(); | ||||
|     let mut response = client | ||||
|         .post("/_matrix/client/r0/register?kind=user") | ||||
|         .body(registration_init()) | ||||
|         .dispatch() | ||||
|         .await; | ||||
|     let body = serde_json::from_str::<Value>(&response.body_string().await.unwrap()).unwrap(); | ||||
| 
 | ||||
|     assert_eq!(response.status().code, 401); | ||||
|     assert!(dbg!(&body["flows"]).as_array().unwrap().len() > 0); | ||||
|     assert!(body["session"].as_str().unwrap().len() > 0); | ||||
| } | ||||
| 
 | ||||
| #[tokio::test] | ||||
| async fn login_after_register_correct_password() { | ||||
|     let client = setup_client(); | ||||
|     let mut response = client | ||||
|         .post("/_matrix/client/r0/register?kind=user") | ||||
|         .body(registration_init()) | ||||
|         .dispatch() | ||||
|         .await; | ||||
|     let body = serde_json::from_str::<Value>(&response.body_string().await.unwrap()).unwrap(); | ||||
|     let session = body["session"].clone(); | ||||
| 
 | ||||
|     let response = client | ||||
|         .post("/_matrix/client/r0/register?kind=user") | ||||
|         .body(registration(session.as_str().unwrap())) | ||||
|         .dispatch() | ||||
|         .await; | ||||
|     assert_eq!(response.status().code, 200); | ||||
| 
 | ||||
|     let login_response = client | ||||
|         .post("/_matrix/client/r0/login") | ||||
|         .body(login_with_password("ilovebananas")) | ||||
|         .dispatch() | ||||
|         .await; | ||||
|     assert_eq!(login_response.status().code, 200); | ||||
| } | ||||
| 
 | ||||
| #[tokio::test] | ||||
| async fn login_after_register_incorrect_password() { | ||||
|     let client = setup_client(); | ||||
|     let mut response = client | ||||
|         .post("/_matrix/client/r0/register?kind=user") | ||||
|         .body(registration_init()) | ||||
|         .dispatch() | ||||
|         .await; | ||||
|     let body = serde_json::from_str::<Value>(&response.body_string().await.unwrap()).unwrap(); | ||||
|     let session = body["session"].clone(); | ||||
| 
 | ||||
|     let response = client | ||||
|         .post("/_matrix/client/r0/register?kind=user") | ||||
|         .body(registration(session.as_str().unwrap())) | ||||
|         .dispatch() | ||||
|         .await; | ||||
|     assert_eq!(response.status().code, 200); | ||||
| 
 | ||||
|     let mut login_response = client | ||||
|         .post("/_matrix/client/r0/login") | ||||
|         .body(login_with_password("idontlovebananas")) | ||||
|         .dispatch() | ||||
|         .await; | ||||
|     let body = serde_json::from_str::<Value>(&login_response.body_string().await.unwrap()).unwrap(); | ||||
|     assert_eq!( | ||||
|         body.as_object() | ||||
|             .unwrap() | ||||
|             .get("errcode") | ||||
|             .unwrap() | ||||
|             .as_str() | ||||
|             .unwrap(), | ||||
|         "M_FORBIDDEN" | ||||
|     ); | ||||
|     assert_eq!(login_response.status().code, 403); | ||||
| } | ||||
| 
 | ||||
| fn registration_init() -> &'static str { | ||||
|     r#"{
 | ||||
|     "username": "cheeky_monkey", | ||||
|     "password": "ilovebananas", | ||||
|     "device_id": "GHTYAJCE", | ||||
|     "initial_device_display_name": "Jungle Phone", | ||||
|     "inhibit_login": false | ||||
|             }"#
 | ||||
| } | ||||
| 
 | ||||
| fn registration(session: &str) -> String { | ||||
|     json!({ | ||||
|         "auth": { | ||||
|             "session": session, | ||||
|             "type": "m.login.dummy" | ||||
|         }, | ||||
|         "username": "cheeky_monkey", | ||||
|         "password": "ilovebananas", | ||||
|         "device_id": "GHTYAJCE", | ||||
|         "initial_device_display_name": "Jungle Phone", | ||||
|         "inhibit_login": false | ||||
|     }) | ||||
|     .to_string() | ||||
| } | ||||
| 
 | ||||
| fn login_with_password(password: &str) -> String { | ||||
|     json!({ | ||||
|         "type": "m.login.password", | ||||
|         "identifier": { | ||||
|             "type": "m.id.user", | ||||
|             "user": "cheeky_monkey" | ||||
|         }, | ||||
|         "password": password, | ||||
|         "initial_device_display_name": "Jungle Phone" | ||||
|     }) | ||||
|     .to_string() | ||||
| } | ||||
		Loading…
	
		Reference in a new issue