@@ -1513,13 +1513,18 @@ contract("BondedECDSAKeep", (accounts) => {
15131513 describe ( "withdraw" , async ( ) => {
15141514 const singleValue = new BN ( 1000 )
15151515 const ethValue = singleValue . mul ( new BN ( members . length ) )
1516+ const beneficiary = accounts [ 4 ]
15161517
15171518 beforeEach ( async ( ) => {
15181519 await keep . distributeETHReward ( { value : ethValue } )
15191520 } )
15201521
15211522 it ( "correctly transfers value" , async ( ) => {
1522- const initialMemberBalance = new BN ( await web3 . eth . getBalance ( members [ 0 ] ) )
1523+ const initialMemberBalance = new BN (
1524+ await web3 . eth . getBalance ( beneficiary )
1525+ )
1526+
1527+ await tokenStaking . setBeneficiary ( members [ 0 ] , beneficiary )
15231528
15241529 await keep . withdraw ( members [ 0 ] )
15251530
@@ -1534,17 +1539,16 @@ contract("BondedECDSAKeep", (accounts) => {
15341539 ) . to . eq . BN ( 0 )
15351540
15361541 expect (
1537- await web3 . eth . getBalance ( members [ 0 ] ) ,
1542+ await web3 . eth . getBalance ( beneficiary ) ,
15381543 "incorrect member account balance"
15391544 ) . to . eq . BN ( initialMemberBalance . add ( singleValue ) )
15401545 } )
15411546
15421547 it ( "sends ETH to beneficiary" , async ( ) => {
15431548 const valueWithRemainder = ethValue . add ( new BN ( 1 ) )
15441549
1545- const member1 = accounts [ 2 ]
1546- const member2 = accounts [ 3 ]
1547- const beneficiary = accounts [ 4 ]
1550+ const member1 = members [ 0 ]
1551+ const member2 = members [ 1 ]
15481552
15491553 const testMembers = [ member1 , member2 ]
15501554
@@ -1605,11 +1609,23 @@ contract("BondedECDSAKeep", (accounts) => {
16051609 await expectRevert ( keep . withdraw ( member ) , "No funds to withdraw" )
16061610 } )
16071611
1612+ it ( "reverts in case of not defined beneficiary" , async ( ) => {
1613+ const member = members [ 0 ]
1614+
1615+ await tokenStaking . setBeneficiary ( member , constants . ZERO_ADDRESS )
1616+
1617+ await expectRevert (
1618+ keep . withdraw ( member ) ,
1619+ "Beneficiary not defined for the operator"
1620+ )
1621+ } )
1622+
16081623 it ( "reverts in case of transfer failure" , async ( ) => {
16091624 const etherReceiver = await TestEtherReceiver . new ( )
16101625 await etherReceiver . setShouldFail ( true )
16111626
1612- const member = etherReceiver . address // a receiver which we expect to reject the transfer
1627+ const member = members [ 0 ]
1628+ await tokenStaking . setBeneficiary ( member , etherReceiver . address ) // a receiver which we expect to reject the transfer
16131629
16141630 const keep = await newKeep (
16151631 owner ,
@@ -1626,9 +1642,9 @@ contract("BondedECDSAKeep", (accounts) => {
16261642
16271643 await expectRevert ( keep . withdraw ( member ) , "Transfer failed" )
16281644
1629- // Check balances of keep member's account.
1645+ // Check balances of keep members's beneficiary account.
16301646 expect (
1631- await web3 . eth . getBalance ( member ) ,
1647+ await web3 . eth . getBalance ( etherReceiver . address ) ,
16321648 "incorrect member's account balance"
16331649 ) . to . eq . BN ( 0 )
16341650
@@ -1646,6 +1662,10 @@ contract("BondedECDSAKeep", (accounts) => {
16461662
16471663 beforeEach ( async ( ) => {
16481664 token = await TestToken . new ( )
1665+
1666+ for ( let i = 0 ; i < members . length ; i ++ ) {
1667+ await tokenStaking . setBeneficiary ( members [ i ] , members [ i ] )
1668+ }
16491669 } )
16501670
16511671 it ( "correctly distributes ERC20" , async ( ) => {
0 commit comments