import { describe, it, expect, vi } from 'vitest'import { getPolyfillManager } from '../../src/session/polyfill.js'import { getShadowRootManager } from '../../src/session/shadowRoot.js'import { getNetworkManager } from '../../src/session/networkManager.js'import { getDialogManager } from '../../src/session/dialog.js'import { getContextManager } from '../../src/session/context.js'import { registerSessionManager } from '../../src/session/index.js'vi.mock('../../src/session/polyfill.js', () => ({getPolyfillManager: vi.fn(() => ({ initialize: vi.fn() }))}))vi.mock('../../src/session/shadowRoot.js', () => ({getShadowRootManager: vi.fn(() => ({ initialize: vi.fn() }))}))vi.mock('../../src/session/networkManager.js', () => ({getNetworkManager: vi.fn(() => ({ initialize: vi.fn() }))}))vi.mock('../../src/session/dialog.js', () => ({getDialogManager: vi.fn(() => ({ initialize: vi.fn() }))}))vi.mock('../../src/session/context.js', () => ({getContextManager: vi.fn(() => ({ initialize: vi.fn() }))}))describe('webdriverio session manager', () => {it('registers all session manager', async () => {const browser = {capabilities: {webSocketUrl: 'ws://foobar'}} as unknown as WebdriverIO.BrowserregisterSessionManager(browser)expect(getPolyfillManager).toBeCalledWith(browser)expect(getShadowRootManager).toBeCalledWith(browser)expect(getNetworkManager).toBeCalledWith(browser)expect(getDialogManager).toBeCalledWith(browser)expect(getContextManager).toBeCalledWith(browser)})it('does not register for protocol stub', async () => {const browser = {capabilities: {}} as unknown as WebdriverIO.BrowserregisterSessionManager(browser)expect(getPolyfillManager).not.toBeCalledWith(browser)expect(getShadowRootManager).not.toBeCalledWith(browser)expect(getNetworkManager).not.toBeCalledWith(browser)expect(getDialogManager).not.toBeCalledWith(browser)expect(getContextManager).not.toBeCalledWith(browser)})})