summaryrefslogtreecommitdiffhomepage
path: root/packages/app/src/pages/layout/helpers.test.ts
diff options
context:
space:
mode:
authorAdam <[email protected]>2026-02-26 20:40:39 -0600
committerAdam <[email protected]>2026-02-26 20:40:39 -0600
commitb0b88f679216d1b7e16bb1098cef0d91f911d9dd (patch)
tree84ee9c9c55eb302d86e61895c1b0d43aa5d95b8d /packages/app/src/pages/layout/helpers.test.ts
parente9a7c7114184d0092c114ce7a7d9446cf0d366cc (diff)
downloadopencode-b0b88f679216d1b7e16bb1098cef0d91f911d9dd.tar.gz
opencode-b0b88f679216d1b7e16bb1098cef0d91f911d9dd.zip
fix(app): permission indicator
Diffstat (limited to 'packages/app/src/pages/layout/helpers.test.ts')
-rw-r--r--packages/app/src/pages/layout/helpers.test.ts24
1 files changed, 24 insertions, 0 deletions
diff --git a/packages/app/src/pages/layout/helpers.test.ts b/packages/app/src/pages/layout/helpers.test.ts
index 7627d9ba1..29517b624 100644
--- a/packages/app/src/pages/layout/helpers.test.ts
+++ b/packages/app/src/pages/layout/helpers.test.ts
@@ -5,6 +5,7 @@ import {
displayName,
errorMessage,
getDraggableId,
+ hasProjectPermissions,
latestRootSession,
syncWorkspaceOrder,
workspaceKey,
@@ -116,6 +117,29 @@ describe("layout workspace helpers", () => {
expect(result?.id).toBe("workspace")
})
+ test("detects project permissions with a filter", () => {
+ const result = hasProjectPermissions(
+ {
+ root: [{ id: "perm-root" }, { id: "perm-hidden" }],
+ child: [{ id: "perm-child" }],
+ },
+ (item) => item.id === "perm-child",
+ )
+
+ expect(result).toBe(true)
+ })
+
+ test("ignores project permissions filtered out", () => {
+ const result = hasProjectPermissions(
+ {
+ root: [{ id: "perm-root" }],
+ },
+ () => false,
+ )
+
+ expect(result).toBe(false)
+ })
+
test("ignores archived and child sessions when finding latest root session", () => {
const result = latestRootSession(
[