fix failing test based on resolver refactor (#3384)
David Adegoke committed
Jul 9, 2026 at 13:12 UTC
da9f0d62ee188c8694a903a79b22dcbcdc4cfeeb
1 file changed
+31
-30
test/entities/parse_address_from_domain_test.dart
+31
-30
@@ -1,4 +1,5 @@
1
-import 'package:cake_wallet/core/address_resolver/parse_address_from_domain.dart';
1
+import 'package:cake_wallet/core/address_resolver/address_resolver_utils.dart';
2
+import 'package:cake_wallet/core/address_resolver/unstoppable/unstoppable_address_provider.dart';
3
import 'package:cw_core/crypto_currency.dart';
4
import 'package:flutter_test/flutter_test.dart';
5
@@ -8,7 +9,7 @@ void main() {
9
// late MockWalletBase mockWallet;
10
// late MockSettingsStore mockSettingsStore;
11
// late MockBuildContext mockContext;
11
- // late AddressResolver addressResolver;
12
+ // late AddressResolver addressResolverUtils;
13
//
14
// setUp(() {
15
// mockYatService = MockYatService();
@@ -19,7 +20,7 @@ void main() {
20
// when(mockWallet.type).thenReturn(WalletType.bitcoin);
21
// when(mockWallet.currency).thenReturn(CryptoCurrency.btc);
22
//
22
- // addressResolver = AddressResolver(
23
+ // addressResolverUtils = AddressResolverUtils(
24
// yatService: mockYatService,
25
// wallet: mockWallet,
26
// settingsStore: mockSettingsStore,
@@ -30,7 +31,7 @@ void main() {
31
test('extracts Bitcoin address correctly', () {
32
final raw =
33
'My Bitcoin address is bc1qhg4l43pmq5v5atmtlr7gnwyuxs043cvrut5hkq please use it';
33
- final result = AddressResolver.extractAddressByType(
34
+ final result = AddressResolverUtils.extractAddressByType(
35
raw: raw,
36
type: CryptoCurrency.btc,
37
);
@@ -40,7 +41,7 @@ void main() {
41
test('extracts Ethereum address correctly', () {
42
final raw =
43
'Send ETH to 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2 thanks';
43
- final result = AddressResolver.extractAddressByType(
44
+ final result = AddressResolverUtils.extractAddressByType(
45
raw: raw,
46
type: CryptoCurrency.eth,
47
);
@@ -50,7 +51,7 @@ void main() {
51
test('extracts Monero address correctly', () {
52
final raw =
53
'XMR: 85s6zfxGAkdCN21h566R8EFDSfThxCrFiEkhw3JEtaXN2DDfahABLXTjRj385Ro7om5saGWJG7iuE6EyW5MYcoz93DLvNqh';
53
- final result = AddressResolver.extractAddressByType(
54
+ final result = AddressResolverUtils.extractAddressByType(
55
raw: raw,
56
type: CryptoCurrency.xmr,
57
);
@@ -61,7 +62,7 @@ void main() {
62
test('extracts Bitcoin Cash address correctly', () {
63
final raw =
64
'BCH: bitcoincash:qr2z7dusk64qnq97azhg0u0hlf7qgwwfzyj92jgmqj';
64
- final result = AddressResolver.extractAddressByType(
65
+ final result = AddressResolverUtils.extractAddressByType(
66
raw: raw,
67
type: CryptoCurrency.bch,
68
);
@@ -72,7 +73,7 @@ void main() {
73
test('extracts Nano address correctly', () {
74
final raw =
75
'NANO: nano_1natrium1o3z5519ifou7xii8crpxpk8y65qmkih8e8bpsjri651oza8imdd';
75
- final result = AddressResolver.extractAddressByType(
76
+ final result = AddressResolverUtils.extractAddressByType(
77
raw: raw,
78
type: CryptoCurrency.nano,
79
);
@@ -83,13 +84,13 @@ void main() {
84
test('returns null for unsupported currency', () {
85
final raw = 'Some text without an address';
86
expect(
86
- () => AddressResolver.extractAddressByType(
87
+ () => AddressResolverUtils.extractAddressByType(
88
raw: raw,
89
type: CryptoCurrency.btc,
90
),
91
returnsNormally);
92
92
- final result = AddressResolver.extractAddressByType(
93
+ final result = AddressResolverUtils.extractAddressByType(
94
raw: raw,
95
type: CryptoCurrency.btc,
96
);
@@ -99,7 +100,7 @@ void main() {
100
test('extracts monero address from URI', () {
101
final raw =
102
'monero_wallet:467iotZU5tvG26k2xdZWkJ7gwATFVhfbuV3yDoWx5jHoPwxEi4f5BuJQwkP6GpCb1sZvUVB7nbSkgEuW8NKrh9KKRRga5qz?spend_key=029c559cd7669f14e91fd835144916009f8697ab5ac5c7f7c06e1ff869c17b0b&view_key=afaf646edbff3d3bcee8efd3383ffe5d20c947040f74e1110b70ca0fbb0ef90d';
102
- final result = AddressResolver.extractAddressByType(
103
+ final result = AddressResolverUtils.extractAddressByType(
104
raw: raw,
105
type: CryptoCurrency.xmr,
106
requireSurroundingWhitespaces: false);
@@ -118,15 +119,15 @@ sp1qq0avpawwjg4l66p6lqafj0vlvm6rlhdc6qt0r6dfual835vhs3gvkq63pechaqezvn7j7uj2jucw
119
#LTC MWEB
120
ltcmweb1qq0at62jjucmawxp78qutn0cqwkwahcfx7fxls0r2ma5llg5w6wyy2qe20gxa3rku2658j88zg9d2j4ttpw35k0a5nrg93h5nq3wyvkcgwc3q4dgc
121
''';
121
- final resultXmr = AddressResolver.extractAddressByType(
122
+ final resultXmr = AddressResolverUtils.extractAddressByType(
123
raw: raw, type: CryptoCurrency.xmr);
124
expect(resultXmr,
125
'89bH6i3ftaWSWuPJJYSQuuApWJ8xzinCEbbnAXN1Z3mGGUuAFdpBUg82R9MvJDSheJ6kW2dyMQEFUGM4tsZqRb2Q75UXqvc');
125
- final resultBtc = AddressResolver.extractAddressByType(
126
+ final resultBtc = AddressResolverUtils.extractAddressByType(
127
raw: raw, type: CryptoCurrency.btc);
128
expect(resultBtc,
129
'sp1qq0avpawwjg4l66p6lqafj0vlvm6rlhdc6qt0r6dfual835vhs3gvkq63pechaqezvn7j7uj2jucwj5k7nenpw2r86wf42xv6wqdvxuk5rggrul45');
129
- final resultLtc = AddressResolver.extractAddressByType(
130
+ final resultLtc = AddressResolverUtils.extractAddressByType(
131
raw: raw, type: CryptoCurrency.ltc);
132
expect(resultLtc,
133
'ltcmweb1qq0at62jjucmawxp78qutn0cqwkwahcfx7fxls0r2ma5llg5w6wyy2qe20gxa3rku2658j88zg9d2j4ttpw35k0a5nrg93h5nq3wyvkcgwc3q4dgc');
@@ -135,7 +136,7 @@ ltcmweb1qq0at62jjucmawxp78qutn0cqwkwahcfx7fxls0r2ma5llg5w6wyy2qe20gxa3rku2658j88
136
// test('throws exception for unexpected token', () {
137
// // Create a custom crypto currency that won't have a pattern
138
// final customCurrency = CryptoCurrency('CUSTOM', 'Custom');
138
- // expect(() => AddressResolver.extractAddressByType(
139
+ // expect(() => AddressResolverUtils.extractAddressByType(
140
// raw: 'Some text',
141
// type: customCurrency,
142
// ), throwsException);
@@ -144,25 +145,25 @@ ltcmweb1qq0at62jjucmawxp78qutn0cqwkwahcfx7fxls0r2ma5llg5w6wyy2qe20gxa3rku2658j88
145
//
146
// group('isEmailFormat', () {
147
// test('returns true for valid email format', () {
147
- // expect(addressResolver.isEmailFormat('user@example.com'), isTrue);
148
- // expect(addressResolver.isEmailFormat('name.surname@domain.co.uk'), isTrue);
149
- // expect(addressResolver.isEmailFormat('user123@subdomain.example.org'), isTrue);
148
+ // expect(addressResolverUtils.isEmailFormat('user@example.com'), isTrue);
149
+ // expect(addressResolverUtils.isEmailFormat('name.surname@domain.co.uk'), isTrue);
150
+ // expect(addressResolverUtils.isEmailFormat('user123@subdomain.example.org'), isTrue);
151
// });
152
//
153
// test('returns false for invalid email format', () {
153
- // expect(addressResolver.isEmailFormat('user@'), isFalse);
154
- // expect(addressResolver.isEmailFormat('@domain.com'), isFalse);
155
- // expect(addressResolver.isEmailFormat('user@domain'), isFalse);
156
- // expect(addressResolver.isEmailFormat('user.domain.com'), isFalse);
157
- // expect(addressResolver.isEmailFormat('user@domain@com'), isFalse);
158
- // expect(addressResolver.isEmailFormat('bc1qhg4l43pmq5v5atmtlr7gnwyuxs043cvrut5hkq'), isFalse);
154
+ // expect(addressResolverUtils.isEmailFormat('user@'), isFalse);
155
+ // expect(addressResolverUtils.isEmailFormat('@domain.com'), isFalse);
156
+ // expect(addressResolverUtils.isEmailFormat('user@domain'), isFalse);
157
+ // expect(addressResolverUtils.isEmailFormat('user.domain.com'), isFalse);
158
+ // expect(addressResolverUtils.isEmailFormat('user@domain@com'), isFalse);
159
+ // expect(addressResolverUtils.isEmailFormat('bc1qhg4l43pmq5v5atmtlr7gnwyuxs043cvrut5hkq'), isFalse);
160
// });
161
// });
162
//
163
// group('resolve', () {
164
// test('returns ParsedAddress with original text when no resolution is possible', () async {
165
// final text = 'bc1qhg4l43pmq5v5atmtlr7gnwyuxs043cvrut5hkq';
165
- // final result = await addressResolver.resolve(mockContext, text, CryptoCurrency.btc);
166
+ // final result = await addressResolverUtils.resolve(mockContext, text, CryptoCurrency.btc);
167
//
168
// expect(result, isA<ParsedAddress>());
169
// expect(result.addresses, [text]);
@@ -176,11 +177,11 @@ ltcmweb1qq0at62jjucmawxp78qutn0cqwkwahcfx7fxls0r2ma5llg5w6wyy2qe20gxa3rku2658j88
177
178
group('unstoppableDomains', () {
179
test('contains expected TLDs', () {
179
- expect(AddressResolver.unstoppableDomains, contains('crypto'));
180
- expect(AddressResolver.unstoppableDomains, contains('eth'));
181
- expect(AddressResolver.unstoppableDomains, contains('bitcoin'));
182
- expect(AddressResolver.unstoppableDomains, contains('x'));
183
- expect(AddressResolver.unstoppableDomains, contains('wallet'));
180
+ expect(UnstoppableAddressProvider.unstoppableDomains, contains('crypto'));
181
+ expect(UnstoppableAddressProvider.unstoppableDomains, contains('eth'));
182
+ expect(UnstoppableAddressProvider.unstoppableDomains, contains('bitcoin'));
183
+ expect(UnstoppableAddressProvider.unstoppableDomains, contains('x'));
184
+ expect(UnstoppableAddressProvider.unstoppableDomains, contains('wallet'));
185
});
186
});
187
});