<?xml version="1.0" encoding="utf-8"?>
<root>
  <!-- 
    Microsoft ResX Schema 
    
    Version 2.0
    
    The primary goals of this format is to allow a simple XML format 
    that is mostly human readable. The generation and parsing of the 
    various data types are done through the TypeConverter classes 
    associated with the data types.
    
    Example:
    
    ... ado.net/XML headers & schema ...
    <resheader name="resmimetype">text/microsoft-resx</resheader>
    <resheader name="version">2.0</resheader>
    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
        <value>[base64 mime encoded serialized .NET Framework object]</value>
    </data>
    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
        <comment>This is a comment</comment>
    </data>
                
    There are any number of "resheader" rows that contain simple 
    name/value pairs.
    
    Each data row contains a name, and value. The row also contains a 
    type or mimetype. Type corresponds to a .NET class that support 
    text/value conversion through the TypeConverter architecture. 
    Classes that don't support this are serialized and stored with the 
    mimetype set.
    
    The mimetype is used for serialized objects, and tells the 
    ResXResourceReader how to depersist the object. This is currently not 
    extensible. For a given mimetype the value must be set accordingly:
    
    Note - application/x-microsoft.net.object.binary.base64 is the format 
    that the ResXResourceWriter will generate, however the reader can 
    read any of the formats listed below.
    
    mimetype: application/x-microsoft.net.object.binary.base64
    value   : The object must be serialized with 
            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
            : and then encoded with base64 encoding.
    
    mimetype: application/x-microsoft.net.object.soap.base64
    value   : The object must be serialized with 
            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
            : and then encoded with base64 encoding.

    mimetype: application/x-microsoft.net.object.bytearray.base64
    value   : The object must be serialized into a byte array 
            : using a System.ComponentModel.TypeConverter
            : and then encoded with base64 encoding.
    -->
  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
    <xsd:element name="root" msdata:IsDataSet="true">
      <xsd:complexType>
        <xsd:choice maxOccurs="unbounded">
          <xsd:element name="metadata">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" />
              </xsd:sequence>
              <xsd:attribute name="name" use="required" type="xsd:string" />
              <xsd:attribute name="type" type="xsd:string" />
              <xsd:attribute name="mimetype" type="xsd:string" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="assembly">
            <xsd:complexType>
              <xsd:attribute name="alias" type="xsd:string" />
              <xsd:attribute name="name" type="xsd:string" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="data">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
              <xsd:attribute ref="xml:space" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="resheader">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" />
            </xsd:complexType>
          </xsd:element>
        </xsd:choice>
      </xsd:complexType>
    </xsd:element>
  </xsd:schema>
  <resheader name="resmimetype">
    <value>text/microsoft-resx</value>
  </resheader>
  <resheader name="version">
    <value>2.0</value>
  </resheader>
  <resheader name="reader">
    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <resheader name="writer">
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <data name="CannotFindFile" xml:space="preserve">
    <value>Could not find file '{0}'.</value>
    <comment>{0} is the file path.</comment>
  </data>
  <data name="Common_CannotBeNullOrEmpty" xml:space="preserve">
    <value>The parameter should not be null or empty.</value>
    <comment>{Locked="null"}</comment>
  </data>
  <data name="DeploymentErrorBadDeploymentItem" xml:space="preserve">
    <value>Test Run deployment issue: Bad deployment item: '{0}': output directory '{1}' specifies the item to be deployed outside deployment root directory which is not allowed.</value>
    <comment>{0} is the deployment item path. {1} is the output directory.</comment>
  </data>
  <data name="DeploymentErrorFailedToAccesOutputDirectory" xml:space="preserve">
    <value>Test Run deployment issue: Failed to access output directory '{1}' specified by deployment item '{0}', the item will not be deployed: {2}: {3}</value>
    <comment>{0} is the deployment item path. {1} is the output directory. {2} is the exception type. {3} is the exception message.</comment>
  </data>
  <data name="DeploymentErrorFailedToAccessFile" xml:space="preserve">
    <value>Test Run deployment issue: Failed to access the file '{0}': {1}: {2}</value>
    <comment>{0} is the file path. {1} is the exception type. {2} is the exception message.</comment>
  </data>
  <data name="DeploymentErrorFailedToCopyWithOverwrite" xml:space="preserve">
    <value>Test Run deployment issue: Failed to copy file '{0}' to '{1}': {2}: {3} (HResult: 0x{4:X8})</value>
    <comment>{0} is the source file path. {1} is the destination file path. {2} is the exception type. {3} is the exception message. {4} is the exception HResult.</comment>
  </data>
  <data name="DeploymentErrorFailedToDeployDependencies" xml:space="preserve">
    <value>Test Run deployment issue: Failed to deploy dependencies for test storage '{0}': {1}</value>
    <comment>{0} is the test storage or source path. {1} is the exception details.</comment>
  </data>
  <data name="DeploymentErrorFailedToGetFileForDeploymentItem" xml:space="preserve">
    <value>Test Run deployment issue: Failed to get the file for {0}: {1}: {2}</value>
    <comment>{0} is the deployment item description. {1} is the exception type. {2} is the exception message.</comment>
  </data>
  <data name="DeploymentErrorGettingSatellite" xml:space="preserve">
    <value>Test Run deployment issue: an error occurred while getting satellite assemblies for {0}: {1}: {2}</value>
    <comment>{0} is the deployment item. {1} is the exception type. {2} is the exception message.</comment>
  </data>
  <data name="DeploymentItem" xml:space="preserve">
    <value>deployment item '{0}'</value>
    <comment>{0} is the deployment item path.</comment>
  </data>
  <data name="DeploymentItemContainsInvalidCharacters" xml:space="preserve">
    <value>Invalid deployment item: the specified path '{0}' or output directory '{1}' contains illegal characters.</value>
    <comment>{0} is the deployment item path. {1} is the output directory.</comment>
  </data>
  <data name="DeploymentItemOutputDirectoryCannotBeNull" xml:space="preserve">
    <value>Invalid deployment item: the output directory cannot be null.</value>
    <comment>{Locked="null"}</comment>
  </data>
  <data name="DeploymentItemOutputDirectoryMustBeRelative" xml:space="preserve">
    <value>Invalid deployment item: the specified output directory '{0}' is not relative.</value>
    <comment>{0} is the output directory.</comment>
  </data>
  <data name="DeploymentItemPathCannotBeNullOrEmpty" xml:space="preserve">
    <value>Invalid deployment item: the path must contain at least one character.</value>
  </data>
  <data name="DeploymentItemWithOutputDirectory" xml:space="preserve">
    <value>deployment item '{0}' (output directory '{1}')</value>
    <comment>{0} is the deployment item path. {1} is the output directory.</comment>
  </data>
  <data name="InvalidSettingsXmlElement" xml:space="preserve">
    <value>MSTestAdapter encountered an unexpected element '{0}' in its settings '{1}'. Remove this element and try again.</value>
    <comment>{0} is the unexpected XML element name. {1} is the settings section name. {Locked="MSTestAdapter"}</comment>
  </data>
  <data name="InvalidSettingsXml" xml:space="preserve">
    <value>MSTestAdapter failed to parse the runsettings XML.</value>
    <comment>{Locked="MSTestAdapter"}{Locked="runsettings"}</comment>
  </data>
  <data name="DeploymentDependencyLoadFailed" xml:space="preserve">
    <value>Test Run deployment issue: Failed to load the assembly or module '{0}'. Reason: {1}</value>
    <comment>{0} is the assembly or module path or assembly identity. {1} is the reason the assembly or module could not be loaded.</comment>
  </data>
  <data name="MissingDeploymentDependency" xml:space="preserve">
    <value>Test Run deployment issue: The assembly or module '{0}' was not found. Reason: {1}</value>
    <comment>{0} is the assembly or module name. {1} is the reason the dependency was not found.</comment>
  </data>
  <data name="MissingDeploymentDependencyWithoutReason" xml:space="preserve">
    <value>Test Run deployment issue: The assembly or module '{0}' was not found.</value>
    <comment>{0} is the assembly or module name.</comment>
  </data>
  <data name="TestRunName" xml:space="preserve">
    <value>{0}_{1} {2}</value>
    <comment>{0} is the deployment folder prefix. {1} is the user name. {2} is the date/time and process id suffix.</comment>
  </data>
  <data name="UTA_DataSourceConfigurationSectionMissing" xml:space="preserve">
    <value>Data source '{0}' cannot be found in the test configuration settings</value>
    <comment>{0} is the data source name.</comment>
  </data>
  <data name="UTA_ErrorDataConnectionFailed" xml:space="preserve">
    <value>The unit test adapter failed to connect to the data source or to read the data. For more information on troubleshooting this error, see "Troubleshooting Data-Driven Unit Tests" (http://go.microsoft.com/fwlink/?LinkId=62412) in the MSDN Library. Error details: {0}</value>
    <comment>{0} is the error details. {Locked="http://go.microsoft.com/fwlink/?LinkId=62412"}{Locked="MSDN"}</comment>
  </data>
  <data name="WrongNumberOfObjects" xml:space="preserve">
    <value>Wrong number of objects for permutation. Should be greater than zero.</value>
  </data>
  <data name="InvalidValue" xml:space="preserve">
    <value>Invalid value '{0}' for runsettings entry '{1}', setting will be ignored.</value>
    <comment>{0} is the invalid value. {1} is the runsettings entry name. {Locked="runsettings"}</comment>
  </data>
  <data name="InvalidTimeoutValue" xml:space="preserve">
    <value>Invalid value '{0}' for runsettings entry '{1}'. The timeout must be a strictly positive integer (in milliseconds); a value of 0 or less is not allowed. Omit the entry to use the default (no timeout). The setting will be ignored.</value>
    <comment>{0} is the invalid value. {1} is the runsettings entry name. {Locked="runsettings"}</comment>
  </data>
  <data name="AssemblyCleanupTimedOut" xml:space="preserve">
    <value>Assembly cleanup method '{0}.{1}' timed out after {2}ms</value>
    <comment>{0} is the type name. {1} is the assembly cleanup method name. {2} is the timeout in milliseconds.</comment>
  </data>
  <data name="AssemblyCleanupWasCancelled" xml:space="preserve">
    <value>Assembly cleanup method '{0}.{1}' was canceled</value>
    <comment>{0} is the type name. {1} is the assembly cleanup method name.</comment>
  </data>
  <data name="AssemblyInitializeTimedOut" xml:space="preserve">
    <value>Assembly initialize method '{0}.{1}' timed out after {2}ms</value>
    <comment>{0} is the type name. {1} is the assembly initialize method name. {2} is the timeout in milliseconds.</comment>
  </data>
  <data name="AssemblyInitializeWasCancelled" xml:space="preserve">
    <value>Assembly initialize method '{0}.{1}' was canceled</value>
    <comment>{0} is the type name. {1} is the assembly initialize method name.</comment>
  </data>
  <data name="AttachmentSetDisplayName" xml:space="preserve">
    <value>MSTestAdapterV2</value>
    <comment>{Locked="MSTestAdapterV2"}</comment>
  </data>
  <data name="CannotEnumerateIDataSourceAttribute" xml:space="preserve">
    <value>Exception occurred while enumerating IDataSource attribute on "{0}.{1}": {2}</value>
    <comment>{0} is the type name with namespace. {1} is the method name. {2} is the exception details. {Locked="IDataSource"}</comment>
  </data>
  <data name="CannotExpandIDataSourceAttribute" xml:space="preserve">
    <value>Exception occurred while expanding IDataSource rows from attribute on "{0}.{1}": {2}</value>
    <comment>{0} is the type name with namespace. {1} is the method name. {2} is the row expansion warning. {Locked="IDataSource"}{Locked="CannotExpandIDataSourceAttribute_DuplicateDisplayName"}{Locked="CannotExpandIDataSourceAttribute_CannotSerialize"}</comment>
  </data>
  <data name="CannotExpandIDataSourceAttribute_CannotSerialize" xml:space="preserve">
    <value>Data on index {0} for "{1}" cannot be serialized. All data provided through "IDataSource" should be serializable. If you need to test non-serializable data sources, please make sure you add "TestDataSourceDiscovery" attribute on your test assembly and set the discovery option to "DuringExecution".</value>
    <comment>{0} is the zero-based data row index. {1} is the test name. {Locked="IDataSource"}{Locked="TestDataSourceDiscovery"}{Locked="DuringExecution"}</comment>
  </data>
  <data name="CannotRunTestArgumentsMismatchError" xml:space="preserve">
    <value>Cannot run test method '{0}.{1}': Test data doesn't match method parameters. Either the count or types are different.
Test expected {2} parameter(s), with types '{3}',
but received {4} argument(s), with types '{5}'.</value>
    <comment>{0} is the declaring type full name. {1} is the method name. {2} is the expected parameter count. {3} is the expected parameter type list. {4} is the received argument count. {5} is the received argument type list.</comment>
  </data>
  <data name="CannotRunTestMethodNoDataError" xml:space="preserve">
    <value>Cannot run test method '{0}.{1}': Method has parameters, but does not define any test source. Use '[DataRow]', '[DynamicData]', or a custom 'ITestDataSource' data source to provide test data.</value>
    <comment>{0} is the declaring type full name. {1} is the method name. {Locked="[DataRow]"}{Locked="[DynamicData]"}{Locked="ITestDataSource"}</comment>
  </data>
  <data name="ClassCleanupTimedOut" xml:space="preserve">
    <value>Class cleanup method '{0}.{1}' timed out after {2}ms</value>
    <comment>{0} is the type name. {1} is the class cleanup method name. {2} is the timeout in milliseconds.</comment>
  </data>
  <data name="ClassCleanupWasCancelled" xml:space="preserve">
    <value>Class cleanup method '{0}.{1}' was canceled</value>
    <comment>{0} is the type name. {1} is the class cleanup method name.</comment>
  </data>
  <data name="ClassInitializeTimedOut" xml:space="preserve">
    <value>Class initialize method '{0}.{1}' timed out after {2}ms</value>
    <comment>{0} is the type name. {1} is the class initialize method name. {2} is the timeout in milliseconds.</comment>
  </data>
  <data name="ClassInitializeWasCancelled" xml:space="preserve">
    <value>Class initialize method '{0}.{1}' was canceled</value>
    <comment>{0} is the type name. {1} is the class initialize method name.</comment>
  </data>
  <data name="CouldNotInspectTypeDuringDiscovery" xml:space="preserve">
    <value>MSTestAdapter failed to discover tests in class '{0}' of assembly '{1}' because {2}.</value>
    <comment>{0} is the class name. {1} is the assembly path. {2} is the failure reason. {Locked="MSTestAdapter"}</comment>
  </data>
  <data name="DataDrivenResultDisplayName" xml:space="preserve">
    <value>{0} (Data Row {1})</value>
    <comment>{0} is the test display name. {1} is the data row index.</comment>
  </data>
  <data name="DebugTraceBanner" xml:space="preserve">
    <value>Debug Trace:</value>
  </data>
  <data name="DiscoveryWarning" xml:space="preserve">
    <value>[MSTest][Discovery][{0}] {1}</value>
    <comment>{0} is the source path. {1} is the discovery warning message. {Locked="[MSTest][Discovery]"}</comment>
  </data>
  <data name="DuplicateConfigurationError" xml:space="preserve">
    <value>Both '.runsettings' and '.testconfig.json' files have been detected. Please select only one of these test configuration files.</value>
    <comment>{Locked=".runsettings"}{Locked=".testconfig.json"}</comment>
  </data>
  <data name="ExceptionOccuredWhileGettingTheExceptionDescription" xml:space="preserve">
    <value>"{0}": (Failed to get exception description due to an exception of type "{1}".</value>
    <comment>{0} is the type of the original exception. {1} is the thrown exception type.</comment>
  </data>
  <data name="Execution_Test_Cancelled" xml:space="preserve">
    <value>Test '{0}' was canceled</value>
    <comment>{0} is the test name.</comment>
  </data>
  <data name="Execution_Test_Timeout" xml:space="preserve">
    <value>Test '{0}' timed out after {1}ms</value>
    <comment>{0} is the test name. {1} is the timeout in milliseconds.</comment>
  </data>
  <data name="FailedToGetCustomAttribute" xml:space="preserve">
    <value>Getting custom attributes for type {0} threw exception (will ignore and use the reflection way): {1}</value>
    <comment>{0} is the attribute full type name. {1} is the exception description.</comment>
  </data>
  <data name="GenericParameterCantBeInferred" xml:space="preserve">
    <value>The type of the generic parameter '{0}' could not be inferred.</value>
    <comment>{0} is the generic parameter name.</comment>
  </data>
  <data name="GenericParameterCantBeInferredBecauseNoArguments" xml:space="preserve">
    <value>The generic test method '{0}' doesn't have arguments, so the generic parameter cannot be inferred.</value>
    <comment>{0} is the generic test method name.</comment>
  </data>
  <data name="GenericParameterConflict" xml:space="preserve">
    <value>Found two conflicting types for generic parameter '{0}'. The conflicting types are '{1}' and '{2}'.</value>
    <comment>{0} is the generic parameter name. {1} is the first conflicting type. {2} is the second conflicting type.</comment>
  </data>
  <data name="GlobalTestCleanupTimedOut" xml:space="preserve">
    <value>Global test cleanup method '{0}.{1}' timed out after {2}ms</value>
    <comment>{0} is the type name. {1} is the global test cleanup method name. {2} is the timeout in milliseconds.</comment>
  </data>
  <data name="GlobalTestCleanupWasCancelled" xml:space="preserve">
    <value>Global test cleanup method '{0}.{1}' was canceled</value>
    <comment>{0} is the type name. {1} is the global test cleanup method name.</comment>
  </data>
  <data name="GlobalTestInitializeTimedOut" xml:space="preserve">
    <value>Global test initialize method '{0}.{1}' timed out after {2}ms</value>
    <comment>{0} is the type name. {1} is the global test initialize method name. {2} is the timeout in milliseconds.</comment>
  </data>
  <data name="GlobalTestInitializeWasCancelled" xml:space="preserve">
    <value>Global test initialize method '{0}.{1}' was canceled</value>
    <comment>{0} is the type name. {1} is the global test initialize method name.</comment>
  </data>
  <data name="InvalidParallelScopeValue" xml:space="preserve">
    <value>Invalid value '{0}' specified for 'Scope'. Supported scopes are {1}.</value>
    <comment>{0} is the invalid scope value. {1} is the supported scope list. {Locked="Scope"}</comment>
  </data>
  <data name="InvalidParallelWorkersValue" xml:space="preserve">
    <value>Invalid value '{0}' specified for 'Workers'. The value should be a non-negative integer.</value>
    <comment>{0} is the invalid worker count. {Locked="Workers"}</comment>
  </data>
  <data name="InvalidSettingsXmlAttribute" xml:space="preserve">
    <value>Invalid settings '{0}'. Unexpected XmlAttribute: '{1}'.</value>
    <comment>{0} is the settings element name. {1} is the unexpected XML attribute name. {Locked="XmlAttribute"}</comment>
  </data>
  <data name="OlderTFMVersionFound" xml:space="preserve">
    <value>An older version of MSTestV2 package is loaded in assembly, test discovery might fail to discover all data tests if they depend on `.runsettings` file.</value>
    <comment>{Locked="MSTestV2"}{Locked=".runsettings"}</comment>
  </data>
  <data name="SourcesNotSupported" xml:space="preserve">
    <value>Running tests in any of the provided sources is not supported for the selected platform</value>
  </data>
  <data name="TestAssembly_FileDoesNotExist" xml:space="preserve">
    <value>File does not exist: {0}</value>
    <comment>{0} is the file path.</comment>
  </data>
  <data name="TestCleanupTimedOut" xml:space="preserve">
    <value>Test cleanup method '{0}.{1}' timed out after {2}ms</value>
    <comment>{0} is the type name. {1} is the test cleanup method name. {2} is the timeout in milliseconds.</comment>
  </data>
  <data name="TestCleanupWasCancelled" xml:space="preserve">
    <value>Test cleanup method '{0}.{1}' was canceled</value>
    <comment>{0} is the type name. {1} is the test cleanup method name.</comment>
  </data>
  <data name="TestContextMessageBanner" xml:space="preserve">
    <value>TestContext Messages:</value>
    <comment>{Locked="TestContext"}</comment>
  </data>
  <data name="TestInitializeTimedOut" xml:space="preserve">
    <value>Test initialize method '{0}.{1}' timed out after {2}ms</value>
    <comment>{0} is the type name. {1} is the test initialize method name. {2} is the timeout in milliseconds.</comment>
  </data>
  <data name="TestInitializeWasCancelled" xml:space="preserve">
    <value>Test initialize method '{0}.{1}' was canceled</value>
    <comment>{0} is the type name. {1} is the test initialize method name.</comment>
  </data>
  <data name="TestNotFound" xml:space="preserve">
    <value>Test method {0} was not found.</value>
    <comment>{0} is the test method name.</comment>
  </data>
  <data name="DependencyConfigurationNodeWithoutTest" xml:space="preserve">
    <value>The dependency node at index {0} of the 'mstest:execution:dependencies:nodes' configuration section has no 'test' value and is ignored.</value>
    <comment>{0} is the zero-based index of the node. {Locked="mstest:execution:dependencies:nodes"}{Locked="test"}</comment>
  </data>  <data name="DependencyConfigurationEmptyChain" xml:space="preserve">
    <value>The chain at index {0} of the 'mstest:execution:dependencies:chains' configuration section is empty and declares no dependency. Remove it: a chain needs at least two tests to express an order.</value>
    <comment>{0} is the zero-based index of the empty chain. {Locked="mstest:execution:dependencies:chains"}</comment>
  </data>
  <data name="DependencyConfigurationInvalidReference" xml:space="preserve">
    <value>The test reference '{0}' in the 'mstest:execution:dependencies' configuration section is not valid. Use 'Namespace.Class.Method', or 'Namespace.Class.*' for every test of a class.</value>
    <comment>{0} is the invalid reference. {Locked="mstest:execution:dependencies"}</comment>
  </data>
  <data name="DependencyConfigurationDependentNotFound" xml:space="preserve">
    <value>The 'mstest:execution:dependencies' configuration section declares dependencies for '{0}', which matches no test in this run. They are ignored.</value>
    <comment>{0} is the declared test reference. {Locked="mstest:execution:dependencies"}</comment>
  </data>
  <data name="DependencyConfigurationNodeWithoutPrerequisites" xml:space="preserve">
    <value>The 'mstest:execution:dependencies' configuration section declares a node for '{0}' with no 'dependsOn' entries, which has no effect.</value>
    <comment>{0} is the declared test reference. {Locked="mstest:execution:dependencies"}{Locked="dependsOn"}</comment>
  </data>
  <data name="DependsOnCycle" xml:space="preserve">
    <value>Dependency cycle detected between tests: {0}. The tests in the cycle cannot be ordered and are reported as failed. Remove one of the dependency declarations to break the cycle.</value>
    <comment>{0} is the cycle rendered as a path, for example 'A &gt; B &gt; A'.</comment>
  </data>
  <data name="DependsOnClassLevelCycle" xml:space="preserve">
    <value>Dependencies between the following test classes cannot be scheduled with class-level parallelization because the classes depend on each other: {0}. Their tests are run sequentially, in dependency order, so the declared order is still honored. Use &lt;Scope&gt;MethodLevel&lt;/Scope&gt; (or [Parallelize(Scope = ExecutionScope.MethodLevel)]) to schedule each test individually and run them in parallel again.</value>
    <comment>{0} is a comma-separated list of test class names. {Locked="MethodLevel"}{Locked="[Parallelize(Scope = ExecutionScope.MethodLevel)]"}{Locked="Scope"}</comment>
  </data>
  <data name="DependsOnTargetNotFound" xml:space="preserve">
    <value>Test '{0}' declares a dependency on '{1}', which matches no test in this test source. Dependencies are resolved within a single source, so a target in another test assembly is not supported. The dependency is ignored.</value>
    <comment>{0} is the fully qualified name of the test declaring the dependency. {1} is the declared target.</comment>
  </data>
  <data name="DependsOnPrerequisiteNotPassed" xml:space="preserve">
    <value>Test skipped because it depends on '{0}', which did not pass.</value>
    <comment>{0} is the fully qualified name of the test that did not pass.</comment>
  </data>
  <data name="TestParallelizationBanner" xml:space="preserve">
    <value>Test Parallelization enabled for {0} (Workers: {1}, Scope: {2})</value>
    <comment>{0} is the test source path. {1} is the worker count. {2} is the parallelization scope. {Locked="Workers"}{Locked="Scope"}</comment>
  </data>
  <data name="RandomTestOrderBanner" xml:space="preserve">
    <value>Random test order enabled (Seed: {0}). Set 'RandomTestOrderSeed' to reproduce this order.</value>
    <comment>{0} is the random test order seed. {Locked="Seed"}{Locked="RandomTestOrderSeed"}</comment>
  </data>
  <data name="RandomTestOrderAndOrderTestsByNameInClassConflict" xml:space="preserve">
    <value>Both 'RandomizeTestOrder' and 'OrderTestsByNameInClass' are set. 'OrderTestsByNameInClass' will be ignored.</value>
    <comment>{Locked="RandomizeTestOrder"}{Locked="OrderTestsByNameInClass"}</comment>
  </data>
  <data name="DeprecatedFlatOrderTestsByNameInClassKey" xml:space="preserve">
    <value>The 'mstest:orderTestsByNameInClass' configuration key is deprecated and will be removed in a future version. Use 'mstest:execution:orderTestsByNameInClass' instead.</value>
    <comment>{Locked="mstest:orderTestsByNameInClass"}{Locked="mstest:execution:orderTestsByNameInClass"}</comment>
  </data>
  <data name="UTA_AssemblyCleanupMethodWasUnsuccesful" xml:space="preserve">
    <value>Assembly Cleanup method {0}.{1} failed. Error Message: {2}. StackTrace: {3}</value>
    <comment>{0} is the declaring type name. {1} is the assembly cleanup method name. {2} is the error message. {3} is the stack trace.</comment>
  </data>
  <data name="UTA_AssemblyInitMethodThrows" xml:space="preserve">
    <value>Assembly Initialization method {0}.{1} threw exception. {2}: {3}. Aborting test execution.</value>
    <comment>{0} is the declaring type name. {1} is the assembly initialization method name. {2} is the exception type. {3} is the exception message.</comment>
  </data>
  <data name="UTA_ClassCleanupMethodWasUnsuccesful" xml:space="preserve">
    <value>Class Cleanup method {0}.{1} failed. Error Message: {2}. Stack Trace: {3}</value>
    <comment>{0} is the declaring type name. {1} is the class cleanup method name. {2} is the error message. {3} is the stack trace.</comment>
  </data>
  <data name="UTA_ClassInitMethodThrows" xml:space="preserve">
    <value>Class Initialization method {0}.{1} threw exception. {2}: {3}.</value>
    <comment>{0} is the declaring type name. {1} is the class initialization method name. {2} is the exception type. {3} is the exception message.</comment>
  </data>
  <data name="UTA_ClassOrAssemblyCleanupMethodHasWrongSignature" xml:space="preserve">
    <value>Method {0}.{1} has wrong signature. The method must be static, public, does not return a value and should not take any parameter. Additionally, if you are using async-await in method then return-type must be 'Task' or 'ValueTask'.</value>
    <comment>{0} is the declaring type name. {1} is the method name. {Locked="static"}{Locked="public"}{Locked="Task"}{Locked="ValueTask"}{Locked="async-await"}</comment>
  </data>
  <data name="UTA_ClassOrAssemblyInitializeMethodHasWrongSignature" xml:space="preserve">
    <value>Method {0}.{1} has wrong signature. The method must be static, public, does not return a value and should take a single parameter of type TestContext. Additionally, if you are using async-await in method then return-type must be 'Task' or 'ValueTask'.</value>
    <comment>{0} is the declaring type name. {1} is the method name. {Locked="static"}{Locked="public"}{Locked="TestContext"}{Locked="Task"}{Locked="ValueTask"}{Locked="async-await"}</comment>
  </data>
  <data name="UTA_CleanupMethodThrows" xml:space="preserve">
    <value>TestCleanup method {0}.{1} threw exception. {2}.</value>
    <comment>{0} is the declaring type name. {1} is the test cleanup method name. {2} is the exception details. {Locked="TestCleanup"}</comment>
  </data>
  <data name="UTA_CleanupMethodThrowsGeneralError" xml:space="preserve">
    <value>Error calling Test Cleanup method for test class {0}: {1}</value>
    <comment>{0} is the test class name. {1} is the exception message.</comment>
  </data>
  <data name="UTA_EndOfInnerExceptionTrace" xml:space="preserve">
    <value>--- End of inner exception stack trace ---</value>
  </data>
  <data name="UTA_ErrorIncorrectTestMethodSignature" xml:space="preserve">
    <value>UTA007: Method {1} defined in class {0} does not have correct signature. Test method marked with the [TestMethod] attribute must be non-static, public, return-type as void  and should not take any parameter. Example: public void Test.Class1.Test(). Additionally, if you are using async-await in test method then return-type must be 'Task' or 'ValueTask'. Example: public async Task Test.Class1.Test2()</value>
    <comment>{0} is the test class full name. {1} is the test method name. {Locked="UTA007"}{Locked="[TestMethod]"}{Locked="non-static"}{Locked="public"}{Locked="void"}{Locked="async-await"}{Locked="Task"}{Locked="public void Test.Class1.Test()"}{Locked="public async Task Test.Class1.Test2()"}</comment>
  </data>
  <data name="UTA_ErrorGenericValueTaskReturnType" xml:space="preserve">
    <value>UTA007: Method {1} defined in class {0} does not have correct signature. 'ValueTask&lt;T&gt;' is not a valid test method return type; use the non-generic 'ValueTask' instead. Example: public async ValueTask Test.Class1.Test()</value>
    <comment>{0} is the test class full name. {1} is the test method name. {Locked="UTA007"}{Locked="ValueTask&lt;T&gt;"}{Locked="ValueTask"}{Locked="public async ValueTask Test.Class1.Test()"}</comment>
  </data>
  <data name="UTA_ErrorInValidTestContextSignature" xml:space="preserve">
    <value>UTA031: class {0} does not have valid TestContext property. TestContext must be of type TestContext, must be non-static, and must be public. For example: public TestContext TestContext.</value>
    <comment>{0} is the test class name. {Locked="UTA031"}{Locked="TestContext"}{Locked="non-static"}{Locked="public"}{Locked="public TestContext TestContext"}</comment>
  </data>
  <data name="UTA_ErrorInvalidTimeout" xml:space="preserve">
    <value>UTA054: {0}.{1} has invalid Timeout attribute. The timeout must be an integer value greater than 0.</value>
    <comment>{0} is the declaring type name. {1} is the method name. {Locked="UTA054"}{Locked="Timeout"}</comment>
  </data>
  <data name="UTA_ErrorMultiAssemblyClean" xml:space="preserve">
    <value>UTA014: {0}: Cannot define more than one method with the AssemblyCleanup attribute inside an assembly.</value>
    <comment>{0} is the declaring type full name. {Locked="UTA014"}{Locked="AssemblyCleanup"}</comment>
  </data>
  <data name="UTA_ErrorMultiAssemblyInit" xml:space="preserve">
    <value>UTA013: {0}: Cannot define more than one method with the AssemblyInitialize attribute inside an assembly.</value>
    <comment>{0} is the declaring type full name. {Locked="UTA013"}{Locked="AssemblyInitialize"}</comment>
  </data>
  <data name="UTA_AssemblyFixtureProviderTypeIsGeneric" xml:space="preserve">
    <value>UTA070: Type '{0}' referenced by [AssemblyFixtureProvider] must not be generic.</value>
    <comment>{0} is the fixture provider type name. {Locked="UTA070"}{Locked="[AssemblyFixtureProvider]"}</comment>
  </data>
  <data name="UTA_AssemblyFixtureProviderTypeReflectionFailed" xml:space="preserve">
    <value>UTA071: Failed to enumerate methods on type '{0}' referenced by [AssemblyFixtureProvider]. {1}</value>
    <comment>{0} is the fixture provider type name. {1} is the exception details. {Locked="UTA071"}{Locked="[AssemblyFixtureProvider]"}</comment>
  </data>
  <data name="UTA_AssemblyFixtureProviderLoadFailed" xml:space="preserve">
    <value>UTA072: Failed to load [AssemblyFixtureProvider] marker from assembly '{0}'. {1}</value>
    <comment>{0} is the assembly path. {1} is the exception details. {Locked="UTA072"}{Locked="[AssemblyFixtureProvider]"}</comment>
  </data>
  <data name="UTA_TestFilterProviderLoadFailed" xml:space="preserve">
    <value>UTA073: Failed to load [TestFilterProvider] marker from assembly '{0}'. {1}</value>
    <comment>{0} is the assembly path. {1} is the exception details. {Locked="UTA073"}{Locked="[TestFilterProvider]"}</comment>
  </data>
  <data name="UTA_TestFilterProviderTypeIsGeneric" xml:space="preserve">
    <value>UTA074: Type '{0}' referenced by [TestFilterProvider] must not be generic.</value>
    <comment>{0} is the type name. {Locked="UTA074"}{Locked="[TestFilterProvider]"}</comment>
  </data>
  <data name="UTA_TestFilterProviderTypeIsNotInstantiable" xml:space="preserve">
    <value>UTA075: Type '{0}' referenced by [TestFilterProvider] must be a concrete class, not an interface or abstract class.</value>
    <comment>{0} is the type name. {Locked="UTA075"}{Locked="[TestFilterProvider]"}</comment>
  </data>
  <data name="UTA_TestFilterProviderTypeDoesNotImplementInterface" xml:space="preserve">
    <value>UTA076: Type '{0}' referenced by [TestFilterProvider] must implement '{1}'.</value>
    <comment>{0} is the type name. {1} is the required interface name. {Locked="UTA076"}{Locked="[TestFilterProvider]"}</comment>
  </data>
  <data name="UTA_TestFilterProviderInstantiationFailed" xml:space="preserve">
    <value>UTA077: Failed to instantiate type '{0}' referenced by [TestFilterProvider]. The type must declare a public parameterless constructor. {1}</value>
    <comment>{0} is the type name. {1} is the exception details. {Locked="UTA077"}{Locked="[TestFilterProvider]"}</comment>
  </data>
  <data name="UTA_TestFilterProviderThrew" xml:space="preserve">
    <value>UTA078: The [TestFilterProvider] filter '{0}' threw an exception while evaluating test '{1}'. {2}</value>
    <comment>{0} is the filter type name. {1} is the test name. {2} is the exception details. {Locked="UTA078"}{Locked="[TestFilterProvider]"}</comment>
  </data>
  <data name="UTA_TestFilterProviderMultipleDeclared" xml:space="preserve">
    <value>UTA079: Assembly '{0}' declares more than one [TestFilterProvider] attribute. At most one is allowed per test assembly; compose multiple filtering strategies inside a single ITestFilter implementation.</value>
    <comment>{0} is the assembly path. {Locked="UTA079"}{Locked="[TestFilterProvider]"}{Locked="ITestFilter"}</comment>
  </data>
  <data name="UTA_ErrorMultiClassClean" xml:space="preserve">
    <value>UTA026: {0}: Cannot define more than one method with the ClassCleanup attribute inside a class.</value>
    <comment>{0} is the test class full name. {Locked="UTA026"}{Locked="ClassCleanup"}</comment>
  </data>
  <data name="UTA_ErrorMultiClassInit" xml:space="preserve">
    <value>UTA025: {0}: Cannot define more than one method with the ClassInitialize attribute inside a class.</value>
    <comment>{0} is the test class full name. {Locked="UTA025"}{Locked="ClassInitialize"}</comment>
  </data>
  <data name="UTA_ErrorMultiClean" xml:space="preserve">
    <value>UTA024: {0}: Cannot define more than one method with the TestCleanup attribute.</value>
    <comment>{0} is the test class full name. {Locked="UTA024"}{Locked="TestCleanup"}</comment>
  </data>
  <data name="UTA_ErrorMultiInit" xml:space="preserve">
    <value>UTA018: {0}: Cannot define more than one method with the TestInitialize attribute.</value>
    <comment>{0} is the test class full name. {Locked="UTA018"}{Locked="TestInitialize"}</comment>
  </data>
  <data name="UTA_ErrorNonPublicTestClass" xml:space="preserve">
    <value>UTA001: TestClass attribute defined on non-public class {0}</value>
    <comment>{0} is the test class full name. {Locked="UTA001"}{Locked="TestClass"}</comment>
  </data>
  <data name="UTA_ErrorTestClassIsGenericNonAbstract" xml:space="preserve">
    <value>TestClass attribute defined on generic non-abstract class {0}</value>
    <comment>{0} is the test class full name. {Locked="TestClass"}</comment>
  </data>
  <data name="UTA_ExecuteThrewException" xml:space="preserve">
    <value>An unhandled exception was thrown by the 'Execute' method. Please report this error to the author of the attribute '{0}'.
{1}</value>
    <comment>{0} is the attribute type name. {1} is the exception details. {Locked="Execute"}</comment>
  </data>
  <data name="UTA_FailedToGetTestMethodException" xml:space="preserve">
    <value>Failed to obtain the exception thrown by test method {0}.{1}.</value>
    <comment>{0} is the declaring type name. {1} is the test method name.</comment>
  </data>
  <data name="UTA_InitMethodThrows" xml:space="preserve">
    <value>Initialization method {0}.{1} threw exception. {2}.</value>
    <comment>{0} is the declaring type name. {1} is the initialization method name. {2} is the exception details.</comment>
  </data>
  <data name="UTA_InstanceCreationError" xml:space="preserve">
    <value>Unable to create instance of class {0}. Error: {1}.</value>
    <comment>{0} is the test class name. {1} is the error message.</comment>
  </data>
  <data name="UTA_MethodDoesNotExists" xml:space="preserve">
    <value>Method {0}.{1} does not exist.</value>
    <comment>{0} is the declaring type name. {1} is the method name.</comment>
  </data>
  <data name="UTA_MultipleAttributesOnTestMethod" xml:space="preserve">
    <value>The test method '{0}.{1}' has multiple attributes derived from '{2}' defined on it. Only one such attribute is allowed.</value>
    <comment>{0} is the declaring type name. {1} is the test method name. {2} is the attribute base type name.</comment>
  </data>
  <data name="UTA_MultipleAttributesOnTestClass" xml:space="preserve">
    <value>The test class '{0}' has multiple attributes derived from '{1}' defined on it. Only one such attribute is allowed.</value>
    <comment>{0} is the test class name. {1} is the attribute base type name.</comment>
  </data>
  <data name="UTA_NoTestResult" xml:space="preserve">
    <value>Error in executing test. No result returned by extension. If using extension of TestMethodAttribute then please contact vendor.</value>
    <comment>{Locked="TestMethodAttribute"}</comment>
  </data>
  <data name="UTA_NoValidConstructor" xml:space="preserve">
    <value>Cannot find a valid constructor for test class '{0}'. Valid constructors are 'public' and either parameterless or with one parameter of type 'TestContext'.</value>
    <comment>{0} is the test class name. {Locked="public"}{Locked="TestContext"}</comment>
  </data>
  <data name="UTA_TestContextLoadError" xml:space="preserve">
    <value>Unable to find property {0}.TestContext. Error:{1}.</value>
    <comment>{0} is the test class name. {1} is the error message. {Locked="TestContext"}</comment>
  </data>
  <data name="UTA_TestContextSetError" xml:space="preserve">
    <value>Unable to set TestContext property for the class {0}. Error: {1}.</value>
    <comment>{0} is the test class name. {1} is the error message. {Locked="TestContext"}</comment>
  </data>
  <data name="UTA_TestContextTypeMismatchLoadError" xml:space="preserve">
    <value>The {0}.TestContext has incorrect type.</value>
    <comment>{0} is the test class name. {Locked="TestContext"}</comment>
  </data>
  <data name="UTA_TestInitializeAndCleanupMethodHasWrongSignature" xml:space="preserve">
    <value>Method {0}.{1} has wrong signature. The method must be non-static, public, does not return a value and should not take any parameter. Additionally, if you are using async-await in method then return-type must be 'Task' or 'ValueTask'.</value>
    <comment>{0} is the declaring type name. {1} is the method name. {Locked="non-static"}{Locked="public"}{Locked="Task"}{Locked="ValueTask"}{Locked="async-await"}</comment>
  </data>
  <data name="UTA_TestMethodThrows" xml:space="preserve">
    <value>Test method {0}.{1} threw exception:
{2}</value>
    <comment>{0} is the declaring type name. {1} is the test method name. {2} is the exception details.</comment>
  </data>
  <data name="UTA_TypeLoadError" xml:space="preserve">
    <value>Unable to get type {0}. Error: {1}.</value>
    <comment>{0} is the type name. {1} is the error message.</comment>
  </data>
  <data name="UTA_UserCodeThrewNullValueException" xml:space="preserve">
    <value>The called code threw an exception that was caught, but the exception value was null</value>
    <comment>{Locked="null"}</comment>
  </data>
  <data name="UTA_WrongThread" xml:space="preserve">
    <value>{0} For UWP projects, if you are using UI objects in test consider using [UITestMethod] attribute instead of [TestMethod] to execute test in UI thread.</value>
    <comment>{0} is the original error message. {Locked="UWP"}{Locked="[UITestMethod]"}{Locked="[TestMethod]"}</comment>
  </data>
  <data name="UTF_FailedToGetExceptionMessage" xml:space="preserve">
    <value>(Failed to get the message for an exception of type {0} due to an exception.)</value>
    <comment>{0} is the exception type name.</comment>
  </data>
  <data name="STAIsOnlySupportedOnWindowsWarning" xml:space="preserve">
    <value>Runsettings entry '&lt;ExecutionApartmentState&gt;STA&lt;/ExecutionApartmentState&gt;' is not supported on non-Windows OSes.</value>
    <comment>{Locked="Runsettings"}{Locked="&lt;ExecutionApartmentState&gt;STA&lt;/ExecutionApartmentState&gt;"}{Locked="STA"}</comment>
  </data>
  <data name="VersionMismatchBetweenAdapterAndFramework" xml:space="preserve">
    <value>'MSTest.TestAdapter' and 'MSTest.TestFramework' must have the same version. Found 'MSTest.TestAdapter' version '{0}' and 'MSTest.TestFramework' version '{1}'. Please make sure that the versions of  'MSTest.TestAdapter' and 'MSTest.TestFramework' NuGet packages have the same version.</value>
    <comment>{0} is the MSTest.TestAdapter version. {1} is the MSTest.TestFramework version. {Locked="MSTest.TestAdapter"}{Locked="MSTest.TestFramework"}{Locked="NuGet"}</comment>
  </data>
  <data name="DiscoveryErrors" xml:space="preserve">
    <value>Discovery failed for source '{0}' with {1} errors:
{2}</value>
    <comment>{0} is the source path. {1} is the error count. {2} is the error details.</comment>
  </data>
  <data name="UTA_OutRefParametersNotSupported" xml:space="preserve">
    <value>Warning: Test method '{0}.{1}' has 'out' or 'ref' parameters which are not supported and may be disallowed in a future version of MSTest.</value>
    <comment>{0} is the declaring type name. {1} is the test method name. {Locked="out"}{Locked="ref"}{Locked="MSTest"}</comment>
  </data>
  <data name="DuplicateAttributeError" xml:space="preserve">
    <value>Only one attribute of type '{0}' is allowed, but multiple were found.</value>
    <comment>{0} is the attribute type name.</comment>
  </data>
</root>