From 7c49c6cf9f1c226782229b7e4c9519a916ea68e2 Mon Sep 17 00:00:00 2001 From: can1357 Date: Tue, 14 Jul 2026 18:03:36 +0200 Subject: [PATCH] test(ai): cover Cursor usage registration --- packages/ai/test/cursor-usage.test.ts | 36 +++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/packages/ai/test/cursor-usage.test.ts b/packages/ai/test/cursor-usage.test.ts index ff0a81d28..5884ef7f8 100644 --- a/packages/ai/test/cursor-usage.test.ts +++ b/packages/ai/test/cursor-usage.test.ts @@ -1,4 +1,5 @@ import { describe, expect, it } from "bun:test"; +import { type AuthCredentialStore, AuthStorage } from "../src/auth-storage"; import type { UsageFetchContext, UsageFetchParams } from "../src/usage"; import { cursorUsageProvider, parseCursorUsage } from "../src/usage/cursor"; @@ -136,6 +137,41 @@ describe("cursor usage provider", () => { }); }); + describe("default registration", () => { + it("registers Cursor in AuthStorage's default usage resolver", async () => { + const store: AuthCredentialStore = { + close() {}, + listAuthCredentials() { + return []; + }, + updateAuthCredential() {}, + deleteAuthCredential() {}, + tryDisableAuthCredentialIfMatches() { + return false; + }, + replaceAuthCredentialsForProvider() { + return []; + }, + upsertAuthCredentialForProvider() { + return []; + }, + deleteAuthCredentialsForProvider() {}, + getCache() { + return null; + }, + setCache() {}, + cleanExpiredCache() {}, + }; + const storage = new AuthStorage(store); + await storage.reload(); + try { + expect(storage.usageProviderFor("cursor")).toBe(cursorUsageProvider); + } finally { + storage.close(); + } + }); + }); + describe("cursorUsageProvider", () => { it("supports oauth credentials", () => { const params: UsageFetchParams = {