@@ -27,7 +27,6 @@ use fvm_shared::address::Address;
27
27
use fvm_shared:: bigint:: bigint_ser:: BigIntDe ;
28
28
use fvm_shared:: bigint:: BigInt ;
29
29
use fvm_shared:: clock:: { ChainEpoch , EPOCH_UNDEFINED } ;
30
- use fvm_shared:: commcid:: FIL_COMMITMENT_UNSEALED ;
31
30
use fvm_shared:: crypto:: signature:: Signature ;
32
31
use fvm_shared:: deal:: DealID ;
33
32
use fvm_shared:: econ:: TokenAmount ;
@@ -39,8 +38,6 @@ use fvm_shared::smooth::FilterEstimate;
39
38
use fvm_shared:: { HAMT_BIT_WIDTH , METHOD_CONSTRUCTOR , METHOD_SEND } ;
40
39
41
40
use cid:: Cid ;
42
- use multihash:: derive:: Multihash ;
43
- use multihash:: MultihashDigest ;
44
41
use num_traits:: FromPrimitive ;
45
42
46
43
const OWNER_ID : u64 = 101 ;
@@ -49,22 +46,6 @@ const WORKER_ID: u64 = 103;
49
46
const CLIENT_ID : u64 = 104 ;
50
47
const CONTROL_ID : u64 = 200 ;
51
48
52
- // TODO: move this out in some utils? (MhCode and make_piece_cid come from miner/tests)
53
- // multihash library doesn't support poseidon hashing, so we fake it
54
- #[ derive( Clone , Copy , Debug , Eq , Multihash , PartialEq ) ]
55
- #[ mh( alloc_size = 64 ) ]
56
- enum MhCode {
57
- #[ mh( code = 0xb401 , hasher = multihash:: Sha2_256 ) ]
58
- PoseidonFake ,
59
- #[ mh( code = 0x1012 , hasher = multihash:: Sha2_256 ) ]
60
- Sha256TruncPaddedFake ,
61
- }
62
-
63
- fn make_piece_cid ( input : & [ u8 ] ) -> Cid {
64
- let h = MhCode :: Sha256TruncPaddedFake . digest ( input) ;
65
- Cid :: new_v1 ( FIL_COMMITMENT_UNSEALED , h)
66
- }
67
-
68
49
fn setup ( ) -> MockRuntime {
69
50
let mut actor_code_cids = HashMap :: default ( ) ;
70
51
actor_code_cids. insert ( Address :: new_id ( OWNER_ID ) , * ACCOUNT_ACTOR_CODE_ID ) ;
@@ -546,14 +527,7 @@ fn simple_deal() {
546
527
end_epoch,
547
528
) ;
548
529
rt. set_caller ( * ACCOUNT_ACTOR_CODE_ID , worker_addr) ;
549
- publish_deals (
550
- & mut rt,
551
- provider_addr,
552
- owner_addr,
553
- worker_addr,
554
- control_addr,
555
- & [ PublishDealReq { deal : deal1 } ] ,
556
- ) ;
530
+ publish_deals ( & mut rt, provider_addr, owner_addr, worker_addr, control_addr, & [ deal1] ) ;
557
531
558
532
// Publish from miner control address.
559
533
let deal2 = generate_deal_and_add_funds (
@@ -566,14 +540,7 @@ fn simple_deal() {
566
540
end_epoch + 1 ,
567
541
) ;
568
542
rt. set_caller ( * ACCOUNT_ACTOR_CODE_ID , control_addr) ;
569
- publish_deals (
570
- & mut rt,
571
- provider_addr,
572
- owner_addr,
573
- worker_addr,
574
- control_addr,
575
- & [ PublishDealReq { deal : deal2 } ] ,
576
- ) ;
543
+ publish_deals ( & mut rt, provider_addr, owner_addr, worker_addr, control_addr, & [ deal2] ) ;
577
544
// TODO: actor.checkState(rt)
578
545
}
579
546
@@ -820,7 +787,7 @@ fn generate_and_publish_deal(
820
787
let deal =
821
788
generate_deal_and_add_funds ( rt, client, provider, owner, worker, start_epoch, end_epoch) ;
822
789
rt. set_caller ( * ACCOUNT_ACTOR_CODE_ID , worker) ;
823
- let deal_ids = publish_deals ( rt, provider, owner, worker, control, & [ PublishDealReq { deal } ] ) ;
790
+ let deal_ids = publish_deals ( rt, provider, owner, worker, control, & [ deal] ) ;
824
791
deal_ids[ 0 ]
825
792
}
826
793
@@ -862,7 +829,7 @@ fn generate_and_publish_deal_for_piece(
862
829
863
830
// publish
864
831
rt. set_caller ( * ACCOUNT_ACTOR_CODE_ID , worker) ;
865
- let deal_ids = publish_deals ( rt, provider, owner, worker, control, & [ PublishDealReq { deal } ] ) ;
832
+ let deal_ids = publish_deals ( rt, provider, owner, worker, control, & [ deal] ) ;
866
833
deal_ids[ 0 ]
867
834
}
868
835
@@ -925,17 +892,13 @@ fn generate_deal_proposal(
925
892
)
926
893
}
927
894
928
- struct PublishDealReq {
929
- deal : DealProposal ,
930
- }
931
-
932
895
fn publish_deals (
933
896
rt : & mut MockRuntime ,
934
897
provider : Address ,
935
898
owner : Address ,
936
899
worker : Address ,
937
900
control : Address ,
938
- publish_deal_reqs : & [ PublishDealReq ] ,
901
+ publish_deals : & [ DealProposal ] ,
939
902
) -> Vec < DealID > {
940
903
rt. expect_validate_caller_type ( ( * CALLER_TYPES_SIGNABLE ) . clone ( ) ) ;
941
904
@@ -957,25 +920,25 @@ fn publish_deals(
957
920
958
921
let mut params: PublishStorageDealsParams = PublishStorageDealsParams { deals : vec ! [ ] } ;
959
922
960
- for pdr in publish_deal_reqs {
923
+ for deal in publish_deals {
961
924
// create a client proposal with a valid signature
962
- let buf = RawBytes :: serialize ( pdr . deal . clone ( ) ) . expect ( "failed to marshal deal proposal" ) ;
925
+ let buf = RawBytes :: serialize ( deal. clone ( ) ) . expect ( "failed to marshal deal proposal" ) ;
963
926
let sig = Signature :: new_bls ( "does not matter" . as_bytes ( ) . to_vec ( ) ) ;
964
927
let client_proposal =
965
- ClientDealProposal { proposal : pdr . deal . clone ( ) , client_signature : sig. clone ( ) } ;
928
+ ClientDealProposal { proposal : deal. clone ( ) , client_signature : sig. clone ( ) } ;
966
929
params. deals . push ( client_proposal) ;
967
930
968
931
// expect a call to verify the above signature
969
932
rt. expect_verify_signature ( ExpectedVerifySig {
970
933
sig,
971
- signer : pdr . deal . client ,
934
+ signer : deal. client ,
972
935
plaintext : buf. to_vec ( ) ,
973
936
result : Ok ( ( ) ) ,
974
937
} ) ;
975
- if pdr . deal . verified_deal {
938
+ if deal. verified_deal {
976
939
let param = RawBytes :: serialize ( UseBytesParams {
977
- address : pdr . deal . client ,
978
- deal_size : BigInt :: from ( pdr . deal . piece_size . 0 ) ,
940
+ address : deal. client ,
941
+ deal_size : BigInt :: from ( deal. piece_size . 0 ) ,
979
942
} )
980
943
. unwrap ( ) ;
981
944
@@ -1000,11 +963,11 @@ fn publish_deals(
1000
963
. unwrap ( ) ;
1001
964
rt. verify ( ) ;
1002
965
1003
- assert_eq ! ( ret. ids. len( ) , publish_deal_reqs . len( ) ) ;
966
+ assert_eq ! ( ret. ids. len( ) , publish_deals . len( ) ) ;
1004
967
1005
968
// assert state after publishing the deals
1006
969
for ( i, deal_id) in ret. ids . iter ( ) . enumerate ( ) {
1007
- let expected = & publish_deal_reqs [ i] . deal ;
970
+ let expected = & publish_deals [ i] ;
1008
971
let p = get_deal_proposal ( rt, * deal_id) ;
1009
972
1010
973
assert_eq ! ( expected, & p) ;
0 commit comments