Problem
Three test gaps leave AccountScreen refresh states, ConnectScreen responsive behaviour, and Sidebar nav persistence untested after their respective fix PRs.
1. AccountScreen refresh button loading and last-refreshed timestamp are untested
After issue #81, no test verifies: the Refresh button is disabled while isLoadingAccount is true, the "Last updated" timestamp appears after refreshAccount resolves, or the Friendbot link renders on testnet with zero balances.
2. ConnectScreen wallet options and "New to Stellar?" section are untested
After issue #82, no test verifies: wallet logos render on the connect screen, the "New to Stellar?" <details> element is in the DOM and can be expanded, and the hero section has the responsive hide class.
3. Sidebar localStorage read-on-mount and write-on-navigate are untested
After issue #72, no test verifies: mounting Sidebar with a stored value in localStorage pre-selects that section, navigating calls localStorage.setItem with the new section, and a missing key defaults to "wallet".
Solution
Write Vitest tests for all three using vi.stubGlobal("localStorage", ...) for the storage tests.
Acceptance Criteria
Note for Contributors: Write a clear PR description. Include the full npm test output.
Problem
Three test gaps leave
AccountScreenrefresh states,ConnectScreenresponsive behaviour, andSidebarnav persistence untested after their respective fix PRs.1.
AccountScreenrefresh button loading and last-refreshed timestamp are untestedAfter issue #81, no test verifies: the Refresh button is disabled while
isLoadingAccountis true, the "Last updated" timestamp appears afterrefreshAccountresolves, or the Friendbot link renders on testnet with zero balances.2.
ConnectScreenwallet options and "New to Stellar?" section are untestedAfter issue #82, no test verifies: wallet logos render on the connect screen, the "New to Stellar?"
<details>element is in the DOM and can be expanded, and the hero section has the responsive hide class.3.
SidebarlocalStorageread-on-mount and write-on-navigate are untestedAfter issue #72, no test verifies: mounting
Sidebarwith a stored value inlocalStoragepre-selects that section, navigating callslocalStorage.setItemwith the new section, and a missing key defaults to"wallet".Solution
Write Vitest tests for all three using
vi.stubGlobal("localStorage", ...)for the storage tests.Acceptance Criteria
AccountScreenrefresh state tests passConnectScreenwallet options and collapsible section tests passSidebarlocalStoragepersistence tests passnpm test