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

Function postgres_insert_quote_metadata

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

Source from the content-addressed store, hash-verified

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

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