Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added support for new CC merging library for netstandard2.0 #2598

Merged
merged 23 commits into from
Nov 20, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
088b983
Added support for new CC merging library for netstandard2.0
cvpoienaru Oct 19, 2020
3e42ac8
Added new public feed
cvpoienaru Nov 9, 2020
16440fb
Using latest CoreLib version
cvpoienaru Nov 9, 2020
00f5275
Make use of the latest corelib
cvpoienaru Nov 10, 2020
60d980c
Merge branch 'master' into copoiena/tp-cc-merging
cvpoienaru Nov 10, 2020
d9fa3c1
Merge branch 'master' into copoiena/tp-cc-merging
cvpoienaru Nov 13, 2020
9100705
Fixed acceptance tests
cvpoienaru Nov 16, 2020
48bc4a9
Added CoreLib reference to test project
cvpoienaru Nov 16, 2020
9cf97c3
Missing dll
cvpoienaru Nov 17, 2020
021d8af
Merge branch 'master' into copoiena/tp-cc-merging
cvpoienaru Nov 17, 2020
ea986d9
Update dependencies from https://github.com/dotnet/arcade build 20201…
dotnet-maestro[bot] Nov 18, 2020
cac49df
Merge branch 'copoiena/tp-cc-merging' of https://github.com/cvpoienar…
cvpoienaru Nov 18, 2020
44ff8df
Added protections for when CoreLib cannot be resolved
cvpoienaru Nov 18, 2020
b4b9f35
Removed unnecessary corelib dependency
cvpoienaru Nov 18, 2020
271e4f7
Fixed async methods
cvpoienaru Nov 18, 2020
153b784
Fixed acceptance test
cvpoienaru Nov 18, 2020
49a2f94
Fixed code review comments
cvpoienaru Nov 19, 2020
00f5b0b
Removed dependencies on Coverage.Analysis lib
cvpoienaru Nov 19, 2020
0d52794
Fixed number of files in nuget error
cvpoienaru Nov 19, 2020
fd96af1
Fixed code review issues
cvpoienaru Nov 19, 2020
1fc6d37
Added corelib to test platform nuget
cvpoienaru Nov 19, 2020
121ffa0
Sign CoreLib
cvpoienaru Nov 19, 2020
d753aeb
Upgraded to latest externals versions
cvpoienaru Nov 20, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,25 +3,25 @@
<ProductDependencies>
</ProductDependencies>
<ToolsetDependencies>
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="1.0.0-beta.20509.7">
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="1.0.0-beta.20567.6">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>e4584b56c5334067d30a04dd6b2d1d724ed7ccc3</Sha>
<Sha>e65cfb96188c8849e24f6e8f53207eae71689281</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.Build.Tasks.Feed" Version="2.2.0-beta.20509.7">
<Dependency Name="Microsoft.DotNet.Build.Tasks.Feed" Version="2.2.0-beta.20567.6">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>e4584b56c5334067d30a04dd6b2d1d724ed7ccc3</Sha>
<Sha>e65cfb96188c8849e24f6e8f53207eae71689281</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.SignTool" Version="1.0.0-beta.20509.7">
<Dependency Name="Microsoft.DotNet.SignTool" Version="1.0.0-beta.20567.6">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>e4584b56c5334067d30a04dd6b2d1d724ed7ccc3</Sha>
<Sha>e65cfb96188c8849e24f6e8f53207eae71689281</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="2.0.0-beta.20509.7">
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="2.0.0-beta.20567.6">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>e4584b56c5334067d30a04dd6b2d1d724ed7ccc3</Sha>
<Sha>e65cfb96188c8849e24f6e8f53207eae71689281</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.SwaggerGenerator.MSBuild" Version="1.0.0-beta.20509.7">
<Dependency Name="Microsoft.DotNet.SwaggerGenerator.MSBuild" Version="1.0.0-beta.20567.6">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>e4584b56c5334067d30a04dd6b2d1d724ed7ccc3</Sha>
<Sha>e65cfb96188c8849e24f6e8f53207eae71689281</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.Maestro.Client" Version="1.1.0-beta.19556.4">
<Uri>https://github.com/dotnet/arcade-services</Uri>
Expand Down
6 changes: 3 additions & 3 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,8 @@
<XUnitVersion>2.4.1</XUnitVersion>
<XUnitAbstractionsVersion>2.0.3</XUnitAbstractionsVersion>
<XUnitVSRunnerVersion>2.4.1</XUnitVSRunnerVersion>
<MicrosoftDotNetBuildTasksFeedVersion>2.2.0-beta.20509.7</MicrosoftDotNetBuildTasksFeedVersion>
<MicrosoftDotNetSignToolVersion>1.0.0-beta.20509.7</MicrosoftDotNetSignToolVersion>
<MicrosoftDotNetBuildTasksFeedVersion>2.2.0-beta.20567.6</MicrosoftDotNetBuildTasksFeedVersion>
<MicrosoftDotNetSignToolVersion>1.0.0-beta.20567.6</MicrosoftDotNetSignToolVersion>
<MicrosoftAzureDocumentDBVersion>1.22.0</MicrosoftAzureDocumentDBVersion>
<MicrosoftAzureCosmosDBTableVersion>1.1.2</MicrosoftAzureCosmosDBTableVersion>
<MicrosoftAspNetCoreAllVersion>2.0.0</MicrosoftAspNetCoreAllVersion>
Expand All @@ -73,7 +73,7 @@
<MicrosoftDiaSymReaderNativeVersion>1.7.0</MicrosoftDiaSymReaderNativeVersion>
<MicrosoftDotNetMaestroClientVersion>1.1.0-beta.19556.4</MicrosoftDotNetMaestroClientVersion>
<MicrosoftSourceLinkVersion>1.0.0-beta2-19554-01</MicrosoftSourceLinkVersion>
<MicrosoftDotNetSwaggerGeneratorMSBuildVersion>1.0.0-beta.20509.7</MicrosoftDotNetSwaggerGeneratorMSBuildVersion>
<MicrosoftDotNetSwaggerGeneratorMSBuildVersion>1.0.0-beta.20567.6</MicrosoftDotNetSwaggerGeneratorMSBuildVersion>
<XliffTasksVersion>1.0.0-beta.20055.1</XliffTasksVersion>
</PropertyGroup>
</Project>
5 changes: 3 additions & 2 deletions eng/common/SetupNugetSources.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -99,8 +99,9 @@ function InsertMaestroPrivateFeedCredentials($Sources, $Creds, $Username, $Passw
function EnablePrivatePackageSources($DisabledPackageSources) {
$maestroPrivateSources = $DisabledPackageSources.SelectNodes("add[contains(@key,'darc-int')]")
ForEach ($DisabledPackageSource in $maestroPrivateSources) {
Write-Host "`tEnsuring private source '$($DisabledPackageSource.key)' is enabled"
$DisabledPackageSource.SetAttribute("value", "false")
Write-Host "`tEnsuring private source '$($DisabledPackageSource.key)' is enabled by deleting it from disabledPackageSource"
# Due to https://github.com/NuGet/Home/issues/10291, we must actually remove the disabled entries
$DisabledPackageSources.RemoveChild($DisabledPackageSource)
}
}

Expand Down
4 changes: 2 additions & 2 deletions eng/common/SetupNugetSources.sh
Original file line number Diff line number Diff line change
Expand Up @@ -159,8 +159,8 @@ if [ "$?" == "0" ]; then
for DisabledSourceName in ${DisabledDarcIntSources[@]} ; do
if [[ $DisabledSourceName == darc-int* ]]
then
OldDisableValue="add key=\"$DisabledSourceName\" value=\"true\""
NewDisableValue="add key=\"$DisabledSourceName\" value=\"false\""
OldDisableValue="<add key=\"$DisabledSourceName\" value=\"true\" />"
NewDisableValue="<!-- Reenabled for build : $DisabledSourceName -->"
sed -i.bak "s|$OldDisableValue|$NewDisableValue|" $ConfigFile
echo "Neutralized disablePackageSources entry for '$DisabledSourceName'"
fi
Expand Down
4 changes: 2 additions & 2 deletions global.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
"dotnet": "5.0.100-rc.1.20453.7"
},
"msbuild-sdks": {
"Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.20509.7",
"Microsoft.DotNet.Helix.Sdk": "2.0.0-beta.20509.7"
"Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.20567.6",
"Microsoft.DotNet.Helix.Sdk": "2.0.0-beta.20567.6"
}
}
4 changes: 2 additions & 2 deletions scripts/build/TestPlatform.Dependencies.props
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@
<NuGetFrameworksVersion>5.0.0</NuGetFrameworksVersion>
<JsonNetVersion>9.0.1</JsonNetVersion>
<MoqVersion>4.7.63</MoqVersion>
<TestPlatformExternalsVersion>16.9.0-preview-4189539</TestPlatformExternalsVersion>
<CodeCoverageExternalsVersion>16.9.0-beta.20563.1</CodeCoverageExternalsVersion>
<TestPlatformExternalsVersion>16.9.0-preview-4243816</TestPlatformExternalsVersion>
<CodeCoverageExternalsVersion>16.9.0-beta.20570.2</CodeCoverageExternalsVersion>
<MicrosoftFakesVersion>16.8.0-beta.20420.2</MicrosoftFakesVersion>

<MicrosoftBuildPackageVersion>16.0.461</MicrosoftBuildPackageVersion>
Expand Down
6 changes: 3 additions & 3 deletions scripts/verify-nupkgs.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,12 @@ function Verify-Nuget-Packages($packageDirectory)
$expectedNumOfFiles = @{
"Microsoft.CodeCoverage" = 44;
"Microsoft.NET.Test.Sdk" = 18;
"Microsoft.TestPlatform" = 488;
"Microsoft.TestPlatform" = 486;
"Microsoft.TestPlatform.Build" = 19;
"Microsoft.TestPlatform.CLI" = 350;
"Microsoft.TestPlatform.CLI" = 353;
"Microsoft.TestPlatform.Extensions.TrxLogger" = 33;
"Microsoft.TestPlatform.ObjectModel" = 178;
"Microsoft.TestPlatform.Portable" = 566;
"Microsoft.TestPlatform.Portable" = 568;
"Microsoft.TestPlatform.TestHost" = 212;
"Microsoft.TestPlatform.TranslationLayer" = 121}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ namespace Microsoft.VisualStudio.TestPlatform.Utilities
using System.Reflection;
using System.Threading;
using System.Threading.Tasks;

using Microsoft.VisualStudio.Coverage.CoreLib.Net;
using Microsoft.VisualStudio.TestPlatform.ObjectModel;
using Microsoft.VisualStudio.TestPlatform.ObjectModel.DataCollection;
using Microsoft.VisualStudio.TestPlatform.ObjectModel.Logging;
Expand All @@ -22,10 +24,6 @@ public class CodeCoverageDataAttachmentsHandler : IDataCollectorAttachmentProces
private const string CoverageFileExtension = ".coverage";
private const string CoverageFriendlyName = "Code Coverage";

private const string CodeCoverageAnalysisAssemblyName = "Microsoft.VisualStudio.Coverage.Analysis";
private const string MergeMethodName = "MergeCoverageFiles";
private const string CoverageInfoTypeName = "CoverageInfo";

private static readonly Uri CodeCoverageDataCollectorUri = new Uri(CoverageUri);

public bool SupportsIncrementalProcessing => true;
Expand All @@ -35,93 +33,68 @@ public IEnumerable<Uri> GetExtensionUris()
yield return CodeCoverageDataCollectorUri;
}

public Task<ICollection<AttachmentSet>> ProcessAttachmentSetsAsync(ICollection<AttachmentSet> attachments, IProgress<int> progressReporter, IMessageLogger logger, CancellationToken cancellationToken)
public async Task<ICollection<AttachmentSet>> ProcessAttachmentSetsAsync(ICollection<AttachmentSet> attachments, IProgress<int> progressReporter, IMessageLogger logger, CancellationToken cancellationToken)
{
if (attachments != null && attachments.Any())
{
var codeCoverageFiles = attachments.Select(coverageAttachment => coverageAttachment.Attachments[0].Uri.LocalPath).ToArray();
var outputFile = MergeCodeCoverageFiles(codeCoverageFiles, progressReporter, cancellationToken);
var outputFile = await this.MergeCodeCoverageFilesAsync(codeCoverageFiles, progressReporter, cancellationToken).ConfigureAwait(false);
var attachmentSet = new AttachmentSet(CodeCoverageDataCollectorUri, CoverageFriendlyName);

if (!string.IsNullOrEmpty(outputFile))
{
attachmentSet.Attachments.Add(new UriDataAttachment(new Uri(outputFile), CoverageFriendlyName));
return Task.FromResult((ICollection<AttachmentSet>)new Collection<AttachmentSet> { attachmentSet });
return new Collection<AttachmentSet> { attachmentSet };
}

// In case merging fails(esp in dotnet core we cannot merge), so return filtered list of Code Coverage Attachments
return Task.FromResult(attachments);
return attachments;
}

return Task.FromResult((ICollection<AttachmentSet>)new Collection<AttachmentSet>());
return new Collection<AttachmentSet>();
}

private string MergeCodeCoverageFiles(IList<string> files, IProgress<int> progressReporter, CancellationToken cancellationToken)
private async Task<string> MergeCodeCoverageFilesAsync(IList<string> files, IProgress<int> progressReporter, CancellationToken cancellationToken)
{
if(files.Count == 1)
if (files.Count == 1)
{
return files[0];
}

string tempFileName = Path.Combine(Path.GetTempPath(), Guid.NewGuid() + CoverageFileExtension);
string outputfileName = files[0];

File.Create(tempFileName).Dispose();
var assemblyPath = Path.Combine(Path.GetDirectoryName(typeof(CodeCoverageDataAttachmentsHandler).GetTypeInfo().Assembly.GetAssemblyLocation()), CodeCoverageAnalysisAssemblyName + ".dll");

try
{
cancellationToken.ThrowIfCancellationRequested();
Assembly assembly = new PlatformAssemblyLoadContext().LoadAssemblyFromPath(assemblyPath);
var type = assembly.GetType(CodeCoverageAnalysisAssemblyName + "." + CoverageInfoTypeName);

var methodInfo = type?.GetMethod(MergeMethodName);

if (methodInfo != null)
{
IList<string> filesToDelete = new List<string>(files.Count) { tempFileName };

for (int i = 1; i < files.Count; i++)
{
cancellationToken.ThrowIfCancellationRequested();
progressReporter?.Report(100 * i / files.Count);

cancellationToken.ThrowIfCancellationRequested();
methodInfo.Invoke(null, new object[] { files[i], outputfileName, tempFileName, true });

cancellationToken.ThrowIfCancellationRequested();
File.Copy(tempFileName, outputfileName, true);

filesToDelete.Add(files[i]);
}

cancellationToken.ThrowIfCancellationRequested();
foreach (string fileName in filesToDelete)
{
File.Delete(fileName);
}
}

// Warning: Don't remove this method call.
//
// We took a dependency on Coverage.CoreLib.Net. In the unlikely case it cannot be
// resolved, this method call will throw an exception that will be caught and
// absorbed here.
await this.MergeCodeCoverageFilesAsync(files, cancellationToken).ConfigureAwait(false);
progressReporter?.Report(100);
return outputfileName;
}
catch (OperationCanceledException)
{
if (EqtTrace.IsWarningEnabled)
{
EqtTrace.Warning("CodeCoverageDataCollectorAttachmentsHandler: operation was cancelled.");
}
// Occurs due to cancellation, ok to re-throw.
throw;
}
catch (Exception ex)
{
if (EqtTrace.IsErrorEnabled)
{
EqtTrace.Error("CodeCoverageDataCollectorAttachmentsHandler: Failed to load datacollector of type : {0} from location : {1}. Error : {2}", CodeCoverageAnalysisAssemblyName, assemblyPath, ex.ToString());
}
EqtTrace.Error(
"CodeCoverageDataCollectorAttachmentsHandler: Failed to load datacollector. Error: {0}",
ex.ToString());
}

return string.Empty;
return files[0];
}

private async Task MergeCodeCoverageFilesAsync(IList<string> files, CancellationToken cancellationToken)
{
var coverageUtility = new CoverageFileUtility();

var coverageData = await coverageUtility.MergeCoverageFilesAsync(
files,
cancellationToken).ConfigureAwait(false);

coverageUtility.WriteCoverageFile(files[0], coverageData);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,9 @@
<ItemGroup>
<ProjectReference Include="..\Microsoft.TestPlatform.CoreUtilities\Microsoft.TestPlatform.CoreUtilities.csproj" />
<ProjectReference Include="..\Microsoft.TestPlatform.ObjectModel\Microsoft.TestPlatform.ObjectModel.csproj" />
<PackageReference Include="Microsoft.VisualStudio.Coverage.CoreLib.Net" Version="$(CodeCoverageExternalsVersion)" />
</ItemGroup>
<ItemGroup Condition=" '$(TargetFramework)' == 'net451' ">
<ItemGroup Condition="'$(TargetFramework)' == 'net451' ">
<Reference Include="System" />
<Reference Include="System.Runtime" />
<Reference Include="System.Xml" />
Expand Down
2 changes: 2 additions & 0 deletions src/package/nuspec/Microsoft.TestPlatform.Portable.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
<file src="net451\$Runtime$\Microsoft.VisualStudio.TestPlatform.Client.dll" target="tools\net451\Microsoft.VisualStudio.TestPlatform.Client.dll" />
<file src="net451\$Runtime$\Microsoft.VisualStudio.TestPlatform.Common.dll" target="tools\net451\Microsoft.VisualStudio.TestPlatform.Common.dll" />
<file src="net451\$Runtime$\Microsoft.VisualStudio.TestPlatform.ObjectModel.dll" target="tools\net451\Microsoft.VisualStudio.TestPlatform.ObjectModel.dll" />
<file src="net451\$Runtime$\Microsoft.VisualStudio.Coverage.CoreLib.Net.dll" target="tools\net451\Microsoft.VisualStudio.Coverage.CoreLib.Net.dll" />
cvpoienaru marked this conversation as resolved.
Show resolved Hide resolved
<file src="net451\$Runtime$\msdia140typelib_clr0200.dll" target="tools\net451\msdia140typelib_clr0200.dll" />
<file src="net451\$Runtime$\Newtonsoft.Json.dll" target="tools\net451\Newtonsoft.Json.dll" />
<file src="net451\$Runtime$\System.Collections.Immutable.dll" target="tools\net451\System.Collections.Immutable.dll" />
Expand Down Expand Up @@ -286,6 +287,7 @@
<file src="netcoreapp2.1\Microsoft.VisualStudio.TestPlatform.Client.dll" target="tools\netcoreapp2.1\Microsoft.VisualStudio.TestPlatform.Client.dll" />
<file src="netcoreapp2.1\Microsoft.VisualStudio.TestPlatform.Common.dll" target="tools\netcoreapp2.1\Microsoft.VisualStudio.TestPlatform.Common.dll" />
<file src="netcoreapp2.1\Microsoft.VisualStudio.TestPlatform.ObjectModel.dll" target="tools\netcoreapp2.1\Microsoft.VisualStudio.TestPlatform.ObjectModel.dll" />
<file src="netcoreapp2.1\Microsoft.VisualStudio.Coverage.CoreLib.Net.dll" target="tools\netcoreapp2.1\Microsoft.VisualStudio.Coverage.CoreLib.Net.dll" />
<file src="netcoreapp2.1\Newtonsoft.Json.dll" target="tools\netcoreapp2.1\Newtonsoft.Json.dll" />
<file src="netcoreapp2.1\package.deps.json" target="tools\netcoreapp2.1\package.deps.json" />
<file src="netcoreapp2.1\vstest.console.deps.json" target="tools\netcoreapp2.1\vstest.console.deps.json" />
Expand Down
4 changes: 1 addition & 3 deletions src/package/nuspec/Microsoft.TestPlatform.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -109,8 +109,7 @@
<file src="net451\$Runtime$\Microsoft.TestPlatform.VsTestConsole.TranslationLayer.dll" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Microsoft.TestPlatform.VsTestConsole.TranslationLayer.dll" />
<file src="net451\$Runtime$\Microsoft.TestPlatform.VsTestConsole.TranslationLayer.xml" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Microsoft.TestPlatform.VsTestConsole.TranslationLayer.xml" />
<file src="net451\$Runtime$\Microsoft.VisualStudio.ArchitectureTools.PEReader.dll" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Extensions\Microsoft.VisualStudio.ArchitectureTools.PEReader.dll" />
<file src="net451\$Runtime$\Microsoft.VisualStudio.Coverage.Analysis.dll" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Microsoft.VisualStudio.Coverage.Analysis.dll" />
<file src="net451\$Runtime$\Microsoft.VisualStudio.Coverage.Interop.dll" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Microsoft.VisualStudio.Coverage.Interop.dll" />
<file src="net451\$Runtime$\Microsoft.VisualStudio.Coverage.CoreLib.Net.dll" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Extensions\Microsoft.VisualStudio.Coverage.CoreLib.Net.dll" />
<file src="net451\$Runtime$\Microsoft.VisualStudio.Diagnostics.Utilities.dll" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Microsoft.VisualStudio.Diagnostics.Utilities.dll" />
<file src="net451\$Runtime$\Microsoft.VisualStudio.Enterprise.AspNetHelper.dll" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Microsoft.VisualStudio.Enterprise.AspNetHelper.dll" />
<file src="net451\$Runtime$\Microsoft.VisualStudio.QualityTools.AgentObject.dll" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Microsoft.VisualStudio.QualityTools.AgentObject.dll" />
Expand Down Expand Up @@ -268,7 +267,6 @@
<file src="net451\$Runtime$\Extensions\Microsoft.VisualStudio.TestTools.DataCollection.MediaRecorder.Model.dll" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Extensions\Microsoft.VisualStudio.TestTools.DataCollection.MediaRecorder.Model.dll" />
<file src="net451\$Runtime$\Extensions\Microsoft.VisualStudio.TestTools.DataCollection.VideoRecorderCollector.dll" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Extensions\Microsoft.VisualStudio.TestTools.DataCollection.VideoRecorderCollector.dll" />
<file src="net451\$Runtime$\Extensions\Microsoft.VisualStudio.TraceDataCollector.dll" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Extensions\Microsoft.VisualStudio.TraceDataCollector.dll" />
<file src="net451\$Runtime$\Extensions\Microsoft.VisualStudio.Coverage.Interop.dll" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Extensions\Microsoft.VisualStudio.Coverage.Interop.dll" />
<file src="net451\$Runtime$\Extensions\VideoRecorder\VSTestVideoRecorder.exe" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Extensions\VideoRecorder\VSTestVideoRecorder.exe" />
<file src="net451\$Runtime$\Extensions\Cpp\dbghelp.dll" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Extensions\Cpp\dbghelp.dll" />
<file src="net451\$Runtime$\Extensions\Cpp\Microsoft.VisualStudio.TestTools.CppUnitTestFramework.Discoverer.dll" target="tools\net451\Common7\IDE\Extensions\TestPlatform\Extensions\Cpp\Microsoft.VisualStudio.TestTools.CppUnitTestFramework.Discoverer.dll" />
Expand Down
Loading