From dfb017c1b10cb52c24f4f0bcf745c6abea11b98f Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Wed, 7 Oct 2026 08:27:40 -0700 Subject: Feed, composer and zap tests follow today's app MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - feed tests reach the Feed from the bottom nav (the chat-home row is gone) and seed this wallet's last feed as Following (new wallets open on Popular, c89050e) plus the author's profile (readiness gate) - post-actions: its picture is made locally (it read another session's scratchpad), the post's own ⋯ (not the feed header's), a real tap on the DM picture (a tap beside a fitted picture is a tap on the post) - composer-media / video-compress: intercept every public media host (ditto is first now; the tests were uploading for real) - compose-preview: Preview is one toggle button (aria-pressed) - thread-reply: harness has a wallet (else visitor: Reply asks to sign in), registers , holds the root's id-only query; atomic send tap - video-unmute: stubs what videoNode reaches outside its slice; preload none means the in-view clip is told to load - zap-deep-profile: zap button scrolled to mid-screen (the bottom nav covered it) Co-Authored-By: Claude Opus 5.5 --- tools/image-tap-test.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'tools/image-tap-test.js') diff --git a/tools/image-tap-test.js b/tools/image-tap-test.js index c531bba..5ed182e 100644 --- a/tools/image-tap-test.js +++ b/tools/image-tap-test.js @@ -38,10 +38,11 @@ try { localStorage.setItem(k + ':follows', JSON.stringify({ tags: [['p', a]], c: '', at: now })); localStorage.setItem(k + ':feedNotes', JSON.stringify([{ id: 'c'.repeat(64), pubkey: a, kind: 1, created_at: now, content: 'a tall one http://localhost:5281/tall.png', tags: [] }])); localStorage.setItem(k + ':profiles', JSON.stringify({ [a]: { name: 'Poster', t: Date.now() } })); + localStorage.setItem('btc-wallet-feed:' + k, 'following'); // new wallets open on Popular }, [base, A]); await page.reload({ waitUntil: 'domcontentloaded' }); await waitText('receive', 20000); - await page.evaluate(() => document.querySelector('.app-bottom-nav .app-nav-button').click()); + await page.evaluate(() => document.querySelector('.app-nav-button[aria-label="Feed"]').click()); check('the picture is in the post', await waitFor(() => { const i = document.querySelector('.notes-feed img.note-img'); return i && i.complete && i.naturalWidth > 0; }, 20000)); // on the phone the box spans the column and the picture sits in its middle // (object-fit: contain); desktop Chrome sizes the box to the picture, so -- cgit v1.2.3