@@ -278,6 +278,12 @@ impl ByronAddress {
278278 magic if magic == NetworkInfo :: testnet ( ) . protocol_magic ( ) => {
279279 Ok ( NetworkInfo :: testnet ( ) . network_id ( ) )
280280 }
281+ magic if magic == NetworkInfo :: testnet_preprod ( ) . protocol_magic ( ) => {
282+ Ok ( NetworkInfo :: testnet_preprod ( ) . network_id ( ) )
283+ }
284+ magic if magic == NetworkInfo :: testnet_preview ( ) . protocol_magic ( ) => {
285+ Ok ( NetworkInfo :: testnet_preview ( ) . network_id ( ) )
286+ }
281287 _ => Err ( JsError :: from_str (
282288 & format ! { "Unknown network {}" , protocol_magic} ,
283289 ) ) ,
@@ -582,6 +588,8 @@ impl Address {
582588 } ;
583589 let prefix_tail = match self . network_id ( ) ? {
584590 id if id == NetworkInfo :: testnet ( ) . network_id ( ) => "_test" ,
591+ id if id == NetworkInfo :: testnet_preprod ( ) . network_id ( ) => "_test" ,
592+ id if id == NetworkInfo :: testnet_preview ( ) . network_id ( ) => "_test" ,
585593 _ => "" ,
586594 } ;
587595 format ! ( "{}{}" , prefix_header, prefix_tail)
@@ -1457,4 +1465,11 @@ mod tests {
14571465 let p2 = Pointer :: new_pointer ( & to_bignum ( 10 ) , & to_bignum ( 20 ) , & to_bignum ( 30 ) ) ;
14581466 assert_eq ! ( p1, p2) ;
14591467 }
1468+
1469+ #[ test]
1470+ fn prepod_network_id_test ( ) {
1471+ let address = "KjgoiXJS2coTnqpCLHXFtd89Hv9ttjsE6yW4msyLXFNkykUpTsyBs85r2rDDia2uKrhdpGKCJnmFXwvPSWLe75564ixZWdTxRh7TnuaDLnHx" ;
1472+ let network_id = ByronAddress :: from_base58 ( address) . unwrap ( ) . to_address ( ) . network_id ( ) . unwrap ( ) ;
1473+ assert_eq ! ( network_id, NetworkInfo :: testnet_preprod( ) . network_id( ) ) ;
1474+ }
14601475}
0 commit comments