@@ -25,7 +25,7 @@ use bitcoin::hashes::{hash160, ripemd160, sha256, sha256d, Hash};
25
25
use bitcoin:: secp256k1;
26
26
use miniscript:: descriptor:: { SinglePub , SinglePubKey } ;
27
27
use miniscript:: {
28
- Descriptor , DescriptorPublicKey , Miniscript , ScriptContext , TranslatePk , Translator ,
28
+ Descriptor , DescriptorPublicKey , Error , Miniscript , ScriptContext , TranslatePk , Translator ,
29
29
} ;
30
30
use rand:: RngCore ;
31
31
@@ -248,13 +248,15 @@ impl<'a> Translator<String, DescriptorPublicKey, ()> for StrTranslatorLoose<'a>
248
248
249
249
#[ allow( dead_code) ]
250
250
// https://github.com/rust-lang/rust/issues/46379. The code is pub fn and integration test, but still shows warnings
251
- pub fn parse_test_desc ( desc : & str , pubdata : & PubData ) -> Descriptor < DescriptorPublicKey > {
251
+ pub fn parse_test_desc (
252
+ desc : & str ,
253
+ pubdata : & PubData ,
254
+ ) -> Result < Descriptor < DescriptorPublicKey > , Error > {
252
255
let desc = subs_hash_frag ( desc, pubdata) ;
253
- let desc =
254
- Descriptor :: < String > :: from_str ( & desc) . expect ( "only parsing valid and sane descriptors" ) ;
256
+ let desc = Descriptor :: < String > :: from_str ( & desc) ?;
255
257
let mut translator = StrDescPubKeyTranslator ( 0 , pubdata) ;
256
258
let desc: Result < _ , ( ) > = desc. translate_pk ( & mut translator) ;
257
- desc. expect ( "Translate must succeed" )
259
+ Ok ( desc. expect ( "Translate must succeed" ) )
258
260
}
259
261
260
262
// substitute hash fragments in the string as the per rules
0 commit comments