UNPKG

vscode-extension-tester

Version:

ExTester is a package that is designed to help you run UI tests for your Visual Studio Code extensions using selenium-webdriver.

74 lines (73 loc) 2.67 kB
/** * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License", destination); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * https://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { WebDriver, logging } from '@redhat-developer/page-objects'; import { ReleaseQuality } from './util/codeUtil'; export declare class VSBrowser { static readonly baseVersion = "1.37.0"; static readonly browserName = "vscode"; private storagePath; private extensionsFolder; private customSettings; private _driver; private codeVersion; private releaseType; private logLevel; private static _instance; constructor(codeVersion: string, releaseType: ReleaseQuality, customSettings?: object, logLevel?: logging.Level); /** * Starts the vscode browser from a given path * @param codePath path to code binary */ start(codePath: string): Promise<VSBrowser>; /** * Returns a reference to the underlying instance of Webdriver */ get driver(): WebDriver; /** * Returns the vscode version as string */ get version(): string; /** * Returns an instance of VSBrowser */ static get instance(): VSBrowser; /** * Waits until parts of the workbench are loaded */ waitForWorkbench(timeout?: number): Promise<void>; /** * Terminates the webdriver/browser */ quit(): Promise<void>; /** * Take a screenshot of the browser * @param name file name of the screenshot without extension */ takeScreenshot(name: string): Promise<void>; /** * Get a screenshots folder path * @returns string path to the screenshots folder */ getScreenshotsDir(): string; /** * Open folder(s) or file(s) in the current instance of vscode. * * @param paths path(s) of folder(s)/files(s) to open as varargs * @returns Promise resolving when all selected resources are opened and the workbench reloads */ openResources(...paths: string[]): Promise<void>; }