@@ -16,8 +16,9 @@ use std::time::Duration;
1616use log:: { debug, error, info, trace, warn} ;
1717
1818use bitcoin:: consensus:: encode:: deserialize;
19- use bitcoin:: hashes:: hex:: { FromHex , ToHex } ;
19+ use bitcoin:: hashes:: hex:: FromHex ;
2020use bitcoin:: { Script , Txid } ;
21+ use bitcoin_private:: hex:: exts:: DisplayHex ;
2122
2223#[ cfg( feature = "use-openssl" ) ]
2324use openssl:: ssl:: { SslConnector , SslMethod , SslStream , SslVerifyMode } ;
@@ -974,7 +975,7 @@ impl<T: Read + Write> ElectrumApi for RawClient<T> {
974975 }
975976
976977 fn transaction_get_raw ( & self , txid : & Txid ) -> Result < Vec < u8 > , Error > {
977- let params = vec ! [ Param :: String ( txid . to_hex ( ) ) ] ;
978+ let params = vec ! [ Param :: String ( format! ( "{:x}" , txid ) ) ] ;
978979 let req = Request :: new_id (
979980 self . last_id . fetch_add ( 1 , Ordering :: SeqCst ) ,
980981 "blockchain.transaction.get" ,
@@ -1023,7 +1024,7 @@ impl<T: Read + Write> ElectrumApi for RawClient<T> {
10231024 }
10241025
10251026 fn transaction_broadcast_raw ( & self , raw_tx : & [ u8 ] ) -> Result < Txid , Error > {
1026- let params = vec ! [ Param :: String ( raw_tx. to_hex ( ) ) ] ;
1027+ let params = vec ! [ Param :: String ( raw_tx. to_lower_hex_string ( ) ) ] ;
10271028 let req = Request :: new_id (
10281029 self . last_id . fetch_add ( 1 , Ordering :: SeqCst ) ,
10291030 "blockchain.transaction.broadcast" ,
@@ -1035,7 +1036,7 @@ impl<T: Read + Write> ElectrumApi for RawClient<T> {
10351036 }
10361037
10371038 fn transaction_get_merkle ( & self , txid : & Txid , height : usize ) -> Result < GetMerkleRes , Error > {
1038- let params = vec ! [ Param :: String ( txid . to_hex ( ) ) , Param :: Usize ( height) ] ;
1039+ let params = vec ! [ Param :: String ( format! ( "{:x}" , txid ) ) , Param :: Usize ( height) ] ;
10391040 let req = Request :: new_id (
10401041 self . last_id . fetch_add ( 1 , Ordering :: SeqCst ) ,
10411042 "blockchain.transaction.get_merkle" ,
@@ -1076,6 +1077,8 @@ impl<T: Read + Write> ElectrumApi for RawClient<T> {
10761077
10771078#[ cfg( test) ]
10781079mod test {
1080+ use std:: str:: FromStr ;
1081+
10791082 use super :: RawClient ;
10801083 use api:: ElectrumApi ;
10811084
@@ -1119,7 +1122,7 @@ mod test {
11191122 let client = RawClient :: new ( get_test_server ( ) , None ) . unwrap ( ) ;
11201123
11211124 let resp = client. block_header ( 0 ) . unwrap ( ) ;
1122- assert_eq ! ( resp. version, 0x01 ) ;
1125+ assert_eq ! ( resp. version, bitcoin :: block :: Version :: ONE ) ;
11231126 assert_eq ! ( resp. time, 1231006505 ) ;
11241127 assert_eq ! ( resp. nonce, 0x7c2bac1d ) ;
11251128 }
@@ -1160,7 +1163,9 @@ mod test {
11601163
11611164 // Realistically nobody will ever spend from this address, so we can expect the balance to
11621165 // increase over time
1163- let addr = bitcoin:: Address :: from_str ( "1CounterpartyXXXXXXXXXXXXXXXUWLpVr" ) . unwrap ( ) ;
1166+ let addr = bitcoin:: Address :: from_str ( "1CounterpartyXXXXXXXXXXXXXXXUWLpVr" )
1167+ . unwrap ( )
1168+ . assume_checked ( ) ;
11641169 let resp = client. script_get_balance ( & addr. script_pubkey ( ) ) . unwrap ( ) ;
11651170 assert ! ( resp. confirmed >= 213091301265 ) ;
11661171 }
@@ -1169,38 +1174,40 @@ mod test {
11691174 fn test_script_get_history ( ) {
11701175 use std:: str:: FromStr ;
11711176
1172- use bitcoin:: hashes:: hex:: FromHex ;
11731177 use bitcoin:: Txid ;
11741178
11751179 let client = RawClient :: new ( get_test_server ( ) , None ) . unwrap ( ) ;
11761180
11771181 // Mt.Gox hack address
11781182 let addr = bitcoin:: Address :: from_str ( "1FeexV6bAHb8ybZjqQMjJrcCrHGW9sb6uF" ) . unwrap ( ) ;
1179- let resp = client. script_get_history ( & addr. script_pubkey ( ) ) . unwrap ( ) ;
1183+ let resp = client
1184+ . script_get_history ( & addr. payload . script_pubkey ( ) )
1185+ . unwrap ( ) ;
11801186
11811187 assert ! ( resp. len( ) >= 328 ) ;
11821188 assert_eq ! (
11831189 resp[ 0 ] . tx_hash,
1184- Txid :: from_hex ( "e67a0550848b7932d7796aeea16ab0e48a5cfe81c4e8cca2c5b03e0416850114" )
1190+ Txid :: from_str ( "e67a0550848b7932d7796aeea16ab0e48a5cfe81c4e8cca2c5b03e0416850114" )
11851191 . unwrap( )
11861192 ) ;
11871193 }
11881194
11891195 #[ test]
11901196 fn test_script_list_unspent ( ) {
1191- use bitcoin:: hashes:: hex:: FromHex ;
11921197 use bitcoin:: Txid ;
11931198 use std:: str:: FromStr ;
11941199
11951200 let client = RawClient :: new ( get_test_server ( ) , None ) . unwrap ( ) ;
11961201
11971202 // Mt.Gox hack address
11981203 let addr = bitcoin:: Address :: from_str ( "1FeexV6bAHb8ybZjqQMjJrcCrHGW9sb6uF" ) . unwrap ( ) ;
1199- let resp = client. script_list_unspent ( & addr. script_pubkey ( ) ) . unwrap ( ) ;
1204+ let resp = client
1205+ . script_list_unspent ( & addr. payload . script_pubkey ( ) )
1206+ . unwrap ( ) ;
12001207
12011208 assert ! ( resp. len( ) >= 329 ) ;
12021209 let txid = "e67a0550848b7932d7796aeea16ab0e48a5cfe81c4e8cca2c5b03e0416850114" ;
1203- let txid = Txid :: from_hex ( txid) . unwrap ( ) ;
1210+ let txid = Txid :: from_str ( txid) . unwrap ( ) ;
12041211 let txs: Vec < _ > = resp. iter ( ) . filter ( |e| e. tx_hash == txid) . collect ( ) ;
12051212 assert_eq ! ( txs. len( ) , 1 ) ;
12061213 assert_eq ! ( txs[ 0 ] . value, 7995600000000 ) ;
@@ -1217,9 +1224,12 @@ mod test {
12171224 // Mt.Gox hack address
12181225 let script_1 = bitcoin:: Address :: from_str ( "1FeexV6bAHb8ybZjqQMjJrcCrHGW9sb6uF" )
12191226 . unwrap ( )
1227+ . payload
12201228 . script_pubkey ( ) ;
12211229
1222- let resp = client. batch_script_list_unspent ( vec ! [ & script_1] ) . unwrap ( ) ;
1230+ let resp = client
1231+ . batch_script_list_unspent ( vec ! [ script_1. as_script( ) ] )
1232+ . unwrap ( ) ;
12231233 assert_eq ! ( resp. len( ) , 1 ) ;
12241234 assert ! ( resp[ 0 ] . len( ) >= 329 ) ;
12251235 }
@@ -1236,31 +1246,29 @@ mod test {
12361246
12371247 #[ test]
12381248 fn test_transaction_get ( ) {
1239- use bitcoin:: hashes:: hex:: FromHex ;
12401249 use bitcoin:: Txid ;
12411250
12421251 let client = RawClient :: new ( get_test_server ( ) , None ) . unwrap ( ) ;
12431252
12441253 let resp = client
12451254 . transaction_get (
1246- & Txid :: from_hex ( "cc2ca076fd04c2aeed6d02151c447ced3d09be6fb4d4ef36cb5ed4e7a3260566" )
1255+ & Txid :: from_str ( "cc2ca076fd04c2aeed6d02151c447ced3d09be6fb4d4ef36cb5ed4e7a3260566" )
12471256 . unwrap ( ) ,
12481257 )
12491258 . unwrap ( ) ;
12501259 assert_eq ! ( resp. version, 1 ) ;
1251- assert_eq ! ( resp. lock_time. to_u32 ( ) , 0 ) ;
1260+ assert_eq ! ( resp. lock_time. to_consensus_u32 ( ) , 0 ) ;
12521261 }
12531262
12541263 #[ test]
12551264 fn test_transaction_get_raw ( ) {
1256- use bitcoin:: hashes:: hex:: FromHex ;
12571265 use bitcoin:: Txid ;
12581266
12591267 let client = RawClient :: new ( get_test_server ( ) , None ) . unwrap ( ) ;
12601268
12611269 let resp = client
12621270 . transaction_get_raw (
1263- & Txid :: from_hex ( "cc2ca076fd04c2aeed6d02151c447ced3d09be6fb4d4ef36cb5ed4e7a3260566" )
1271+ & Txid :: from_str ( "cc2ca076fd04c2aeed6d02151c447ced3d09be6fb4d4ef36cb5ed4e7a3260566" )
12641272 . unwrap ( ) ,
12651273 )
12661274 . unwrap ( ) ;
@@ -1288,14 +1296,13 @@ mod test {
12881296
12891297 #[ test]
12901298 fn test_transaction_get_merkle ( ) {
1291- use bitcoin:: hashes:: hex:: FromHex ;
12921299 use bitcoin:: Txid ;
12931300
12941301 let client = RawClient :: new ( get_test_server ( ) , None ) . unwrap ( ) ;
12951302
12961303 let resp = client
12971304 . transaction_get_merkle (
1298- & Txid :: from_hex ( "cc2ca076fd04c2aeed6d02151c447ced3d09be6fb4d4ef36cb5ed4e7a3260566" )
1305+ & Txid :: from_str ( "cc2ca076fd04c2aeed6d02151c447ced3d09be6fb4d4ef36cb5ed4e7a3260566" )
12991306 . unwrap ( ) ,
13001307 630000 ,
13011308 )
@@ -1336,7 +1343,9 @@ mod test {
13361343 let addr = bitcoin:: Address :: from_str ( "1FeexV6bAHb8ybZjqQMjJrcCrHGW9sb6uF" ) . unwrap ( ) ;
13371344
13381345 // Just make sure that the call returns Ok(something)
1339- client. script_subscribe ( & addr. script_pubkey ( ) ) . unwrap ( ) ;
1346+ client
1347+ . script_subscribe ( & addr. payload . script_pubkey ( ) )
1348+ . unwrap ( ) ;
13401349 }
13411350
13421351 #[ test]
0 commit comments