import { test, expect } from 'vitest'import { remote } from 'webdriverio'import AWS from '@aws-sdk/client-device-farm'let browser: WebdriverIO.Browser | undefinedif (!process.env.AWS_ACCESS_KEY_ID || !process.env.AWS_SECRET_ACCESS_KEY) {throw new Error('Please provide AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY in your environment')}const projectArn = process.env.AWS_DEVICE_FARM_ARNif (!projectArn) {throw new Error('Please provide AWS_DEVICE_FARM_ARN in your environment')}test('allow to attach to an existing session', async () => {returnconst devicefarm = new AWS.DeviceFarm({ region: 'us-west-2' })const testGridUrlResult = await devicefarm.createTestGridUrl({projectArn,expiresInSeconds: 600})if (!testGridUrlResult.url) {throw new Error('Could not create a test grid url')}const url = new URL(testGridUrlResult.url)browser = await remote({logLevel: 'trace',hostname: url.host,path: url.pathname,protocol: 'https',port: 443,connectionRetryTimeout: 180000,capabilities: {browserName: 'chrome',}})await browser.url('https://guinea-pig.webdriver.io/')const title = await browser.getTitle()expect(title).toBe('WebdriverJS Testpage')await browser.deleteSession()})