MCPcopy Create free account
hub / github.com/cowprotocol/services / postgres_insert_quote_metadata

Function postgres_insert_quote_metadata

crates/database/src/quotes.rs:637–677  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

635 #[tokio::test]
636 #[ignore]
637 async fn postgres_insert_quote_metadata() {
638 let mut db = PgConnection::connect("postgresql://").await.unwrap();
639 let mut db = db.begin().await.unwrap();
640 crate::clear_DANGER_(&mut db).await.unwrap();
641
642 let metadata: serde_json::Value = serde_json::from_str(
643 r#"{ "version":"1.0", "interactions": [ {
644 "target": "0x0102030405060708091011121314151617181920",
645 "value": "1",
646 "callData": "0x0A0B0C102030"
647 },{
648 "target": "0xFF02030405060708091011121314151617181920",
649 "value": "2",
650 "callData": "0xFF0B0C102030"
651 }]
652 }"#,
653 )
654 .unwrap();
655
656 let quote = Quote {
657 id: Default::default(),
658 sell_token: ByteArray([1; 20]),
659 buy_token: ByteArray([2; 20]),
660 sell_amount: 3.into(),
661 buy_amount: 4.into(),
662 gas_amount: 5.,
663 gas_price: 6.,
664 sell_token_price: 7.,
665 order_kind: OrderKind::Sell,
666 expiration_timestamp: low_precision_now(),
667 quote_kind: QuoteKind::Standard,
668 solver: ByteArray([1; 20]),
669 verified: false,
670 metadata: metadata.clone(),
671 };
672 // store quote in database
673 let id = save(&mut db, &quote).await.unwrap();
674
675 let stored_quote = get(&mut db, id).await.unwrap().unwrap();
676 assert_eq!(stored_quote.metadata, metadata);
677 }
678}

Callers

nothing calls this directly

Calls 9

connectFunction · 0.85
clear_DANGER_Function · 0.85
ByteArrayClass · 0.85
low_precision_nowFunction · 0.85
unwrapMethod · 0.80
saveFunction · 0.70
getFunction · 0.70
intoMethod · 0.45
cloneMethod · 0.45

Tested by

no test coverage detected