Commit d9277483 authored by James Kim's avatar James Kim

use mock calls

parent c6cd3881
...@@ -161,6 +161,8 @@ contract Optimist_Initializer is Test { ...@@ -161,6 +161,8 @@ contract Optimist_Initializer is Test {
abi.encodeWithSelector(OptimistAllowlist.isAllowedToMint.selector, _claimer), abi.encodeWithSelector(OptimistAllowlist.isAllowedToMint.selector, _claimer),
abi.encode(true) abi.encode(true)
); );
assertTrue(optimist.isOnAllowList(_claimer));
} }
/** /**
...@@ -213,6 +215,9 @@ contract Optimist_Initializer is Test { ...@@ -213,6 +215,9 @@ contract Optimist_Initializer is Test {
} }
contract OptimistTest is Optimist_Initializer { contract OptimistTest is Optimist_Initializer {
/**
* @notice Check that constructor and initializer parameters are correctly set.
*/
function test_initialize_success() external { function test_initialize_success() external {
// expect name to be set // expect name to be set
assertEq(optimist.name(), name); assertEq(optimist.name(), name);
...@@ -482,6 +487,28 @@ contract OptimistTest is Optimist_Initializer { ...@@ -482,6 +487,28 @@ contract OptimistTest is Optimist_Initializer {
assertEq(optimist.getApproved(_getTokenId(bob)), address(0)); assertEq(optimist.getApproved(_getTokenId(bob)), address(0));
} }
/**
* @notice setApprovalForAll should revert since Optimist is a SBT.
*/
function test_setApprovalForAll_reverts() external {
_mockAllowlistTrueFor(bob);
// mint as bob
vm.prank(bob);
optimist.mint(bob);
vm.prank(alice_allowlistAttestor);
vm.expectRevert(bytes("Optimist: soul bound token"));
optimist.setApprovalForAll(alice_allowlistAttestor, true);
// expect approval amount to stil be 0
assertEq(optimist.getApproved(_getTokenId(bob)), address(0));
// isApprovedForAll should return false
assertEq(
optimist.isApprovedForAll(alice_allowlistAttestor, alice_allowlistAttestor),
false
);
}
/** /**
* @notice Only Owner should be able to burn token. * @notice Only Owner should be able to burn token.
*/ */
...@@ -519,28 +546,6 @@ contract OptimistTest is Optimist_Initializer { ...@@ -519,28 +546,6 @@ contract OptimistTest is Optimist_Initializer {
assertEq(optimist.balanceOf(bob), 1); assertEq(optimist.balanceOf(bob), 1);
} }
/**
* @notice setApprovalForAll should revert since Optimist is a SBT.
*/
function test_setApprovalForAll_reverts() external {
_mockAllowlistTrueFor(bob);
// mint as bob
vm.prank(bob);
optimist.mint(bob);
vm.prank(alice_allowlistAttestor);
vm.expectRevert(bytes("Optimist: soul bound token"));
optimist.setApprovalForAll(alice_allowlistAttestor, true);
// expect approval amount to stil be 0
assertEq(optimist.getApproved(_getTokenId(bob)), address(0));
// isApprovedForAll should return false
assertEq(
optimist.isApprovedForAll(alice_allowlistAttestor, alice_allowlistAttestor),
false
);
}
/** /**
* @notice Should support ERC-721 interface. * @notice Should support ERC-721 interface.
*/ */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment