Path: blob/main/src/vs/editor/test/browser/config/testConfiguration.ts
3296 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45import { EditorConfiguration, IEnvConfiguration } from '../../../browser/config/editorConfiguration.js';6import { EditorFontLigatures, EditorFontVariations } from '../../../common/config/editorOptions.js';7import { BareFontInfo, FontInfo } from '../../../common/config/fontInfo.js';8import { TestCodeEditorCreationOptions } from '../testCodeEditor.js';9import { AccessibilitySupport } from '../../../../platform/accessibility/common/accessibility.js';10import { TestAccessibilityService } from '../../../../platform/accessibility/test/common/testAccessibilityService.js';11import { MenuId } from '../../../../platform/actions/common/actions.js';1213export class TestConfiguration extends EditorConfiguration {1415constructor(opts: Readonly<TestCodeEditorCreationOptions>) {16super(false, MenuId.EditorContext, opts, null, new TestAccessibilityService());17}1819protected override _readEnvConfiguration(): IEnvConfiguration {20const envConfig = (this.getRawOptions() as TestCodeEditorCreationOptions).envConfig;21return {22extraEditorClassName: envConfig?.extraEditorClassName ?? '',23outerWidth: envConfig?.outerWidth ?? 100,24outerHeight: envConfig?.outerHeight ?? 100,25emptySelectionClipboard: envConfig?.emptySelectionClipboard ?? true,26pixelRatio: envConfig?.pixelRatio ?? 1,27accessibilitySupport: envConfig?.accessibilitySupport ?? AccessibilitySupport.Unknown,28editContextSupported: true29};30}3132protected override _readFontInfo(styling: BareFontInfo): FontInfo {33return new FontInfo({34pixelRatio: 1,35fontFamily: 'mockFont',36fontWeight: 'normal',37fontSize: 14,38fontFeatureSettings: EditorFontLigatures.OFF,39fontVariationSettings: EditorFontVariations.OFF,40lineHeight: 19,41letterSpacing: 1.5,42isMonospace: true,43typicalHalfwidthCharacterWidth: 10,44typicalFullwidthCharacterWidth: 20,45canUseHalfwidthRightwardsArrow: true,46spaceWidth: 10,47middotWidth: 10,48wsmiddotWidth: 10,49maxDigitWidth: 10,50}, true);51}52}535455