@@ -13,6 +13,7 @@ const mockTokenManager = {
1313} ;
1414
1515const mockLogout = vi . fn ( ) ;
16+ const mockSetMultiLogin = vi . fn ( ) ;
1617
1718vi . mock ( '../../../src/core/auth/service' , ( ) => {
1819 const AuthService : any = vi . fn ( ) . mockImplementation ( ( ) => ( {
@@ -21,6 +22,7 @@ vi.mock('../../../src/core/auth/service', () => {
2122 getToken : ( ) => 'mock-access-token' ,
2223 authenticateWithSecret : vi . fn ( ) ,
2324 authenticate : vi . fn ( ) . mockResolvedValue ( true ) ,
25+ setMultiLogin : mockSetMultiLogin ,
2426 logout : mockLogout
2527 } ) ) ;
2628
@@ -63,6 +65,30 @@ describe('UiPath Core', () => {
6365 expect ( sdk . isInitialized ( ) ) . toBe ( false ) ; // OAuth requires initialize()
6466 } ) ;
6567
68+ it ( 'should enable multi-login on OAuth config' , ( ) => {
69+ mockSetMultiLogin . mockClear ( ) ;
70+ const sdk = new UiPath ( {
71+ baseUrl : TEST_CONSTANTS . BASE_URL ,
72+ orgName : TEST_CONSTANTS . ORGANIZATION_ID ,
73+ tenantName : TEST_CONSTANTS . TENANT_ID ,
74+ clientId : TEST_CONSTANTS . CLIENT_ID ,
75+ redirectUri : 'http://localhost:3000/callback' ,
76+ scope : 'offline_access'
77+ } ) ;
78+
79+ sdk . setMultiLogin ( ) ;
80+
81+ expect ( mockSetMultiLogin ) . toHaveBeenCalledOnce ( ) ;
82+ } ) ;
83+
84+ it ( 'should allow multi-login before config is loaded' , ( ) => {
85+ mockSetMultiLogin . mockClear ( ) ;
86+ const sdk = new UiPath ( ) ;
87+
88+ expect ( ( ) => sdk . setMultiLogin ( ) ) . not . toThrow ( ) ;
89+ expect ( mockSetMultiLogin ) . not . toHaveBeenCalled ( ) ;
90+ } ) ;
91+
6692 it ( 'should validate required config fields' , async ( ) => {
6793 const sdk = new UiPath ( {
6894 baseUrl : '' ,
0 commit comments