mirror of https://github.com/wfrsk/violetta.git
[feat] auto creation of uploads directory
This commit is contained in:
parent
9c88f68b08
commit
c8644c7b12
|
@ -1176,6 +1176,7 @@ dependencies = [
|
|||
"mio",
|
||||
"num_cpus",
|
||||
"once_cell",
|
||||
"parking_lot",
|
||||
"pin-project-lite",
|
||||
"signal-hook-registry",
|
||||
"socket2",
|
||||
|
@ -1390,6 +1391,7 @@ version = "0.1.0"
|
|||
dependencies = [
|
||||
"rocket",
|
||||
"serde",
|
||||
"tokio",
|
||||
"uuid",
|
||||
]
|
||||
|
||||
|
|
|
@ -6,9 +6,16 @@ edition = "2021"
|
|||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
rocket = { version = "0.5.0-rc.2", features = ["serde_json", "json"] }
|
||||
serde = "1.0.144"
|
||||
|
||||
[dependencies.rocket]
|
||||
version = "0.5.0-rc.2"
|
||||
features = ["serde_json", "json"]
|
||||
|
||||
[dependencies.tokio]
|
||||
version = "1.21.1"
|
||||
features = ["full"]
|
||||
|
||||
[dependencies.uuid]
|
||||
version = "1.1.2"
|
||||
features = [
|
||||
|
|
10
src/main.rs
10
src/main.rs
|
@ -10,9 +10,10 @@ use rocket::{
|
|||
request::{FromRequest, Outcome},
|
||||
serde::json::Json,
|
||||
serde::*,
|
||||
tokio::{fs::File, io::AsyncWriteExt},
|
||||
*,
|
||||
};
|
||||
use tokio::fs::File;
|
||||
use tokio::io::AsyncWriteExt;
|
||||
use uuid::Uuid;
|
||||
|
||||
#[derive(Default)]
|
||||
|
@ -162,6 +163,9 @@ fn not_found() -> Json<UploadResponse> {
|
|||
|
||||
#[launch]
|
||||
pub fn rocket() -> _ {
|
||||
let current_dir = std::env::current_dir().unwrap();
|
||||
std::fs::create_dir(current_dir.join(relative!("images")))
|
||||
.ok();
|
||||
rocket::custom(
|
||||
Figment::from(rocket::Config::default())
|
||||
.merge(Serialized::defaults(Config::default()))
|
||||
|
@ -174,7 +178,6 @@ pub fn rocket() -> _ {
|
|||
.attach(AdHoc::config::<UploaderConfiguration>())
|
||||
}
|
||||
|
||||
|
||||
#[cfg(test)]
|
||||
mod test {
|
||||
use crate::*;
|
||||
|
@ -202,7 +205,8 @@ mod test {
|
|||
let response_body = response.into_json::<UploadResponse>().unwrap();
|
||||
assert_eq!(response_body.successful, true);
|
||||
assert!(response_body.file_id.is_some());
|
||||
let response = request!(client, get, format!( "/{}", response_body.file_id.unwrap() )).dispatch();
|
||||
let response =
|
||||
request!(client, get, format!("/{}", response_body.file_id.unwrap())).dispatch();
|
||||
assert_eq!(response.into_bytes().unwrap().as_slice(), [0u8; 1024]);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue