()
| 160 | |
| 161 | #[tokio::test] |
| 162 | async fn test_alter_database() { |
| 163 | let ctx = setup_test_server(vec!["default"]).await; |
| 164 | |
| 165 | // Alter database with updates |
| 166 | let mut updates = HashMap::new(); |
| 167 | updates.insert("key1".to_string(), "value1".to_string()); |
| 168 | updates.insert("key2".to_string(), "value2".to_string()); |
| 169 | |
| 170 | let result = ctx.api.alter_database("default", vec![], updates).await; |
| 171 | assert!(result.is_ok(), "failed to alter database: {result:?}"); |
| 172 | |
| 173 | // Verify the updates by getting the database |
| 174 | let db_resp = ctx.api.get_database("default").await.unwrap(); |
| 175 | assert_eq!(db_resp.options.get("key1"), Some(&"value1".to_string())); |
| 176 | assert_eq!(db_resp.options.get("key2"), Some(&"value2".to_string())); |
| 177 | |
| 178 | // Alter database with removals |
| 179 | let result = ctx |
| 180 | .api |
| 181 | .alter_database("default", vec!["key1".to_string()], HashMap::new()) |
| 182 | .await; |
| 183 | assert!(result.is_ok(), "failed to remove key: {result:?}"); |
| 184 | |
| 185 | let db_resp = ctx.api.get_database("default").await.unwrap(); |
| 186 | assert!(!db_resp.options.contains_key("key1")); |
| 187 | assert_eq!(db_resp.options.get("key2"), Some(&"value2".to_string())); |
| 188 | } |
| 189 | |
| 190 | #[tokio::test] |
| 191 | async fn test_alter_database_not_found() { |
nothing calls this directly
no test coverage detected