| File: Constants.cs | Web Access |
| Project: src\vstest\src\Microsoft.TestPlatform.ObjectModel\Microsoft.TestPlatform.ObjectModel.csproj (Microsoft.VisualStudio.TestPlatform.ObjectModel) |
// Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. using System; using System.IO; using Microsoft.VisualStudio.TestPlatform.ObjectModel.Client; using Microsoft.VisualStudio.TestPlatform.ObjectModel.Utilities; using Microsoft.VisualStudio.TestPlatform.PlatformAbstractions; namespace Microsoft.VisualStudio.TestPlatform.ObjectModel; /// <summary> /// Defines the defaults/constants used across different components. /// </summary> public static class Constants { /// <summary> /// The in process data collection run settings name. /// </summary> public const string InProcDataCollectionRunSettingsName = "InProcDataCollectionRunSettings"; /// <summary> /// The in process data collector setting name. /// </summary> public const string InProcDataCollectorSettingName = "InProcDataCollector"; /// <summary> /// The in process data collectors setting name. /// </summary> public const string InProcDataCollectorsSettingName = "InProcDataCollectors"; /// <summary> /// Name of collect dump option for blame. /// </summary> public const string BlameCollectDumpKey = "CollectDump"; /// <summary> /// Name of collect dump option for blame. /// The internal visibility is because the new feature is not publicly exposed yet and so we can retire it. /// </summary> internal const string BlameCollectMonitorPostMortemDebuggerKey = "MonitorPostmortemDebugger"; /// <summary> /// Name of collect dump option for blame. /// </summary> public const string BlameCollectHangDumpKey = "CollectHangDump"; /// <summary> /// Name of collect hang dump option for blame. /// </summary> public const string CollectDumpOnTestSessionHang = "CollectDumpOnTestSessionHang"; /// <summary> /// Name of data collection settings node in RunSettings. /// </summary> public const string DataCollectionRunSettingsName = "DataCollectionRunSettings"; /// <summary> /// Name of logger run settings node in RunSettings. /// </summary> public const string LoggerRunSettingsName = "LoggerRunSettings"; /// <summary> /// Name of loggers node in RunSettings. /// </summary> public const string LoggersSettingName = "Loggers"; /// <summary> /// Name of logger node in RunSettings. /// </summary> public const string LoggerSettingName = "Logger"; /// <summary> /// Name of friendlyName attribute of logger node. /// </summary> public const string LoggerFriendlyName = "friendlyName"; /// <summary> /// Name of friendlyName attribute of logger node in lower case. /// </summary> public const string LoggerFriendlyNameLower = "friendlyname"; /// <summary> /// Name of uri attribute of logger node. /// </summary> public const string LoggerUriName = "uri"; /// <summary> /// Name of assemblyQualifiedName attribute of logger node. /// </summary> public const string LoggerAssemblyQualifiedName = "assemblyQualifiedName"; /// <summary> /// Name of assemblyQualifiedName attribute of logger node in lower case. /// </summary> public const string LoggerAssemblyQualifiedNameLower = "assemblyqualifiedname"; /// <summary> /// Name of codeBase attribute of logger node. /// </summary> public const string LoggerCodeBase = "codeBase"; /// <summary> /// Name of codeBase attribute of logger node in lower case. /// </summary> public const string LoggerCodeBaseLower = "codebase"; /// <summary> /// Name of enabled attribute of logger node. /// </summary> public const string LoggerEnabledName = "enabled"; /// <summary> /// Name of configuration element of logger node. /// </summary> public const string LoggerConfigurationName = "Configuration"; /// <summary> /// Name of configuration element of logger node in lower case. /// </summary> public const string LoggerConfigurationNameLower = "configuration"; /// <summary> /// Name of TreatNoTestsAsError parameter /// </summary> public const string TreatNoTestsAsError = "TreatNoTestsAsError"; /// <summary> /// Name of RunConfiguration settings node in RunSettings. /// </summary> public const string RunConfigurationSettingsName = "RunConfiguration"; /// <summary> /// Default testrunner if testrunner is not specified /// </summary> public const string UnspecifiedAdapterPath = "_none_"; public const string DataCollectorsSettingName = "DataCollectors"; public const string RunSettingsName = "RunSettings"; public const string DataCollectorSettingName = "DataCollector"; /// <summary> /// Pattern used to find test run parameter node. /// </summary> public const string TestRunParametersName = "TestRunParameters"; /// <summary> /// Type of the unit test extension. (Extension author will use this name while authoring their Vsix) /// </summary> public const string UnitTestExtensionType = "UnitTestExtension"; /// <summary> /// Maximum size of the trace log file (in kilobytes). /// </summary> public const string TraceLogMaxFileSizeInKB = "TraceLogMaxFileSizeInKb"; public const string EmptyRunSettings = @"<RunSettings></RunSettings>"; public static readonly Architecture DefaultPlatform = XmlRunSettingsUtilities.OSArchitecture; /// <summary> /// Adding this for compatibility /// </summary> public const FrameworkVersion DefaultFramework = FrameworkVersion.Framework40; /// <summary> /// Default option for parallel execution /// </summary> public const int DefaultCpuCount = 1; /// <summary> /// The default batch size. /// </summary> public const long DefaultBatchSize = 10; /// <summary> /// The default protocol version /// </summary> // TODO: COMPAT: This is not great because it is not a constant, and so an external dll tells us what // capabilities we have in the implementer (e.g. client), instead we should move this closer to communication // utilities where protocol version actually makes sense. And review all the usages of this, because there are few // ways that the default version is determined. public static readonly ProtocolConfig DefaultProtocolConfig = new() { Version = 7 }; /// <summary> /// The minimum protocol version that has debug support /// </summary> public const int MinimumProtocolVersionWithDebugSupport = 3; /// <summary> /// The minimum protocol version that has debug support /// </summary> public const int MinimumProtocolVersionWithCancelDiscoveryEventHandlerSupport = 6; /// <summary> /// Name of the results directory /// </summary> public const string ResultsDirectoryName = "TestResults"; /// <summary> /// Default results directory. /// </summary> public static readonly string DefaultResultsDirectory = Path.Combine(Directory.GetCurrentDirectory(), ResultsDirectoryName); /// <summary> /// Default treatment of error from test adapters. /// </summary> public const bool DefaultTreatTestAdapterErrorsAsWarnings = false; /// <summary> /// The default execution thread apartment state. /// </summary> [CLSCompliant(false)] #if NETFRAMEWORK // Keeping default STA thread for desktop tests for UI/Functional test scenarios public static readonly PlatformApartmentState DefaultExecutionThreadApartmentState = PlatformApartmentState.STA; #else // STA threads are not supported for net core, default to MTA public static readonly PlatformApartmentState DefaultExecutionThreadApartmentState = PlatformApartmentState.MTA; #endif /// <summary> /// Constants for detecting .net framework. /// </summary> public const string TargetFrameworkAttributeFullName = "System.Runtime.Versioning.TargetFrameworkAttribute"; public const string DotNetFrameWorkStringPrefix = ".NETFramework,Version="; public const string DotNetFramework35 = ".NETFramework,Version=v3.5"; public const string DotNetFramework40 = ".NETFramework,Version=v4.0"; public const string DotNetFramework45 = ".NETFramework,Version=v4.5"; public const string DotNetFramework451 = ".NETFramework,Version=v4.5.1"; public const string DotNetFramework46 = ".NETFramework,Version=v4.6"; public const string DotNetFrameworkCore10 = ".NETCoreApp,Version=v1.0"; public const string DotNetFrameworkUap10 = "UAP,Version=v10.0"; public const string TargetFrameworkName = "TargetFrameworkName"; } /// <summary> /// Default parameters to be passed onto all loggers. /// </summary> public static class DefaultLoggerParameterNames { // Denotes target location for test run results // For ex. TrxLogger saves test run results at this target public const string TestRunDirectory = "TestRunDirectory"; // Denotes target framework for the tests. public const string TargetFramework = "TargetFramework"; }