Function: stake(address _user, uint256 _amount)
This is the same as stake(uint256 _amount), but it stakes msg.sender want token on behalf of _user.
Inputs
_userControl: Fully controlled by the caller.
Constraints: None. Can even stake on behalf of
address(0).Impact: The address that is credited with the balance for the staking.
_amountControl: Fully controlled by the caller.
Constraints: Has to be more than or equal to the amount sent in the transaction.
Impact: The amount to stake, which is added to the current balance of
_user.
Branches and code coverage
Intended branches
Stake an amount equal to the funds sent.
Negative behavior
Stake more than what is being sent.