MCPcopy Create free account
hub / github.com/dfinity/orbit / edit_entry

Function edit_entry

core/station/impl/src/services/address_book.rs:235–323  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

233
234 #[tokio::test]
235 async fn edit_entry() {
236 let ctx = setup();
237 let mut address_book_entry = mock_address_book_entry();
238
239 ctx.repository
240 .insert(address_book_entry.to_key(), address_book_entry.clone());
241
242 let metadata_items = vec![
243 MetadataItem {
244 key: "a".to_string(),
245 value: "b".to_string(),
246 },
247 MetadataItem {
248 key: "b".to_string(),
249 value: "c".to_string(),
250 },
251 ];
252 let metadata = Metadata::from(metadata_items.clone());
253 let operation = EditAddressBookEntryOperationInput {
254 address_book_entry_id: address_book_entry.id,
255 address_owner: Some("test_edit".to_string()),
256 change_metadata: Some(ChangeMetadata::ReplaceAllBy(
257 metadata.as_btreemap().to_owned(),
258 )),
259 labels: None,
260 };
261 let result = ctx.service.edit_entry(operation).await;
262 assert!(result.is_ok());
263 let updated_entry = result.unwrap();
264 address_book_entry.address_owner = "test_edit".to_string();
265 address_book_entry.metadata = metadata.clone();
266 assert_eq!(updated_entry, address_book_entry);
267
268 let diff_metadata_dto = Metadata::from(vec![
269 MetadataDTO {
270 key: "a".to_string(),
271 value: "d".to_string(),
272 },
273 MetadataDTO {
274 key: "c".to_string(),
275 value: "e".to_string(),
276 },
277 ]);
278 let new_metadata_dto = Metadata::from(vec![
279 MetadataDTO {
280 key: "a".to_string(),
281 value: "d".to_string(),
282 },
283 MetadataDTO {
284 key: "b".to_string(),
285 value: "c".to_string(),
286 },
287 MetadataDTO {
288 key: "c".to_string(),
289 value: "e".to_string(),
290 },
291 ]);
292

Callers

nothing calls this directly

Calls 6

mock_address_book_entryFunction · 0.85
as_btreemapMethod · 0.80
edit_entryMethod · 0.80
setupFunction · 0.70
insertMethod · 0.45
to_keyMethod · 0.45

Tested by

no test coverage detected