update
This commit is contained in:
parent
a621fe3528
commit
8d25b1469c
|
@ -1,8 +1,14 @@
|
||||||
{
|
{
|
||||||
|
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
||||||
"extends": [
|
"extends": [
|
||||||
"config:base"
|
"config:base",
|
||||||
|
"schedule:weekly",
|
||||||
|
"group:allNonMajor",
|
||||||
|
":semanticCommits"
|
||||||
|
],
|
||||||
|
"labels": [
|
||||||
|
"dependencies"
|
||||||
],
|
],
|
||||||
"prHourlyLimit": 0,
|
|
||||||
"automergeType": "pr",
|
"automergeType": "pr",
|
||||||
"prCreation": "immediate",
|
"prCreation": "immediate",
|
||||||
"packageRules": [
|
"packageRules": [
|
||||||
|
@ -16,4 +22,4 @@
|
||||||
"automerge": true
|
"automerge": true
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -3,10 +3,10 @@ use std::fs;
|
||||||
use axum::{extract::rejection::JsonRejection, Extension, Json};
|
use axum::{extract::rejection::JsonRejection, Extension, Json};
|
||||||
use axum_auth::AuthBearer;
|
use axum_auth::AuthBearer;
|
||||||
use homedisk_database::Database;
|
use homedisk_database::Database;
|
||||||
use homedisk_types::fs::create_dir::Request;
|
|
||||||
use homedisk_types::{
|
use homedisk_types::{
|
||||||
config::Config,
|
config::Config,
|
||||||
errors::{FsError, ServerError},
|
errors::{FsError, ServerError},
|
||||||
|
fs::create_dir::Request,
|
||||||
};
|
};
|
||||||
|
|
||||||
use crate::middleware::{find_user, validate_json, validate_jwt};
|
use crate::middleware::{find_user, validate_json, validate_jwt};
|
||||||
|
@ -42,6 +42,6 @@ pub async fn handle(
|
||||||
fs::create_dir_all(path)
|
fs::create_dir_all(path)
|
||||||
.map_err(|err| ServerError::FsError(FsError::CreateDirectory(err.to_string())))?;
|
.map_err(|err| ServerError::FsError(FsError::CreateDirectory(err.to_string())))?;
|
||||||
|
|
||||||
// send a blank Response
|
// send aan empty Response
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
use std::{fs, path::Path};
|
use std::{fs, path::Path};
|
||||||
|
|
||||||
use axum::extract::Query;
|
use axum::{extract::Query, Extension};
|
||||||
use axum::Extension;
|
|
||||||
use axum_auth::AuthBearer;
|
use axum_auth::AuthBearer;
|
||||||
use homedisk_database::Database;
|
use homedisk_database::Database;
|
||||||
use homedisk_types::{
|
use homedisk_types::{
|
||||||
|
@ -55,6 +54,6 @@ pub async fn handle(
|
||||||
.map_err(|err| ServerError::FsError(FsError::DeleteDirectory(err.to_string())))?;
|
.map_err(|err| ServerError::FsError(FsError::DeleteDirectory(err.to_string())))?;
|
||||||
}
|
}
|
||||||
|
|
||||||
// send a blank Response
|
// send an empty Response
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
use std::fs;
|
use std::fs;
|
||||||
|
|
||||||
use axum::extract::Query;
|
use axum::{extract::Query, Extension};
|
||||||
use axum::Extension;
|
|
||||||
use axum_auth::AuthBearer;
|
use axum_auth::AuthBearer;
|
||||||
use homedisk_database::Database;
|
use homedisk_database::Database;
|
||||||
use homedisk_types::fs::upload::Pagination;
|
use homedisk_types::fs::upload::Pagination;
|
||||||
|
|
|
@ -5,11 +5,10 @@ use axum::{extract::rejection::JsonRejection, Extension, Json};
|
||||||
use axum_auth::AuthBearer;
|
use axum_auth::AuthBearer;
|
||||||
use byte_unit::Byte;
|
use byte_unit::Byte;
|
||||||
use homedisk_database::Database;
|
use homedisk_database::Database;
|
||||||
use homedisk_types::fs::list::DirInfo;
|
|
||||||
use homedisk_types::{
|
use homedisk_types::{
|
||||||
config::Config,
|
config::Config,
|
||||||
errors::{FsError, ServerError},
|
errors::{FsError, ServerError},
|
||||||
fs::list::{FileInfo, Request, Response},
|
fs::list::{DirInfo, FileInfo, Request, Response},
|
||||||
};
|
};
|
||||||
|
|
||||||
use crate::middleware::{find_user, validate_json, validate_jwt};
|
use crate::middleware::{find_user, validate_json, validate_jwt};
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
use std::io::Write;
|
use std::io::Write;
|
||||||
use std::{fs, path::Path};
|
use std::{fs, path::Path};
|
||||||
|
|
||||||
use axum::extract::{Multipart, Query};
|
use axum::{
|
||||||
use axum::Extension;
|
extract::{Multipart, Query},
|
||||||
|
Extension,
|
||||||
|
};
|
||||||
use axum_auth::AuthBearer;
|
use axum_auth::AuthBearer;
|
||||||
use futures::TryStreamExt;
|
use futures::TryStreamExt;
|
||||||
use homedisk_database::Database;
|
use homedisk_database::Database;
|
||||||
|
@ -75,6 +77,6 @@ pub async fn handle(
|
||||||
.await
|
.await
|
||||||
.map_err(|err| ServerError::FsError(FsError::WriteFile(err.to_string())))?;
|
.map_err(|err| ServerError::FsError(FsError::WriteFile(err.to_string())))?;
|
||||||
|
|
||||||
// send a blank Response
|
// send an empty Response
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,14 +19,26 @@ mod tests {
|
||||||
|
|
||||||
use super::validate_jwt;
|
use super::validate_jwt;
|
||||||
|
|
||||||
|
const SECRET: &[u8] = b"secret";
|
||||||
|
const INVALID_SECRET: &[u8] = b"invalid secret";
|
||||||
|
|
||||||
/// Test a token validation
|
/// Test a token validation
|
||||||
#[test]
|
#[test]
|
||||||
fn validate_token() {
|
fn validate_token() {
|
||||||
let secret = b"secret";
|
|
||||||
let user = User::new("username", "password");
|
let user = User::new("username", "password");
|
||||||
|
|
||||||
let token = create_token(&user, secret, 1).unwrap();
|
let token = create_token(&user, SECRET, 1).unwrap();
|
||||||
|
|
||||||
validate_jwt(secret, &token).unwrap();
|
validate_jwt(SECRET, &token).unwrap();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Test a token validation (invalid secret)
|
||||||
|
#[test]
|
||||||
|
fn validate_token_invalid_secret() {
|
||||||
|
let user = User::new("username", "password");
|
||||||
|
|
||||||
|
let token = create_token(&user, SECRET, 1).unwrap();
|
||||||
|
|
||||||
|
validate_jwt(INVALID_SECRET, &token).unwrap_err();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue