Skip to content

Commit 8cb8203

Browse files
test(OUT-4015): cover non-draft install filtering
Assert getActionableInstalls hides only explicit drafts while missing/null status is treated as non-draft and shown, matching the status != draft gate. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent c08e019 commit 8cb8203

1 file changed

Lines changed: 3 additions & 3 deletions

File tree

‎tests/unit/installed-apps.service.test.ts‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,16 +59,16 @@ describe('InstalledAppsService#getActionableInstalls', () => {
5959
expect(result[0]).toMatchObject({ installId: 'pub-1', appId: 'app-pub', actionLabel: REGISTERED_LABEL })
6060
})
6161

62-
it('shows only published installs — anything not published is hidden (allowlist)', async () => {
62+
it('hides only explicit drafts — missing/null status is treated as non-draft and shown (denylist)', async () => {
6363
const { service } = buildService([
6464
createInstall({ id: 'draft-1', appId: 'app-draft', status: AppInstallStatus.DRAFT }),
65-
createInstall({ id: 'unknown-1', appId: 'app-unknown', status: undefined }),
65+
createInstall({ id: 'undefined-1', appId: 'app-undefined', status: undefined }),
6666
createInstall({ id: 'null-1', appId: 'app-null', status: null }),
6767
])
6868

6969
const result = await service.getActionableInstalls()
7070

71-
expect(result).toEqual([])
71+
expect(result.map((r) => r.installId)).toEqual(['undefined-1', 'null-1'])
7272
})
7373

7474
it('excludes a published install that has not registered a complete action label', async () => {

0 commit comments

Comments
 (0)