Function: withdrawTokens(address _userAddress)
This function is used to withdraw all tokens of a user from the contract.
Inputs
_userAddress
Control: Arbitrary.
Constraints: None.
Impact: Address of the user to withdraw the tokens from.
Branches and code coverage
Intended branches
Updates the user's points information by invoking
_updatePoints
.Iterates over all whitelisted tokens, updates the user's token balances to zero, and transfers the tokens to the
claimManager
.Updates the user's points per hour to zero.
Negative behavior
Reverts if reentrancy is detected.
Reverts if the contract is paused.
Reverts if the caller is not the claim manager.
Reverts if the deposit stop time has not been set.
Reverts if the user address is zero.