forked from PeachCloud/peach-workspace
Fix clippy warnings
This commit is contained in:
parent
64e083f516
commit
4f6fb17069
|
@ -29,10 +29,9 @@ pub mod routes;
|
|||
#[cfg(test)]
|
||||
mod tests;
|
||||
pub mod utils;
|
||||
mod ws;
|
||||
|
||||
use std::{env, thread};
|
||||
use log::{debug, error, info};
|
||||
use log::{info, error};
|
||||
use std::process;
|
||||
|
||||
use rocket::{catchers, routes, Rocket, Build, fs::FileServer};
|
||||
use rocket_dyn_templates::Template;
|
||||
|
@ -47,7 +46,7 @@ use crate::routes::scuttlebutt::*;
|
|||
use crate::routes::settings::admin::*;
|
||||
use crate::routes::settings::dns::*;
|
||||
use crate::routes::settings::network::*;
|
||||
use crate::ws::*;
|
||||
|
||||
|
||||
pub type BoxError = Box<dyn std::error::Error>;
|
||||
|
||||
|
@ -140,5 +139,8 @@ async fn main() {
|
|||
|
||||
// launch rocket
|
||||
info!("Launching Rocket");
|
||||
rocket.launch().await;
|
||||
if let Err(e) = rocket.launch().await {
|
||||
error!("Error in Rocket application: {}", e);
|
||||
process::exit(1);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,9 +3,9 @@ use std::io::Read;
|
|||
|
||||
use rocket::http::{ContentType, Status};
|
||||
use rocket::local::blocking::Client;
|
||||
use rocket::serde::json::{json, Json, Value};
|
||||
|
||||
use crate::utils::build_json_response;
|
||||
|
||||
|
||||
|
||||
use super::init_rocket;
|
||||
|
||||
|
@ -15,7 +15,7 @@ where
|
|||
T: Into<Option<&'static str>>,
|
||||
{
|
||||
let client = Client::tracked(init_rocket()).unwrap();
|
||||
let mut response = client.get(path).dispatch();
|
||||
let response = client.get(path).dispatch();
|
||||
assert_eq!(response.status(), status);
|
||||
|
||||
let body_data = response.into_bytes();
|
||||
|
@ -40,7 +40,7 @@ fn read_file_content(path: &str) -> Vec<u8> {
|
|||
#[test]
|
||||
fn index_html() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client.get("/").dispatch();
|
||||
let response = client.get("/").dispatch();
|
||||
assert_eq!(response.status(), Status::Ok);
|
||||
assert_eq!(response.content_type(), Some(ContentType::HTML));
|
||||
let body = response.into_string().unwrap();
|
||||
|
@ -55,7 +55,7 @@ fn index_html() {
|
|||
#[test]
|
||||
fn network_card_html() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client.get("/network").dispatch();
|
||||
let response = client.get("/network").dispatch();
|
||||
assert_eq!(response.status(), Status::Ok);
|
||||
assert_eq!(response.content_type(), Some(ContentType::HTML));
|
||||
let body = response.into_string().unwrap();
|
||||
|
@ -73,7 +73,7 @@ fn network_card_html() {
|
|||
#[test]
|
||||
fn network_list_html() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client.get("/network/wifi").dispatch();
|
||||
let response = client.get("/network/wifi").dispatch();
|
||||
assert_eq!(response.status(), Status::Ok);
|
||||
assert_eq!(response.content_type(), Some(ContentType::HTML));
|
||||
let body = response.into_string().unwrap();
|
||||
|
@ -95,7 +95,7 @@ fn network_detail_html() {
|
|||
#[test]
|
||||
fn network_add_html() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client.get("/network/wifi/add").dispatch();
|
||||
let response = client.get("/network/wifi/add").dispatch();
|
||||
assert_eq!(response.status(), Status::Ok);
|
||||
assert_eq!(response.content_type(), Some(ContentType::HTML));
|
||||
let body = response.into_string().unwrap();
|
||||
|
@ -109,7 +109,7 @@ fn network_add_html() {
|
|||
#[test]
|
||||
fn network_add_ssid_html() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client.get("/network/wifi/add?ssid=Home").dispatch();
|
||||
let response = client.get("/network/wifi/add?ssid=Home").dispatch();
|
||||
assert_eq!(response.status(), Status::Ok);
|
||||
assert_eq!(response.content_type(), Some(ContentType::HTML));
|
||||
let body = response.into_string().unwrap();
|
||||
|
@ -123,7 +123,7 @@ fn network_add_ssid_html() {
|
|||
#[test]
|
||||
fn device_html() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client.get("/device").dispatch();
|
||||
let response = client.get("/device").dispatch();
|
||||
assert_eq!(response.status(), Status::Ok);
|
||||
assert_eq!(response.content_type(), Some(ContentType::HTML));
|
||||
let body = response.into_string().unwrap();
|
||||
|
@ -136,7 +136,7 @@ fn device_html() {
|
|||
#[test]
|
||||
fn help_html() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client.get("/help").dispatch();
|
||||
let response = client.get("/help").dispatch();
|
||||
assert_eq!(response.status(), Status::Ok);
|
||||
assert_eq!(response.content_type(), Some(ContentType::HTML));
|
||||
let body = response.into_string().unwrap();
|
||||
|
@ -146,7 +146,7 @@ fn help_html() {
|
|||
#[test]
|
||||
fn login_html() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client.get("/login").dispatch();
|
||||
let response = client.get("/login").dispatch();
|
||||
assert_eq!(response.status(), Status::Ok);
|
||||
assert_eq!(response.content_type(), Some(ContentType::HTML));
|
||||
let body = response.into_string().unwrap();
|
||||
|
@ -156,7 +156,7 @@ fn login_html() {
|
|||
#[test]
|
||||
fn messages_html() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client.get("/messages").dispatch();
|
||||
let response = client.get("/messages").dispatch();
|
||||
assert_eq!(response.status(), Status::Ok);
|
||||
assert_eq!(response.content_type(), Some(ContentType::HTML));
|
||||
let body = response.into_string().unwrap();
|
||||
|
@ -166,7 +166,7 @@ fn messages_html() {
|
|||
#[test]
|
||||
fn peers_html() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client.get("/peers").dispatch();
|
||||
let response = client.get("/peers").dispatch();
|
||||
assert_eq!(response.status(), Status::Ok);
|
||||
assert_eq!(response.content_type(), Some(ContentType::HTML));
|
||||
let body = response.into_string().unwrap();
|
||||
|
@ -176,7 +176,7 @@ fn peers_html() {
|
|||
#[test]
|
||||
fn profile_html() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client.get("/profile").dispatch();
|
||||
let response = client.get("/profile").dispatch();
|
||||
assert_eq!(response.status(), Status::Ok);
|
||||
assert_eq!(response.content_type(), Some(ContentType::HTML));
|
||||
let body = response.into_string().unwrap();
|
||||
|
@ -186,7 +186,7 @@ fn profile_html() {
|
|||
#[test]
|
||||
fn shutdown_html() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client.get("/shutdown").dispatch();
|
||||
let response = client.get("/shutdown").dispatch();
|
||||
assert_eq!(response.status(), Status::Ok);
|
||||
assert_eq!(response.content_type(), Some(ContentType::HTML));
|
||||
let body = response.into_string().unwrap();
|
||||
|
@ -196,7 +196,7 @@ fn shutdown_html() {
|
|||
#[test]
|
||||
fn network_usage_html() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client.get("/network/wifi/usage").dispatch();
|
||||
let response = client.get("/network/wifi/usage").dispatch();
|
||||
assert_eq!(response.status(), Status::Ok);
|
||||
assert_eq!(response.content_type(), Some(ContentType::HTML));
|
||||
let body = response.into_string().unwrap();
|
||||
|
@ -287,7 +287,7 @@ fn activate_client() {
|
|||
#[test]
|
||||
fn return_ip() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client
|
||||
let response = client
|
||||
.get("/api/v1/network/ip")
|
||||
.header(ContentType::JSON)
|
||||
.dispatch();
|
||||
|
@ -301,7 +301,7 @@ fn return_ip() {
|
|||
#[test]
|
||||
fn return_rssi() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client
|
||||
let response = client
|
||||
.get("/api/v1/network/rssi")
|
||||
.header(ContentType::JSON)
|
||||
.dispatch();
|
||||
|
@ -314,7 +314,7 @@ fn return_rssi() {
|
|||
#[test]
|
||||
fn return_ssid() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client
|
||||
let response = client
|
||||
.get("/api/v1/network/ssid")
|
||||
.header(ContentType::JSON)
|
||||
.dispatch();
|
||||
|
@ -327,7 +327,7 @@ fn return_ssid() {
|
|||
#[test]
|
||||
fn return_state() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client
|
||||
let response = client
|
||||
.get("/api/v1/network/state")
|
||||
.header(ContentType::JSON)
|
||||
.dispatch();
|
||||
|
@ -342,7 +342,7 @@ fn return_state() {
|
|||
#[test]
|
||||
fn return_status() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client
|
||||
let response = client
|
||||
.get("/api/v1/network/status")
|
||||
.header(ContentType::JSON)
|
||||
.dispatch();
|
||||
|
@ -355,7 +355,7 @@ fn return_status() {
|
|||
#[test]
|
||||
fn scan_networks() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client
|
||||
let response = client
|
||||
.get("/api/v1/network/wifi")
|
||||
.header(ContentType::JSON)
|
||||
.dispatch();
|
||||
|
@ -368,7 +368,7 @@ fn scan_networks() {
|
|||
#[test]
|
||||
fn add_wifi() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client
|
||||
let response = client
|
||||
.post("/api/v1/network/wifi")
|
||||
.header(ContentType::JSON)
|
||||
.body(r#"{ "ssid": "Home", "pass": "Password" }"#)
|
||||
|
@ -382,7 +382,7 @@ fn add_wifi() {
|
|||
#[test]
|
||||
fn remove_wifi() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client
|
||||
let response = client
|
||||
.post("/api/v1/network/wifi/forget")
|
||||
.header(ContentType::JSON)
|
||||
.body(r#"{ "ssid": "Home" }"#)
|
||||
|
@ -396,7 +396,7 @@ fn remove_wifi() {
|
|||
#[test]
|
||||
fn new_password() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client
|
||||
let response = client
|
||||
.post("/api/v1/network/wifi/modify")
|
||||
.header(ContentType::JSON)
|
||||
.body(r#"{ "ssid": "Home", "pass": "Password" }"#)
|
||||
|
@ -410,7 +410,7 @@ fn new_password() {
|
|||
#[test]
|
||||
fn ping_pong() {
|
||||
let client = Client::tracked(init_rocket()).expect("valid rocket instance");
|
||||
let mut response = client
|
||||
let response = client
|
||||
.get("/api/v1/ping")
|
||||
.header(ContentType::JSON)
|
||||
.dispatch();
|
||||
|
@ -474,7 +474,7 @@ fn invalid_get_request() {
|
|||
let client = Client::tracked(init_rocket()).unwrap();
|
||||
|
||||
// try to get a path that doesn't exist
|
||||
let mut res = client
|
||||
let res = client
|
||||
.get("/message/99")
|
||||
.header(ContentType::JSON)
|
||||
.dispatch();
|
||||
|
|
|
@ -1,65 +0,0 @@
|
|||
// NOTE: websockets are not currently in use for PeachCloud but may be in the
|
||||
// future.
|
||||
|
||||
use std::io;
|
||||
use std::thread;
|
||||
|
||||
use log::{debug, info};
|
||||
use websocket::sync::Server;
|
||||
use websocket::{Message, OwnedMessage};
|
||||
|
||||
pub fn websocket_server(address: String) -> io::Result<()> {
|
||||
// start listening for WebSocket connections
|
||||
let ws_server = Server::bind(address)?;
|
||||
|
||||
info!("Listening for WebSocket connections.");
|
||||
for connection in ws_server.filter_map(Result::ok) {
|
||||
// spawn a new thread for each connection
|
||||
thread::spawn(move || {
|
||||
if !connection
|
||||
.protocols()
|
||||
.contains(&"rust-websocket".to_string())
|
||||
{
|
||||
connection.reject().unwrap();
|
||||
return;
|
||||
}
|
||||
|
||||
let mut client = connection.use_protocol("rust-websocket").accept().unwrap();
|
||||
|
||||
let client_ip = client.peer_addr().unwrap();
|
||||
|
||||
debug!("Websocket connection from {}.", client_ip);
|
||||
|
||||
let msg_text = "Websocket successfully connected.".to_string();
|
||||
let message = Message::text(msg_text);
|
||||
client.send_message(&message).unwrap();
|
||||
|
||||
let (mut receiver, mut sender) = client.split().unwrap();
|
||||
|
||||
for message in receiver.incoming_messages() {
|
||||
let message = message.unwrap();
|
||||
|
||||
match message {
|
||||
OwnedMessage::Close(_) => {
|
||||
debug!("Received close message.");
|
||||
let message = Message::close();
|
||||
sender.send_message(&message).unwrap();
|
||||
debug!("Websocket client {} disconnected.", client_ip);
|
||||
return;
|
||||
}
|
||||
OwnedMessage::Ping(data) => {
|
||||
debug!("Received ping message.");
|
||||
let message = Message::pong(data);
|
||||
sender.send_message(&message).unwrap();
|
||||
}
|
||||
_ => {
|
||||
sender.send_message(&message).unwrap();
|
||||
debug!("Received unknown message: {:?}", message);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Ok(())
|
||||
}
|
Loading…
Reference in New Issue