@@ -5,8 +5,10 @@ final class PublicResolverContractTests: XCTestCase {
5
5
// Test against .eth public resolver with Infura Ethereum API (please do not abuse my project id)
6
6
let client = InfuraEthereumAPI ( url: URL ( string: " https://mainnet.infura.io/v3/4cd2c3b40ea8423fa889fc479e05f082 " ) !)
7
7
let resolverAddress = try ! Address ( " 0x4976fb03c32e5b8cfe2b6ccb31c09ba78ebaba41 " )
8
+ let reverseResolverAddress : Address = try ! Address ( " 0x5fbb459c49bb06083c33109fa4f14810ec2cf358 " )
8
9
let vitalik = Namehash . namehash ( " vitalik.eth " )
9
10
let planetable = Namehash . namehash ( " planetable.eth " )
11
+ let vitalikAddressReversed = Namehash . namehash ( " d8da6bf26964af9d7eed9e03e53415d37aa96045.addr.reverse " )
10
12
11
13
func testSupportsInterface( ) async throws {
12
14
let contract = PublicResolverContract ( client: client, address: resolverAddress)
@@ -28,6 +30,12 @@ final class PublicResolverContractTests: XCTestCase {
28
30
XCTAssertEqual ( vitalikAddress!, try ! Address ( " 0xd8da6bf26964af9d7eed9e03e53415d37aa96045 " ) )
29
31
}
30
32
33
+ func testName( ) async throws {
34
+ let contract = PublicResolverContract ( client: client, address: reverseResolverAddress)
35
+ let vitalikDomain = try await contract. name ( namehash: vitalikAddressReversed)
36
+ XCTAssertEqual ( vitalikDomain!, " vitalik.eth " )
37
+ }
38
+
31
39
func testContentHash( ) async throws {
32
40
let contract = PublicResolverContract ( client: client, address: resolverAddress)
33
41
let planetableContentHash = try await contract. contenthash ( namehash: planetable)
0 commit comments