Skip to content

Commit

Permalink
[warnings] fix warnings for the tests (#23)
Browse files Browse the repository at this point in the history
* fix warnings and tests

* forge install: solmate

v6
  • Loading branch information
jake-nyquist authored May 20, 2022
1 parent 64edc62 commit c415ace
Showing 9 changed files with 73 additions and 151 deletions.
1 change: 1 addition & 0 deletions lib/solmate
Submodule solmate added at a9e3ea
2 changes: 1 addition & 1 deletion src/HookERC721MultiVaultImplV1.sol
Original file line number Diff line number Diff line change
@@ -281,7 +281,7 @@ contract HookERC721MultiVaultImplV1 is

/// @dev returns the underlying token ID for a given asset. In this case
/// the tokenId == the assetId
function assetTokenId(uint256 assetId) external view returns (uint256) {
function assetTokenId(uint256 assetId) external pure returns (uint256) {
return assetId;
}

Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.10;

import "./utils/base.sol";
import "./utils/base.t.sol";
import "./utils/mocks/MaliciousBidder.sol";

// @dev these tests try cases where a bidder maliciously reverts on save.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.10;

import "./utils/base.sol";
import "./utils/base.t.sol";

contract HookCoveredCallIntegrationTest is HookProtocolTest {
function setUp() public {
Original file line number Diff line number Diff line change
@@ -4,7 +4,7 @@ pragma solidity ^0.8.10;
import "ds-test/test.sol";
import "forge-std/Test.sol";

import "./utils/base.sol";
import "./utils/base.t.sol";

/// Mint ///
contract HookCoveredCallMintTests is HookProtocolTest {
@@ -120,13 +120,7 @@ contract HookCoveredCallMintTests is HookProtocolTest {
vm.expectRevert(
"_mintOptionWithVault -- expirationTime must be more than one day in the future time"
);
uint256 optionId = calls.mintWithVault(
address(vault),
0,
1000,
expiration,
sig
);
calls.mintWithVault(address(vault), 0, 1000, expiration, sig);
}

function test_MintOptionWithVaultFailsEmptyVault() public {
@@ -148,13 +142,7 @@ contract HookCoveredCallMintTests is HookProtocolTest {
);

vm.expectRevert("mintWithVault-- asset must be in vault");
uint256 optionId = calls.mintWithVault(
address(vault),
0,
1000,
expiration,
sig
);
calls.mintWithVault(address(vault), 0, 1000, expiration, sig);
}

function test_MintOptionWithVaultFailsUnsupportedCollection() public {
@@ -176,13 +164,7 @@ contract HookCoveredCallMintTests is HookProtocolTest {
);

vm.expectRevert("mintWithVault -- token must be on the project allowlist");
uint256 optionId = calls.mintWithVault(
address(vault),
0,
1000,
expiration,
sig
);
calls.mintWithVault(address(vault), 0, 1000, expiration, sig);
}

function testMintMultipleOptions() public {
@@ -193,11 +175,6 @@ contract HookCoveredCallMintTests is HookProtocolTest {

uint256 expiration = block.timestamp + 3 days;

Signatures.Signature memory sig = makeSignature(
underlyingTokenId,
expiration,
writer
);
vm.expectEmit(true, true, true, false);
emit CallCreated(
address(writer),
@@ -320,11 +297,6 @@ contract HookCoveredCallMintTests is HookProtocolTest {
token.setApprovalForAll(address(calls), true);

uint256 expiration = block.timestamp + 1 hours;
Signatures.Signature memory sig = makeSignature(
underlyingTokenId,
expiration,
writer
);
vm.expectRevert(
"_mintOptionWithVault -- expirationTime must be more than one day in the future time"
);
@@ -340,11 +312,7 @@ contract HookCoveredCallMintTests is HookProtocolTest {
token.setApprovalForAll(address(calls), true);

uint256 expiration = block.timestamp + 1 hours;
Signatures.Signature memory sig = makeSignature(
underlyingTokenId,
expiration,
writer
);

vm.expectRevert(
"_mintOptionWithVault -- expirationTime must be more than one day in the future time"
);
@@ -360,12 +328,6 @@ contract HookCoveredCallMintTests is HookProtocolTest {
token.setApprovalForAll(address(calls), true);

uint256 expiration = block.timestamp + 5 hours;
Signatures.Signature memory sig = makeSignature(
underlyingTokenId,
expiration,
writer
);

calls.mintWithErc721(address(token), underlyingTokenId, 1000, expiration);
}

@@ -374,11 +336,6 @@ contract HookCoveredCallMintTests is HookProtocolTest {
protocol.pause();

uint256 expiration = block.timestamp + 3 days;
Signatures.Signature memory sig = makeSignature(
underlyingTokenId,
expiration,
writer
);

vm.expectRevert("Pausable: paused");
calls.mintWithErc721(address(token), underlyingTokenId, 1000, expiration);
@@ -389,11 +346,6 @@ contract HookCoveredCallMintTests is HookProtocolTest {
callInternal.setMarketPaused(true);

uint256 expiration = block.timestamp + 3 days;
Signatures.Signature memory sig = makeSignature(
underlyingTokenId,
expiration,
writer
);

vm.expectRevert("whenNotPaused -- market is paused");
calls.mintWithErc721(address(token), underlyingTokenId, 1000, expiration);
@@ -476,11 +428,6 @@ contract HookCoveredCallMintTests is HookProtocolTest {
);
calls.mintWithErc721(address(token), underlyingTokenId, 1000, expiration);

Signatures.Signature memory sig = makeSignature(
underlyingTokenId,
expiration,
writer
);
// Vault is now owner of the underlying token so this fails.
vm.expectRevert("mintWithErc721 -- caller must be token owner or operator");
calls.mintWithErc721(address(token), underlyingTokenId, 1000, expiration);
@@ -512,11 +459,6 @@ contract HookCoveredCallMintTests is HookProtocolTest {
vm.stopPrank();
vm.startPrank(operator);

Signatures.Signature memory sig = makeSignature(
underlyingTokenId,
expiration,
writer
);
// Vault is now owner of the underlying token so this fails.
vm.expectRevert("mintWithErc721 -- caller must be token owner or operator");
calls.mintWithErc721(address(token), underlyingTokenId, 1000, expiration);
@@ -546,11 +488,6 @@ contract HookCoveredCallMintTests is HookProtocolTest {
expiration
);

Signatures.Signature memory sig = makeSignature(
optionId,
expiration,
writer
);
// Minting should only work for TestERC721
vm.expectRevert("mintWithErc721 -- token must be on the project allowlist");
calls.mintWithErc721(address(calls), optionId, 1000, expiration);
@@ -815,7 +752,6 @@ contract HookCoveredCallBidTests is HookProtocolTest {
vm.deal(writer, 1 ether);

uint256 firstBidderStartBalance = firstBidder.balance;
uint256 writerStartBalance = writer.balance;

vm.warp(block.timestamp + 2.1 days);

@@ -853,7 +789,6 @@ contract HookCoveredCallBidTests is HookProtocolTest {
vm.deal(writer, 1 ether);

uint256 firstBidderStartBalance = firstBidder.balance;
uint256 writerStartBalance = writer.balance;

vm.warp(block.timestamp + 2.1 days);

@@ -1304,9 +1239,6 @@ contract HookCoveredCallReclaimTests is HookProtocolTest {
vm.deal(writer, 1 ether);
vm.deal(firstBidder, 1 ether);

uint256 buyerStartBalance = buyer.balance;
uint256 writerStartBalance = writer.balance;

// Writer approve operator and covered call
token.setApprovalForAll(address(calls), true);

@@ -1355,9 +1287,6 @@ contract HookCoveredCallReclaimTests is HookProtocolTest {
vm.deal(writer, 1 ether);
vm.deal(firstBidder, 1 ether);

uint256 buyerStartBalance = buyer.balance;
uint256 writerStartBalance = writer.balance;

// Writer approve operator and covered call
token.setApprovalForAll(address(calls), true);

@@ -1407,9 +1336,6 @@ contract HookCoveredCallReclaimTests is HookProtocolTest {
vm.deal(writer, 1 ether);
vm.deal(firstBidder, 1 ether);

uint256 buyerStartBalance = buyer.balance;
uint256 writerStartBalance = writer.balance;

// Writer approve operator and covered call
token.setApprovalForAll(address(calls), true);

Original file line number Diff line number Diff line change
@@ -4,7 +4,7 @@ pragma solidity ^0.8.10;
import "ds-test/test.sol";
import "forge-std/Test.sol";

import "./utils/base.sol";
import "./utils/base.t.sol";
import "../interfaces/IHookERC721VaultFactory.sol";

import "../lib/Entitlements.sol";
@@ -32,9 +32,7 @@ contract HookMultiVaultTests is HookProtocolTest {
tokenId = tokenStartIndex;
token.mint(address(writer), tokenId);
vault.makeMultiVault(address(token));
address vaultAddress = address(
vault.findOrCreateVault(address(token), tokenId)
);
vaultAddress = address(vault.findOrCreateVault(address(token), tokenId));
vm.stopPrank();
return (vaultAddress, tokenId);
}
@@ -54,7 +52,7 @@ contract HookMultiVaultTests is HookProtocolTest {
{
address ownerAdd = vm.addr(writerpkey);

Entitlements.Entitlement memory entitlement = Entitlements.Entitlement({
entitlement = Entitlements.Entitlement({
beneficialOwner: ownerAdd,
operator: operator,
vaultAddress: vaultAddress,
@@ -568,9 +566,7 @@ contract HookMultiVaultTests is HookProtocolTest {
vm.prank(mockContract);
vaultImpl.clearEntitlement(tokenId);

(bool active, address operator) = vaultImpl.getCurrentEntitlementOperator(
tokenId
);
(bool active, ) = vaultImpl.getCurrentEntitlementOperator(tokenId);
assertTrue(!active, "there should not be an active entitlement");

// check that the owner can actually withdrawl
@@ -723,9 +719,7 @@ contract HookMultiVaultTests is HookProtocolTest {
IHookERC721Vault vaultImpl = IHookERC721Vault(vaultAddress);

address mockContract2 = address(35553445);
(bool active, address operator) = vaultImpl.getCurrentEntitlementOperator(
tokenId
);
(bool active, ) = vaultImpl.getCurrentEntitlementOperator(tokenId);
assertTrue(active, "there should be an active entitlement");

uint256 expiration2 = block.timestamp + 3 days;
@@ -776,9 +770,7 @@ contract HookMultiVaultTests is HookProtocolTest {
);
IHookERC721Vault vaultImpl = IHookERC721Vault(vaultAddress);

(bool active, address operator) = vaultImpl.getCurrentEntitlementOperator(
tokenId
);
(bool active, ) = vaultImpl.getCurrentEntitlementOperator(tokenId);
assertTrue(active, "there should be an active entitlement");

vm.prank(writer);
@@ -834,7 +826,7 @@ contract HookMultiVaultTests is HookProtocolTest {
}

function testAirdropsCanBeDisbled() public {
(address vaultAddress, uint256 tokenId) = createVaultandAsset();
(address vaultAddress, ) = createVaultandAsset();

vm.prank(admin);
protocol.setCollectionConfig(
@@ -851,7 +843,7 @@ contract HookMultiVaultTests is HookProtocolTest {
}

function testAirdropsAllowedWhenEnabled() public {
(address vaultAddress, uint256 tokenId) = createVaultandAsset();
(address vaultAddress, ) = createVaultandAsset();

vm.prank(admin);
protocol.setCollectionConfig(
Loading

0 comments on commit c415ace

Please sign in to comment.