@@ -7,6 +7,7 @@ import type {
77 AuthResult ,
88 EmbeddedStorage ,
99 AuthProvider ,
10+ SpendingLimitsProvider ,
1011 URLParamsAccessor ,
1112} from "./interfaces" ;
1213import type { StamperWithKeyManagement } from "@phantom/sdk-types" ;
@@ -20,10 +21,10 @@ jest.mock("@phantom/parsers", () => ({
2021 parseMessage : jest . fn ( ) . mockReturnValue ( { base64url : "mock-base64url" } ) ,
2122 parseTransactionToBase64Url : jest . fn ( ) . mockResolvedValue ( { base64url : "mock-base64url" , originalFormat : "mock" } ) ,
2223 parseSignMessageResponse : jest . fn ( ) . mockReturnValue ( { signature : "mock-signature" , rawSignature : "mock-raw" } ) ,
23- parseTransactionResponse : jest . fn ( ) . mockReturnValue ( {
24- hash : "mock-transaction-hash" ,
24+ parseTransactionResponse : jest . fn ( ) . mockReturnValue ( {
25+ hash : "mock-transaction-hash" ,
2526 rawTransaction : "mock-raw-tx" ,
26- blockExplorer : "https://explorer.com/tx/mock-transaction-hash"
27+ blockExplorer : "https://explorer.com/tx/mock-transaction-hash" ,
2728 } ) ,
2829 parseSolanaTransactionSignature : jest . fn ( ) . mockReturnValue ( { signature : "mock-signature" , fallback : false } ) ,
2930} ) ) ;
@@ -87,6 +88,7 @@ describe("EmbeddedProvider Auth Flows", () => {
8788 let mockLogger : DebugLogger ;
8889 let mockStorage : jest . Mocked < EmbeddedStorage > ;
8990 let mockAuthProvider : jest . Mocked < AuthProvider > ;
91+ let mockSpendingLimitsProvider : jest . Mocked < SpendingLimitsProvider > ;
9092 let mockURLParamsAccessor : jest . Mocked < URLParamsAccessor > ;
9193 let mockStamper : jest . Mocked < StamperWithKeyManagement > ;
9294 let mockClient : jest . Mocked < PhantomClient > ;
@@ -129,6 +131,11 @@ describe("EmbeddedProvider Auth Flows", () => {
129131 resumeAuthFromRedirect : jest . fn ( ) ,
130132 } ;
131133
134+ // Mock spending limits provider
135+ mockSpendingLimitsProvider = {
136+ upsertSpendingLimit : jest . fn ( ) ,
137+ } ;
138+
132139 // Mock URL params accessor
133140 mockURLParamsAccessor = {
134141 getParam : jest . fn ( ) . mockReturnValue ( null ) ,
@@ -151,6 +158,7 @@ describe("EmbeddedProvider Auth Flows", () => {
151158 name : "test-platform" ,
152159 storage : mockStorage ,
153160 authProvider : mockAuthProvider ,
161+ spendingLimitsProvider : mockSpendingLimitsProvider ,
154162 urlParamsAccessor : mockURLParamsAccessor ,
155163 stamper : mockStamper ,
156164 } ;
@@ -415,8 +423,6 @@ describe("EmbeddedProvider Auth Flows", () => {
415423 expect ( mockAuthProvider . authenticate ) . toHaveBeenCalled ( ) ;
416424 } ) ;
417425
418-
419-
420426 it ( "should fall back to fresh authentication when session is missing from database but URL has session_id" , async ( ) => {
421427 // Setup: URL contains session_id parameter (session was wiped from DB)
422428 mockURLParamsAccessor . getParam . mockReturnValue ( "wiped-session-123" ) ;
@@ -865,7 +871,9 @@ describe("EmbeddedProvider Auth Flows", () => {
865871 mockStorage . getSession . mockResolvedValue ( null ) ;
866872 mockAuthProvider . authenticate . mockRejectedValue ( new Error ( "IndexedDB access denied" ) ) ;
867873
868- await expect ( provider . connect ( ) ) . rejects . toThrow ( "Storage error: Unable to access browser storage. Please ensure storage is available and try again." ) ;
874+ await expect ( provider . connect ( ) ) . rejects . toThrow (
875+ "Storage error: Unable to access browser storage. Please ensure storage is available and try again." ,
876+ ) ;
869877 } ) ;
870878
871879 it ( "should clean up state on authentication failures" , async ( ) => {
0 commit comments