Copy every change file referenced by a manifest into another repository's store (stands in for the `?store` / `?change` transfer).
(from: &Repository, to: &Repository, manifest: &ViewManifest)
| 66 | /// Copy every change file referenced by a manifest into another repository's |
| 67 | /// store (stands in for the `?store` / `?change` transfer). |
| 68 | fn transfer_changes(from: &Repository, to: &Repository, manifest: &ViewManifest) { |
| 69 | for hash in &manifest.changes { |
| 70 | let change = from.load_change(hash).expect("load change"); |
| 71 | let saved = to.save_change(&change).expect("save change"); |
| 72 | assert_eq!(saved, *hash, "content address must survive the transfer"); |
| 73 | } |
| 74 | } |
| 75 | |
| 76 | #[test] |
| 77 | fn export_captures_exact_identity() { |
no test coverage detected