Skip to content

Commit 75e0c8d

Browse files
committed
refactor: make backend storage interface async
This change refactors the backend storage interface to be asynchronous, making it easier to support a wider range of storage backends in the future.
1 parent 49c5aed commit 75e0c8d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

66 files changed

+2547
-1443
lines changed

src/cli/command/auth.rs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -93,9 +93,9 @@ mod test {
9393

9494
use crate::test_utils::TestHttpServer;
9595

96-
#[test]
97-
fn test_cli_auth_help() {
98-
let mut test_http_server = TestHttpServer::new("test_cli_auth_help", true);
96+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
97+
async fn test_cli_auth_help() {
98+
let mut test_http_server = TestHttpServer::new("test_cli_auth_help", true).await;
9999
test_http_server.token = test_http_server.root_token.clone();
100100

101101
// auth help token/
@@ -122,9 +122,9 @@ mod test {
122122
assert!(ret.unwrap().contains("Usage: rvault login -method=cert"));
123123
}
124124

125-
#[test]
126-
fn test_cli_auth_list() {
127-
let mut test_http_server = TestHttpServer::new("test_cli_auth_list", true);
125+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
126+
async fn test_cli_auth_list() {
127+
let mut test_http_server = TestHttpServer::new("test_cli_auth_list", true).await;
128128
test_http_server.token = test_http_server.root_token.clone();
129129

130130
// test auth list
@@ -137,9 +137,9 @@ mod test {
137137
assert_eq!(list["token/"]["type"], Value::String("token".into()));
138138
}
139139

140-
#[test]
141-
fn test_cli_auth_enable_disable() {
142-
let mut test_http_server = TestHttpServer::new("test_cli_auth_enable_disable", true);
140+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
141+
async fn test_cli_auth_enable_disable() {
142+
let mut test_http_server = TestHttpServer::new("test_cli_auth_enable_disable", true).await;
143143
test_http_server.token = test_http_server.root_token.clone();
144144

145145
// test auth enable
@@ -196,9 +196,9 @@ mod test {
196196
assert!(ret.is_err());
197197
}
198198

199-
#[test]
200-
fn test_cli_auth_move() {
201-
let mut test_http_server = TestHttpServer::new("test_cli_auth_move", true);
199+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
200+
async fn test_cli_auth_move() {
201+
let mut test_http_server = TestHttpServer::new("test_cli_auth_move", true).await;
202202
test_http_server.token = test_http_server.root_token.clone();
203203

204204
// test auth enable

src/cli/command/login.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -165,9 +165,9 @@ mod test {
165165

166166
use crate::test_utils::TestHttpServer;
167167

168-
#[test]
169-
fn test_cli_login() {
170-
let mut test_http_server = TestHttpServer::new("test_cli_login", true);
168+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
169+
async fn test_cli_login() {
170+
let mut test_http_server = TestHttpServer::new("test_cli_login", true).await;
171171

172172
// set token
173173
test_http_server.token = test_http_server.root_token.clone();

src/cli/command/mod.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -238,9 +238,9 @@ pub trait CommandExecutor {
238238
mod test {
239239
use crate::{errors::RvError, rv_error_string, test_utils::TestHttpServer};
240240

241-
#[test]
242-
fn test_cli_logical() {
243-
let mut test_http_server = TestHttpServer::new("test_cli_read", true);
241+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
242+
async fn test_cli_logical() {
243+
let mut test_http_server = TestHttpServer::new("test_cli_read", true).await;
244244
test_http_server.token = test_http_server.root_token.clone();
245245

246246
// There is no data by default, and reading should fail.

src/cli/command/operator_seal.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,9 @@ mod test {
6767

6868
use crate::test_utils::TestHttpServer;
6969

70-
#[test]
71-
fn test_cli_operator_seal() {
72-
let test_http_server = TestHttpServer::new("test_cli_operator_seal", true);
70+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
71+
async fn test_cli_operator_seal() {
72+
let test_http_server = TestHttpServer::new("test_cli_operator_seal", true).await;
7373

7474
// rvault status
7575
let ret = test_http_server.cli(&["status"], &["--format=raw"]);

src/cli/command/policy.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,9 @@ impl Policy {
6565
mod test {
6666
use crate::{errors::RvError, rv_error_string, test_utils::TestHttpServer};
6767

68-
#[test]
69-
fn test_cli_policy() {
70-
let mut test_http_server = TestHttpServer::new("test_cli_policy", true);
68+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
69+
async fn test_cli_policy() {
70+
let mut test_http_server = TestHttpServer::new("test_cli_policy", true).await;
7171
test_http_server.token = test_http_server.root_token.clone();
7272

7373
// There is no data by default, and reading should fail.

src/cli/command/policy_delete.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,9 @@ impl CommandExecutor for Delete {
6161
mod test {
6262
use crate::test_utils::TestHttpServer;
6363

64-
#[test]
65-
fn test_cli_policy_delete() {
66-
let mut test_http_server = TestHttpServer::new("test_cli_policy_delete", true);
64+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
65+
async fn test_cli_policy_delete() {
66+
let mut test_http_server = TestHttpServer::new("test_cli_policy_delete", true).await;
6767
test_http_server.token = test_http_server.root_token.clone();
6868

6969
// delete default should be failed

src/cli/command/policy_list.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,9 @@ impl CommandExecutor for List {
5353
mod test {
5454
use crate::test_utils::TestHttpServer;
5555

56-
#[test]
57-
fn test_cli_policy_list() {
58-
let mut test_http_server = TestHttpServer::new("test_cli_policy_list", true);
56+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
57+
async fn test_cli_policy_list() {
58+
let mut test_http_server = TestHttpServer::new("test_cli_policy_list", true).await;
5959
test_http_server.token = test_http_server.root_token.clone();
6060

6161
// list policy

src/cli/command/policy_read.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,9 @@ mod test {
7272
errors::RvError, modules::policy::policy_store::DEFAULT_POLICY, rv_error_string, test_utils::TestHttpServer,
7373
};
7474

75-
#[test]
76-
fn test_cli_policy_read() {
77-
let mut test_http_server = TestHttpServer::new("test_cli_policy_read", true);
75+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
76+
async fn test_cli_policy_read() {
77+
let mut test_http_server = TestHttpServer::new("test_cli_policy_read", true).await;
7878
test_http_server.token = test_http_server.root_token.clone();
7979

8080
// read a not exist policy should be failed

src/cli/command/policy_write.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,9 +82,9 @@ mod test {
8282

8383
use crate::test_utils::TestHttpServer;
8484

85-
#[test]
86-
fn test_cli_policy_write() {
87-
let mut test_http_server = TestHttpServer::new("test_cli_policy_write", true);
85+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
86+
async fn test_cli_policy_write() {
87+
let mut test_http_server = TestHttpServer::new("test_cli_policy_write", true).await;
8888
test_http_server.token = test_http_server.root_token.clone();
8989

9090
let test_policy = r#"path "secret/" {

src/cli/command/secrets.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -63,9 +63,9 @@ mod test {
6363

6464
use crate::test_utils::TestHttpServer;
6565

66-
#[test]
67-
fn test_cli_secrets_list() {
68-
let mut test_http_server = TestHttpServer::new("test_cli_secrets_list", true);
66+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
67+
async fn test_cli_secrets_list() {
68+
let mut test_http_server = TestHttpServer::new("test_cli_secrets_list", true).await;
6969
test_http_server.token = test_http_server.root_token.clone();
7070

7171
let ret = test_http_server.cli(&["secrets", "list"], &["--format=json"]);
@@ -78,9 +78,9 @@ mod test {
7878
assert_eq!(list["sys/"]["type"], Value::String("system".into()));
7979
}
8080

81-
#[test]
82-
fn test_cli_secret_enable_disable() {
83-
let mut test_http_server = TestHttpServer::new("test_cli_secret_enable_disable", true);
81+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
82+
async fn test_cli_secret_enable_disable() {
83+
let mut test_http_server = TestHttpServer::new("test_cli_secret_enable_disable", true).await;
8484
test_http_server.token = test_http_server.root_token.clone();
8585

8686
// test secrets enable
@@ -124,9 +124,9 @@ mod test {
124124
assert!(list.get("kv1").is_none());
125125
}
126126

127-
#[test]
128-
fn test_cli_secret_move() {
129-
let mut test_http_server = TestHttpServer::new("test_cli_secret_move", true);
127+
#[maybe_async::test(feature = "sync_handler", async(all(not(feature = "sync_handler")), tokio::test))]
128+
async fn test_cli_secret_move() {
129+
let mut test_http_server = TestHttpServer::new("test_cli_secret_move", true).await;
130130
test_http_server.token = test_http_server.root_token.clone();
131131

132132
// test secrets enable

0 commit comments

Comments
 (0)