Skip to content

Commit a6e60b3

Browse files
authored
Improve LibRegistry Tests (#196)
- findResolverFromParent() - findExactRegistry()
1 parent 19d5ca6 commit a6e60b3

File tree

1 file changed

+17
-7
lines changed

1 file changed

+17
-7
lines changed

contracts/test/unit/universalResolver/libraries/LibRegistry.t.sol

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ pragma solidity >=0.8.13;
66
import {Test} from "forge-std/Test.sol";
77

88
import {ERC1155Holder} from "@openzeppelin/contracts/token/ERC1155/utils/ERC1155Holder.sol";
9-
import {Strings} from "@openzeppelin/contracts/utils/Strings.sol";
109

1110
import {EACBaseRolesLib} from "~src/common/access-control/EnhancedAccessControl.sol";
1211
import {IHCAFactoryBasic} from "~src/common/hca/interfaces/IHCAFactoryBasic.sol";
@@ -59,10 +58,12 @@ contract LibRegistryTest is Test, ERC1155Holder {
5958
address parentRegistry,
6059
IRegistry[] memory registries
6160
) internal view {
62-
(, address resolver, bytes32 node, uint256 resolverOffset_) = LibRegistry.findResolver(
63-
rootRegistry,
64-
name,
65-
0
61+
(IRegistry registry, address resolver, bytes32 node, uint256 resolverOffset_) = LibRegistry
62+
.findResolver(rootRegistry, name, 0);
63+
assertEq(
64+
address(LibRegistry.findExactRegistry(rootRegistry, name, 0)),
65+
address(registry),
66+
"exact"
6667
);
6768
assertEq(resolver, resolverAddress, "resolver");
6869
assertEq(node, NameCoder.namehash(name, 0), "node");
@@ -78,19 +79,28 @@ contract LibRegistryTest is Test, ERC1155Holder {
7879
assertEq(
7980
address(registries[i]),
8081
address(regs[i]),
81-
string.concat("registry[", Strings.toString(i), "]")
82+
string.concat("registry[", vm.toString(i), "]")
8283
);
8384
}
8485
uint256 offset;
8586
for (uint256 i; i < registries.length; ++i) {
8687
assertEq(
8788
address(LibRegistry.findExactRegistry(rootRegistry, name, offset)),
8889
address(registries[i]),
89-
string.concat("exact[", Strings.toString(i), "]")
90+
string.concat("exact[", vm.toString(i), "]")
9091
);
9192
(, offset) = NameCoder.nextLabel(name, offset);
9293
}
9394
assertEq(offset, name.length, "length");
95+
(IRegistry registryFrom, address resolverFrom) = LibRegistry.findResolverFromParent(
96+
name,
97+
0,
98+
name.length - 1,
99+
rootRegistry,
100+
address(0)
101+
);
102+
assertEq(address(registryFrom), address(registry), "registryFrom");
103+
assertEq(resolverFrom, resolver, "resolverFrom");
94104
}
95105

96106
function test_findResolver_eth() external {

0 commit comments

Comments
 (0)