MCPcopy Create free account
hub / github.com/atomicdotdev/atomic / test_delete_existing_view

Function test_delete_existing_view

atomic-cli/src/commands/view/delete.rs:246–280  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

244 #[test]
245 #[serial]
246 fn test_delete_existing_view() {
247 use tempfile::tempdir;
248
249 let _guard = DirGuard::new();
250 let temp = tempdir().unwrap();
251 let repo_path = temp.path();
252
253 // Initialize a repository and create a view, then drop to release lock
254 {
255 let mut repo = Repository::init(repo_path).unwrap();
256 // Create a draft view (shared views cannot be deleted)
257 {
258 use atomic_core::pristine::{MutTxnT, ViewScope, ViewTxnT};
259 let mut txn = repo.pristine().write_txn().unwrap();
260 let dev = txn.get_view("dev").unwrap().unwrap();
261 txn.create_view("to-delete", ViewScope::Draft, Some(dev.id))
262 .unwrap();
263 txn.commit().unwrap();
264 }
265 // Verify it exists
266 assert!(repo.view_exists("to-delete").unwrap());
267 }
268
269 // Change to the repo directory
270 std::env::set_current_dir(repo_path).unwrap();
271
272 // Delete the view
273 let cmd = Delete::with_name("to-delete");
274 let result = cmd.run();
275 assert!(result.is_ok());
276
277 // Verify it's gone
278 let repo = Repository::open(repo_path).unwrap();
279 assert!(!repo.view_exists("to-delete").unwrap());
280 }
281
282 #[test]
283 #[serial]

Callers

nothing calls this directly

Calls 8

write_txnMethod · 0.80
pristineMethod · 0.80
commitMethod · 0.80
unwrapMethod · 0.45
pathMethod · 0.45
get_viewMethod · 0.45
create_viewMethod · 0.45
runMethod · 0.45

Tested by

no test coverage detected