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

Function postgres_insert_quote_metadata

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

Source from the content-addressed store, hash-verified

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

Callers

nothing calls this directly

Calls 9

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

Tested by

no test coverage detected