Skip to content

Commit 7b38bd7

Browse files
committed
chore: update tests
1 parent 3bd5d95 commit 7b38bd7

File tree

10 files changed

+730
-524
lines changed

10 files changed

+730
-524
lines changed

packages/icons/src/__tests__/__snapshots__/index.test.tsx.snap

+684-488
Large diffs are not rendered by default.

packages/solana/src/solana-provider/__tests__/balance.test.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -74,15 +74,15 @@ describe('SolanaWeb3ConfigProvider balance', () => {
7474
};
7575
});
7676

77-
it('availabel show balance', async () => {
77+
it('available show balance', async () => {
7878
const BalanceDisplay: FC = () => {
7979
const { balance } = useProvider();
8080

8181
return <div className="shown-balance">{balance?.value?.toString()}</div>;
8282
};
8383

8484
const App: FC = () => (
85-
<SolanaWeb3ConfigProvider balance>
85+
<SolanaWeb3ConfigProvider balance wallets={[]}>
8686
<div className="content">test</div>
8787
<BalanceDisplay />
8888
</SolanaWeb3ConfigProvider>

packages/solana/src/solana-provider/__tests__/basic.test.tsx

+10-7
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ describe('SolanaWeb3ConfigProvider', () => {
100100

101101
it('mount correctly', () => {
102102
const App = () => (
103-
<SolanaWeb3ConfigProvider>
103+
<SolanaWeb3ConfigProvider wallets={[]}>
104104
<div className="content">test</div>
105105
</SolanaWeb3ConfigProvider>
106106
);
@@ -120,7 +120,7 @@ describe('SolanaWeb3ConfigProvider', () => {
120120
};
121121

122122
const App = () => (
123-
<SolanaWeb3ConfigProvider chains={[fakeChain]}>
123+
<SolanaWeb3ConfigProvider wallets={[]} chains={[fakeChain]}>
124124
<div>test</div>
125125
</SolanaWeb3ConfigProvider>
126126
);
@@ -156,7 +156,7 @@ describe('SolanaWeb3ConfigProvider', () => {
156156
const switchChain = vi.fn();
157157

158158
const App = () => (
159-
<SolanaWeb3ConfigProvider>
159+
<SolanaWeb3ConfigProvider wallets={[]}>
160160
<Connector switchChain={switchChain}>
161161
<CustomButton />
162162
</Connector>
@@ -172,7 +172,7 @@ describe('SolanaWeb3ConfigProvider', () => {
172172
const mockRpcProvider = vi.fn(() => mockRpcEndpoint);
173173

174174
const App = () => (
175-
<SolanaWeb3ConfigProvider rpcProvider={mockRpcProvider}>
175+
<SolanaWeb3ConfigProvider wallets={[]} rpcProvider={mockRpcProvider}>
176176
<div className="content">test</div>
177177
</SolanaWeb3ConfigProvider>
178178
);
@@ -185,7 +185,10 @@ describe('SolanaWeb3ConfigProvider', () => {
185185

186186
it('ConnectionProvider', () => {
187187
const App = () => (
188-
<SolanaWeb3ConfigProvider rpcProvider={() => `https://main-beta.fake-domain.com/`}>
188+
<SolanaWeb3ConfigProvider
189+
wallets={[]}
190+
rpcProvider={() => `https://main-beta.fake-domain.com/`}
191+
>
189192
<div className="content">test</div>
190193
</SolanaWeb3ConfigProvider>
191194
);
@@ -206,7 +209,7 @@ describe('SolanaWeb3ConfigProvider', () => {
206209
const App = () => {
207210
const { connect } = useWallet();
208211
return (
209-
<SolanaWeb3ConfigProvider>
212+
<SolanaWeb3ConfigProvider wallets={[]}>
210213
<div>
211214
<div className="content">test</div>
212215
<button
@@ -255,7 +258,7 @@ describe('SolanaWeb3ConfigProvider', () => {
255258

256259
const App: FC = () => {
257260
return (
258-
<SolanaWeb3ConfigProvider>
261+
<SolanaWeb3ConfigProvider wallets={[]}>
259262
<CustomConnector />
260263
</SolanaWeb3ConfigProvider>
261264
);

packages/solana/src/solana-provider/__tests__/connect.test.tsx

+22-15
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ vi.mock('@solana/wallet-adapter-react', async () => {
8787
mockSelectWalletFnNotWalletName(walletName);
8888
const mockWalletAdapter = {
8989
adapter: { name: walletName, readyState: WalletReadyState.Installed },
90+
readyState: WalletReadyState.Installed,
9091
};
9192
currentWalletRef.value = mockWalletAdapter;
9293
setCurrentWallet(mockWalletAdapter);
@@ -100,18 +101,21 @@ vi.mock('@solana/wallet-adapter-react', async () => {
100101
name: 'Coinbase Wallet',
101102
readyState: WalletReadyState.Installed,
102103
},
104+
readyState: WalletReadyState.Installed,
103105
},
104106
{
105107
adapter: {
106108
name: 'Phantom Wallet',
107109
readyState: WalletReadyState.Installed,
108110
},
111+
readyState: WalletReadyState.Installed,
109112
},
110113
{
111114
adapter: {
112115
name: 'OKX Wallet',
113116
readyState: WalletReadyState.NotDetected,
114117
},
118+
readyState: WalletReadyState.NotDetected,
115119
},
116120
],
117121
};
@@ -208,11 +212,9 @@ describe('Solana Connect', () => {
208212
expect(shownConnectRunDone.textContent).toBe('false');
209213

210214
fireEvent.click(switchWalletBtn);
211-
await vi.waitFor(() => {
212-
expect(switchWalletRunned).toBeCalled();
213-
});
214215

215216
await vi.waitFor(() => {
217+
expect(switchWalletRunned).toBeCalled();
216218
expect(mockWalletChanged).toBeCalled();
217219
});
218220

@@ -224,25 +226,25 @@ describe('Solana Connect', () => {
224226
expect(mockSelectWalletFn).toBeCalledTimes(3);
225227
});
226228

227-
await vi.waitFor(
228-
() => {
229-
expect(connectRunned).toBeCalled();
230-
expect(shownConnectRunDone.textContent).toBe('true');
231-
},
232-
{
233-
timeout: 5000,
234-
},
235-
);
229+
await vi.waitFor(() => {
230+
expect(connectRunned).toBeCalled();
231+
expect(shownConnectRunDone.textContent).toBe('true');
232+
});
236233
});
237234

238235
it('call connect but not provide wallet', async () => {
239236
const { useWallet } = await import('@solana/wallet-adapter-react');
240237
const connectRunned = vi.fn();
238+
const availableWalletFound = vi.fn();
241239

242240
const CustomConnectBtn: React.FC = () => {
243-
const { connect } = useProvider();
241+
const { connect, availableWallets } = useProvider();
244242
const { connect: connectWallet } = useWallet();
245243

244+
useEffect(() => {
245+
availableWalletFound(availableWallets?.length || 0);
246+
}, [availableWallets]);
247+
246248
return (
247249
<div className="custom-connectbtn">
248250
<button
@@ -255,13 +257,14 @@ describe('Solana Connect', () => {
255257
>
256258
Connect
257259
</button>
260+
<div className="availableWallets">{availableWallets?.length || 0}</div>
258261
</div>
259262
);
260263
};
261264

262265
const App = () => {
263266
return (
264-
<SolanaWeb3ConfigProvider>
267+
<SolanaWeb3ConfigProvider wallets={[]}>
265268
<div>
266269
<div className="content">test</div>
267270
<CustomConnectBtn />
@@ -272,11 +275,15 @@ describe('Solana Connect', () => {
272275

273276
const { selector } = xrender(App);
274277
expect(selector('.content')?.textContent).toBe('test');
278+
expect(selector('.availableWallets')?.textContent).toBe('0');
275279

276280
const connectBtn = selector('.btn-connect')!;
277281
expect(connectBtn).not.toBeNull();
278282

279283
fireEvent.click(connectBtn);
284+
await vi.waitFor(() => {
285+
expect(availableWalletFound).toBeCalledWith(0);
286+
});
280287
await vi.waitFor(() => {
281288
expect(connectRunned).toBeCalled();
282289
expect(mockSelectWalletFnNotWalletName).toBeCalledWith(null);
@@ -289,7 +296,7 @@ describe('Solana Connect', () => {
289296
const [hasExtensionInstalled, setHasExtensionInstalled] = useState(false);
290297

291298
useEffect(() => {
292-
availableWallets![0]?.hasExtensionInstalled?.().then((v) => {
299+
availableWallets?.[0]?.hasExtensionInstalled?.().then((v) => {
293300
setHasExtensionInstalled(v);
294301
});
295302
}, [availableWallets]);

packages/solana/src/solana-provider/__tests__/get-nft-metadata.test.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ describe('GetNFTMetadata', () => {
9191
const App: React.FC = () => {
9292
return (
9393
<SolanaWeb3ConfigProvider
94-
wallets={[WalletFactory(new CoinbaseWalletAdapter(), metadata_CoinbaseWallet)]}
94+
wallets={[WalletFactory(new CoinbaseWalletAdapter(), metadata_CoinbaseWallet)()]}
9595
>
9696
<NFTMetadata />
9797
</SolanaWeb3ConfigProvider>

packages/solana/src/solana-provider/__tests__/rpc-provider.test.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ describe('SolanaWeb3ConfigProvider rpcProvider', () => {
9898
const mockRpcProvider = vi.fn(() => mockRpcEndpoint);
9999

100100
const App = () => (
101-
<SolanaWeb3ConfigProvider rpcProvider={mockRpcProvider}>
101+
<SolanaWeb3ConfigProvider wallets={[]} rpcProvider={mockRpcProvider}>
102102
<div className="content">test</div>
103103
</SolanaWeb3ConfigProvider>
104104
);
@@ -111,7 +111,7 @@ describe('SolanaWeb3ConfigProvider rpcProvider', () => {
111111

112112
it('use default solana rpcProvider if not chain connected', async () => {
113113
const App = () => (
114-
<SolanaWeb3ConfigProvider>
114+
<SolanaWeb3ConfigProvider wallets={[]}>
115115
<div className="content">test</div>
116116
</SolanaWeb3ConfigProvider>
117117
);

packages/solana/src/solana-provider/__tests__/standard-wallet.test.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ describe('SolanaWeb3ConfigProvider Standard wallet', () => {
114114
const [walletReady, setWalletReady] = useState(false);
115115

116116
useEffect(() => {
117-
availableWallets![0]?.hasWalletReady?.().then((v) => {
117+
availableWallets?.[0]?.hasWalletReady?.().then((v) => {
118118
setWalletReady(v);
119119
});
120120
}, [availableWallets]);

packages/solana/src/solana-provider/__tests__/switch-chain.test.tsx

+4-4
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ describe('Switch network', () => {
7979
);
8080
};
8181
const App = () => (
82-
<SolanaWeb3ConfigProvider>
82+
<SolanaWeb3ConfigProvider wallets={[]}>
8383
<Display />
8484
</SolanaWeb3ConfigProvider>
8585
);
@@ -104,7 +104,7 @@ describe('Switch network', () => {
104104
);
105105
};
106106
const App = () => (
107-
<SolanaWeb3ConfigProvider chains={[solanaDevnet, solanaTestnet]}>
107+
<SolanaWeb3ConfigProvider wallets={[]} chains={[solanaDevnet, solanaTestnet]}>
108108
<Display />
109109
</SolanaWeb3ConfigProvider>
110110
);
@@ -126,7 +126,7 @@ describe('Switch network', () => {
126126
balance={false}
127127
autoConnect
128128
chains={[solana, solanaDevnet, solanaTestnet]}
129-
wallets={[WalletFactory(new CoinbaseWalletAdapter(), metadata_CoinbaseWallet)]}
129+
wallets={[WalletFactory(() => new CoinbaseWalletAdapter(), metadata_CoinbaseWallet)()]}
130130
>
131131
<Connector>
132132
<ConnectButton />
@@ -180,7 +180,7 @@ describe('Switch network', () => {
180180
availableChains={[solanaDevnet]}
181181
balance={false}
182182
availableWallets={[
183-
WalletFactory(new CoinbaseWalletAdapter(), metadata_CoinbaseWallet).create(),
183+
WalletFactory(new CoinbaseWalletAdapter(), metadata_CoinbaseWallet)().create(),
184184
]}
185185
onCurrentChainChange={(chain) => {
186186
mockSwitchChain(chain?.id);

packages/solana/src/solana-provider/__tests__/switch-wallet.test.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -126,8 +126,8 @@ describe('AntDesignWeb3ConfigProvider wallet', () => {
126126
availableChains={[solana, solanaDevnet]}
127127
chainAssets={[Solana, SolanaDevnet]}
128128
availableWallets={[
129-
WalletFactory(new CoinbaseWalletAdapter(), metadata_CoinbaseWallet).create(),
130-
WalletFactory(new PhantomWalletAdapter(), metadata_Phantom).create(),
129+
WalletFactory(new CoinbaseWalletAdapter(), metadata_CoinbaseWallet)().create(),
130+
WalletFactory(new PhantomWalletAdapter(), metadata_Phantom)().create(),
131131
]}
132132
>
133133
<CustomConnector />

packages/solana/src/solana-provider/__tests__/wallet-connect.test.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ describe('SolanaWeb3ConfigProvider WalletConnect', () => {
139139
return (
140140
<button
141141
onClick={() => {
142-
connect?.(availableWallets![0], { connectType: 'qrCode' });
142+
connect?.(availableWallets?.[0], { connectType: 'qrCode' });
143143
}}
144144
>
145145
Click to connect
@@ -183,7 +183,7 @@ describe('SolanaWeb3ConfigProvider WalletConnect', () => {
183183

184184
return (
185185
<div className="plugin-check">
186-
{availableWallets![0].hasExtensionInstalled === undefined ? 'true' : 'false'}
186+
{availableWallets?.[0].hasExtensionInstalled === undefined ? 'true' : 'false'}
187187
</div>
188188
);
189189
};

0 commit comments

Comments
 (0)