Skip to content

Commit

Permalink
update tests for permissions enumerable
Browse files Browse the repository at this point in the history
  • Loading branch information
kumaryash90 committed Jul 13, 2023
1 parent 4eadfea commit f124f56
Show file tree
Hide file tree
Showing 2 changed files with 115 additions and 0 deletions.
24 changes: 24 additions & 0 deletions src/test/drop/DropERC721.t.sol
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,7 @@ contract DropERC721Test is BaseTest {
drop.grantRole(role, address(4));

roleMemberCount = drop.getRoleMemberCount(role);
assertEq(roleMemberCount, 5);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(drop.getRoleMember(role, i));
Expand All @@ -154,6 +155,7 @@ contract DropERC721Test is BaseTest {

drop.revokeRole(role, address(2));
roleMemberCount = drop.getRoleMemberCount(role);
assertEq(roleMemberCount, 4);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(drop.getRoleMember(role, i));
Expand All @@ -162,6 +164,7 @@ contract DropERC721Test is BaseTest {

drop.revokeRole(role, address(0));
roleMemberCount = drop.getRoleMemberCount(role);
assertEq(roleMemberCount, 3);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(drop.getRoleMember(role, i));
Expand All @@ -170,6 +173,7 @@ contract DropERC721Test is BaseTest {

drop.grantRole(role, address(5));
roleMemberCount = drop.getRoleMemberCount(role);
assertEq(roleMemberCount, 4);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(drop.getRoleMember(role, i));
Expand All @@ -178,6 +182,7 @@ contract DropERC721Test is BaseTest {

drop.grantRole(role, address(0));
roleMemberCount = drop.getRoleMemberCount(role);
assertEq(roleMemberCount, 5);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(drop.getRoleMember(role, i));
Expand All @@ -186,6 +191,25 @@ contract DropERC721Test is BaseTest {

drop.grantRole(role, address(6));
roleMemberCount = drop.getRoleMemberCount(role);
assertEq(roleMemberCount, 6);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(drop.getRoleMember(role, i));
}
console.log("");

drop.revokeRole(role, address(0));
roleMemberCount = drop.getRoleMemberCount(role);
assertEq(roleMemberCount, 5);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(drop.getRoleMember(role, i));
}
console.log("");

drop.revokeRole(role, address(4));
roleMemberCount = drop.getRoleMemberCount(role);
assertEq(roleMemberCount, 4);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(drop.getRoleMember(role, i));
Expand Down
91 changes: 91 additions & 0 deletions src/test/marketplace/DirectListings.t.sol
Original file line number Diff line number Diff line change
Expand Up @@ -152,6 +152,97 @@ contract MarketplaceDirectListingsTest is BaseTest {
Miscellaneous
//////////////////////////////////////////////////////////////*/

/**
* @dev Tests contract state for Lister role.
*/
function test_state_getRoleMember_listerRole() public {
bytes32 role = keccak256("LISTER_ROLE");

uint256 roleMemberCount = PermissionsEnumerable(marketplace).getRoleMemberCount(role);
assertEq(roleMemberCount, 1);

address roleMember = PermissionsEnumerable(marketplace).getRoleMember(role, 1);
assertEq(roleMember, address(0));

vm.startPrank(marketplaceDeployer);
Permissions(marketplace).grantRole(role, address(2));
Permissions(marketplace).grantRole(role, address(3));
Permissions(marketplace).grantRole(role, address(4));

roleMemberCount = PermissionsEnumerable(marketplace).getRoleMemberCount(role);
assertEq(roleMemberCount, 4);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(PermissionsEnumerable(marketplace).getRoleMember(role, i));
}
console.log("");

Permissions(marketplace).revokeRole(role, address(2));
roleMemberCount = PermissionsEnumerable(marketplace).getRoleMemberCount(role);
assertEq(roleMemberCount, 3);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(PermissionsEnumerable(marketplace).getRoleMember(role, i));
}
console.log("");

Permissions(marketplace).grantRole(role, address(5));
roleMemberCount = PermissionsEnumerable(marketplace).getRoleMemberCount(role);
assertEq(roleMemberCount, 4);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(PermissionsEnumerable(marketplace).getRoleMember(role, i));
}
console.log("");

Permissions(marketplace).grantRole(role, address(0));
roleMemberCount = PermissionsEnumerable(marketplace).getRoleMemberCount(role);
assertEq(roleMemberCount, 5);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(PermissionsEnumerable(marketplace).getRoleMember(role, i));
}
console.log("");

Permissions(marketplace).grantRole(role, address(6));
roleMemberCount = PermissionsEnumerable(marketplace).getRoleMemberCount(role);
assertEq(roleMemberCount, 6);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(PermissionsEnumerable(marketplace).getRoleMember(role, i));
}
console.log("");

Permissions(marketplace).revokeRole(role, address(3));
roleMemberCount = PermissionsEnumerable(marketplace).getRoleMemberCount(role);
assertEq(roleMemberCount, 5);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(PermissionsEnumerable(marketplace).getRoleMember(role, i));
}
console.log("");

Permissions(marketplace).revokeRole(role, address(4));
roleMemberCount = PermissionsEnumerable(marketplace).getRoleMemberCount(role);
assertEq(roleMemberCount, 4);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(PermissionsEnumerable(marketplace).getRoleMember(role, i));
}
console.log("");

Permissions(marketplace).revokeRole(role, address(0));
roleMemberCount = PermissionsEnumerable(marketplace).getRoleMemberCount(role);
assertEq(roleMemberCount, 3);
console.log(roleMemberCount);
for (uint256 i = 0; i < roleMemberCount; i++) {
console.log(PermissionsEnumerable(marketplace).getRoleMember(role, i));
}
console.log("");

vm.stopPrank();
}

function test_state_approvedCurrencies() public {
(uint256 listingId, IDirectListings.ListingParameters memory listingParams) = _setup_updateListing();
address currencyToApprove = address(erc20); // same currency as main listing
Expand Down

0 comments on commit f124f56

Please sign in to comment.