diff options
68 files changed, 8671 insertions, 1221 deletions
diff --git a/Documentation/README.md b/Documentation/README.md index cda8094b2b..049103e0db 100644 --- a/Documentation/README.md +++ b/Documentation/README.md @@ -23,6 +23,7 @@ Project Docs ============ - [Developer Guide](project-docs/developer-guide.md) +- [Performance Testing](project-docs/performance-tests.md) - [Project priorities](https://github.com/dotnet/coreclr/blob/master/Documentation/project-docs/project-priorities.md) - [Contributing to CoreFX](project-docs/contributing.md) - [Contributing to .NET Core](https://github.com/dotnet/coreclr/blob/master/Documentation/project-docs/contributing.md) diff --git a/Documentation/project-docs/performance-tests.md b/Documentation/project-docs/performance-tests.md new file mode 100644 index 0000000000..94d51718e7 --- /dev/null +++ b/Documentation/project-docs/performance-tests.md @@ -0,0 +1,20 @@ +Performance Tests +====================== + +This document contains instructions for building, running, and adding Performance tests. + +Requirements +-------------------- + +To run performance tests, .NET portable v5.0 is required. This library is included in [the Visual Studio Community 2015 download](https://www.visualstudio.com/products/visual-studio-community-vs). To get the correct packages during installation, follow these steps after opening the installer: +1. Select "Custom Installation" if no installation is present, or "Modify" otherwise +2. Check the "Universal Windows App Development Tools" box under the "Windows and Web Development" menu +3. Install + +Running the tests +----------- +Performance test files (if present) are stored within a library's ```tests/Performance``` directory and contain test methods that are all marked with a perf-specific *Benchmark* attribute. The performance tests will only be run if the ```performance``` property is set to ```true```. + +To build and run the tests using msbuild for only one project, run ```msbuild /t:BuildAndTest /p:Performance=true``` from the tests directory. If the v5.0 assemblies aren't installed on your system, an error will be raised and no tests will be run. + +Performance tests for all libraries can also be run using the build script in ```corefx```: ```./build.cmd /p:Performance=true``` @@ -10,7 +10,7 @@ <!-- Build Tools Versions --> <PropertyGroup> - <BuildToolsVersion>1.0.25-prerelease-00094</BuildToolsVersion> + <BuildToolsVersion>1.0.25-prerelease-00095</BuildToolsVersion> <DnxVersion>1.0.0-beta7</DnxVersion> <DnxPackageName Condition="'$(DnxPackageName)' == '' and '$(OsEnvironment)'!='Unix'">dnx-coreclr-win-x86.$(DnxVersion)</DnxPackageName> <DnxPackageName Condition="'$(DnxPackageName)' == '' and '$(OsEnvironment)'=='Unix'">dnx-mono.$(DnxVersion)</DnxPackageName> @@ -261,6 +261,11 @@ <MakePriExtensionPath>$(_WindowsPhoneKitBinPath)\x86\MrmEnvironmentExtDl.dll</MakePriExtensionPath> <MakePriExtensionPath_x64>$(_WindowsPhoneKitBinPath)\x64\MrmEnvironmentExtDl.dll</MakePriExtensionPath_x64> </PropertyGroup> + + <!-- Perf test setup - Required until v5.0 is mandatory across CoreFX--> + <PropertyGroup> + <RunPerfTestsForProject Condition="'$(Performance)' == 'true' and '$(OS)' == 'Windows_NT' and Exists('$(MSBuildProgramFiles32)\MSBuild\Microsoft\Portable\v5.0\Microsoft.Portable.CSharp.targets')" >true</RunPerfTestsForProject> + </PropertyGroup> <Import Project="$(RoslynPropsFile)" Condition="'$(UseRoslynCompiler)'=='true' and Exists('$(RoslynPropsFile)')" /> diff --git a/src/.nuget/packages.Unix.config b/src/.nuget/packages.Unix.config index e32e4d5e61..78be606fc1 100644 --- a/src/.nuget/packages.Unix.config +++ b/src/.nuget/packages.Unix.config @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <packages> - <package id="Microsoft.DotNet.BuildTools" version="1.0.25-prerelease-00094" /> + <package id="Microsoft.DotNet.BuildTools" version="1.0.25-prerelease-00095" /> <package id="Microsoft.DotNet.BuildTools.ApiTools" version="1.0.0-prerelease" /> <package id="dnx-mono" version="1.0.0-beta7" /> <package id="Microsoft.Net.ToolsetCompilers" version="1.0.0-rc3-20150510-01" /> diff --git a/src/.nuget/packages.Windows_NT.config b/src/.nuget/packages.Windows_NT.config index f37502a829..30fb2cb983 100644 --- a/src/.nuget/packages.Windows_NT.config +++ b/src/.nuget/packages.Windows_NT.config @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <packages> - <package id="Microsoft.DotNet.BuildTools" version="1.0.25-prerelease-00094" /> + <package id="Microsoft.DotNet.BuildTools" version="1.0.25-prerelease-00095" /> <package id="dnx-coreclr-win-x86" version="1.0.0-beta7" /> <package id="Microsoft.DotNet.BuildTools.ApiTools" version="1.0.0-prerelease" /> </packages> diff --git a/src/Common/tests/Performance/PerfUtils.cs b/src/Common/tests/Performance/PerfUtils.cs new file mode 100644 index 0000000000..60ab0ba427 --- /dev/null +++ b/src/Common/tests/Performance/PerfUtils.cs @@ -0,0 +1,42 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System.Runtime.CompilerServices; +using System.Text; +using System.IO; + +namespace System +{ + /// <summary>Static helper class for performance tests</summary> + public static class PerfUtils + { + private static Random rand = new Random(1234132); + + /// <summary> + /// Helper method to create a string containing a number of random + /// characters equal to the specified length + /// </summary> + public static string CreateString(int length) + { + // Random is not thread safe and will cause intermittent thread deadlock if used without being locked + lock (rand) + { + byte[] bytes = new byte[length]; + rand.NextBytes(bytes); + return System.Convert.ToBase64String(bytes); + } + } + + /// <summary>Gets a test file full path that is associated with the call site.</summary> + /// <param name="index">An optional index value to use as a suffix on the file name. Typically a loop index.</param> + /// <param name="memberName">The member name of the function calling this method.</param> + /// <param name="lineNumber">The line number of the function calling this method.</param> + public static string GetTestFilePath(int? index = null, [CallerMemberName] string memberName = null, [CallerLineNumber] int lineNumber = 0) + { + return Path.Combine(Path.GetTempPath(), string.Format( + index.HasValue ? "{0}_{1}_{2}_{3}" : "{0}_{1}_{2}", + memberName ?? "TestBase", lineNumber, Path.GetRandomFileName(), + index.GetValueOrDefault())); + } + } +}
\ No newline at end of file diff --git a/src/System.Collections.NonGeneric/tests/Performance/Perf.HashTable.cs b/src/System.Collections.NonGeneric/tests/Performance/Perf.HashTable.cs new file mode 100644 index 0000000000..329f3d4f76 --- /dev/null +++ b/src/System.Collections.NonGeneric/tests/Performance/Perf.HashTable.cs @@ -0,0 +1,83 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Xunit; +using Microsoft.Xunit.Performance; +using System.Collections.Generic; + +namespace System.Collections.Tests +{ + public class Perf_HashTable + { + private static List<object[]> _testData; + + public static IEnumerable<object[]> TestData() + { + if (_testData == null) + { + _testData = new List<object[]>(); + _testData.Add(new object[] { CreateHashtable(100) }); + _testData.Add(new object[] { CreateHashtable(1000) }); + } + return _testData; + } + + public static Hashtable CreateHashtable(int size) + { + Hashtable ht = new Hashtable(); + for (int i = 0; i < size; i++) + ht.Add(PerfUtils.CreateString(50), PerfUtils.CreateString(50)); + return ht; + } + + [Benchmark] + public void ctor() + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + new Hashtable(); new Hashtable(); new Hashtable(); new Hashtable(); new Hashtable(); + new Hashtable(); new Hashtable(); new Hashtable(); new Hashtable(); new Hashtable(); + new Hashtable(); new Hashtable(); new Hashtable(); new Hashtable(); new Hashtable(); + new Hashtable(); new Hashtable(); new Hashtable(); new Hashtable(); new Hashtable(); + } + } + + [Benchmark] + [MemberData("TestData")] + public void GetItem(Hashtable table) + { + object result; + string key = PerfUtils.CreateString(50); + table.Add(key, "value"); + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + result = table[key]; result = table[key]; result = table[key]; result = table[key]; + result = table[key]; result = table[key]; result = table[key]; result = table[key]; + result = table[key]; result = table[key]; result = table[key]; result = table[key]; + result = table[key]; result = table[key]; result = table[key]; result = table[key]; + } + } + table.Remove(key); + } + + [Benchmark] + [MemberData("TestData")] + public void Add(Hashtable table) + { + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + table.Add("key1", "value"); table.Add("key2", "value"); table.Add("key3", "value"); + table.Add("key4", "value"); table.Add("key5", "value"); table.Add("key6", "value"); + table.Add("key7", "value"); table.Add("key8", "value"); table.Add("key9", "value"); + } + for (int i = 1; i <= 9; i++) + table.Remove("key" + i); + } + } + } +} diff --git a/src/System.Collections.NonGeneric/tests/System.Collections.NonGeneric.Tests.csproj b/src/System.Collections.NonGeneric/tests/System.Collections.NonGeneric.Tests.csproj index bc1b2bccc1..7ae44d2f56 100644 --- a/src/System.Collections.NonGeneric/tests/System.Collections.NonGeneric.Tests.csproj +++ b/src/System.Collections.NonGeneric/tests/System.Collections.NonGeneric.Tests.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?xml version="1.0" encoding="utf-8"?> <Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" /> <PropertyGroup> @@ -9,6 +9,11 @@ <AssemblyName>System.Collections.NonGeneric.Tests</AssemblyName> <ProjectGuid>{EE95AE39-845A-42D3-86D0-8065DBE56612}</ProjectGuid> </PropertyGroup> + <!-- Performance tests require v5.0 portable tools --> + <PropertyGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <TargetFrameworkVersion>v5.0</TargetFrameworkVersion> + <TargetFrameworkProfile /> + </PropertyGroup> <!-- Default configurations to help VS understand the configurations --> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> </PropertyGroup> @@ -147,6 +152,13 @@ <Link>Common\System\Diagnostics\DebuggerAttributes.cs</Link> </Compile> </ItemGroup> + <!-- Performance Tests --> + <ItemGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <Compile Include="Performance\Perf.HashTable.cs" /> + <Compile Include="$(CommonTestPath)\Performance\PerfUtils.cs"> + <Link>Common\Performance\PerfUtils.cs</Link> + </Compile> + </ItemGroup> <ItemGroup> <ProjectReference Include="..\src\System.Collections.NonGeneric.csproj"> <Name>System.Collections.NonGeneric</Name> @@ -156,4 +168,4 @@ <None Include="project.json" /> </ItemGroup> <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> -</Project>
\ No newline at end of file +</Project> diff --git a/src/System.Collections.NonGeneric/tests/project.json b/src/System.Collections.NonGeneric/tests/project.json index 0c1bfa9441..50a9586f45 100644 --- a/src/System.Collections.NonGeneric/tests/project.json +++ b/src/System.Collections.NonGeneric/tests/project.json @@ -1,5 +1,6 @@ { "dependencies": { + "Microsoft.DotNet.xunit.performance": "1.0.0-*", "System.Collections": "4.0.10", "System.Console": "4.0.0-beta-*", "System.Diagnostics.Debug": "4.0.10", @@ -12,7 +13,7 @@ "System.Text.Encoding": "4.0.10", "System.Threading": "4.0.10", "System.Threading.Tasks": "4.0.10", - "xunit": "2.1.0-beta3-*", + "xunit": "2.1.0-rc1-*", "xunit.netcore.extensions": "1.0.0-prerelease-*" }, "frameworks": { diff --git a/src/System.Collections.NonGeneric/tests/project.lock.json b/src/System.Collections.NonGeneric/tests/project.lock.json index b6f818d354..213ae609d2 100644 --- a/src/System.Collections.NonGeneric/tests/project.lock.json +++ b/src/System.Collections.NonGeneric/tests/project.lock.json @@ -3,6 +3,36 @@ "version": 1, "targets": { "DNXCore,Version=v5.0": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.Diagnostics.Debug": "4.0.10", + "System.Diagnostics.Tracing": "4.0.20", + "System.Globalization": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem": "4.0.0", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.10", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Text.Encoding": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Tasks": "4.0.10", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "2.1.0-rc1-build3168", + "xunit.extensibility.execution": "2.1.0-rc1-build3168" + }, + "compile": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + }, + "runtime": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + } + }, "System.Collections/4.0.10": { "type": "package", "dependencies": { @@ -15,7 +45,7 @@ "lib/DNXCore50/System.Collections.dll": {} } }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.IO": "4.0.0", @@ -37,6 +67,18 @@ "lib/DNXCore50/System.Diagnostics.Debug.dll": {} } }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Diagnostics.Tracing.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Diagnostics.Tracing.dll": {} + } + }, "System.Globalization/4.0.10": { "type": "package", "dependencies": { @@ -63,6 +105,42 @@ "lib/DNXCore50/System.IO.dll": {} } }, + "System.IO.FileSystem/4.0.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Resources.ResourceManager": "4.0.0", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Runtime.Handles": "4.0.0", + "System.Runtime.InteropServices": "4.0.20", + "System.Text.Encoding": "4.0.10", + "System.Text.Encoding.Extensions": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Overlapped": "4.0.0", + "System.Threading.Tasks": "4.0.10" + }, + "compile": { + "ref/dotnet/System.IO.FileSystem.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.IO.FileSystem.dll": {} + } + }, + "System.IO.FileSystem.Primitives/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.20" + }, + "compile": { + "ref/dotnet/System.IO.FileSystem.Primitives.dll": {} + }, + "runtime": { + "lib/dotnet/System.IO.FileSystem.Primitives.dll": {} + } + }, "System.Linq/4.0.0": { "type": "package", "dependencies": { @@ -79,6 +157,25 @@ "lib/dotnet/System.Linq.dll": {} } }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Linq.Expressions.dll": {} + } + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.ObjectModel.dll": {} + } + }, "System.Private.Uri/4.0.0": { "type": "package", "compile": { @@ -102,6 +199,19 @@ "lib/DNXCore50/System.Reflection.dll": {} } }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Reflection.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Reflection.Extensions.dll": {} + } + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "dependencies": { @@ -204,6 +314,28 @@ "lib/DNXCore50/System.Text.Encoding.dll": {} } }, + "System.Text.Encoding.Extensions/4.0.10": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0", + "System.Text.Encoding": "4.0.10" + }, + "compile": { + "ref/dotnet/System.Text.Encoding.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Text.Encoding.Extensions.dll": {} + } + }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Text.RegularExpressions.dll": {} + } + }, "System.Threading/4.0.10": { "type": "package", "dependencies": { @@ -217,6 +349,19 @@ "lib/DNXCore50/System.Threading.dll": {} } }, + "System.Threading.Overlapped/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0", + "System.Runtime.Handles": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Threading.Overlapped.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Threading.Overlapped.dll": {} + } + }, "System.Threading.Tasks/4.0.10": { "type": "package", "dependencies": { @@ -229,11 +374,11 @@ "lib/DNXCore50/System.Threading.Tasks.dll": {} } }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.assert": "[2.1.0-beta3-build3029]", - "xunit.core": "[2.1.0-beta3-build3029]" + "xunit.assert": "[2.1.0-rc1-build3168]", + "xunit.core": "[2.1.0-rc1-build3168]" } }, "xunit.abstractions/2.0.0": { @@ -245,49 +390,86 @@ "lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll": {} } }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", + "dependencies": { + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.ObjectModel": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.RegularExpressions": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} } }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]", - "xunit.extensibility.execution": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]", + "xunit.extensibility.execution": "[2.1.0-rc1-build3168]" } }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { "xunit.abstractions": "[2.0.0]" }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {} + "lib/dotnet/xunit.core.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll": {} + "lib/dotnet/xunit.core.dll": {}, + "lib/dotnet/xunit.runner.tdnet.dll": {}, + "lib/dotnet/xunit.runner.utility.desktop.dll": {} } }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.0", + "System.Linq": "4.0.0", + "System.Linq.Expressions": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.Encoding": "4.0.0", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]" }, "compile": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} }, "runtime": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} } }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "dependencies": { "System.Diagnostics.Debug": "4.0.10", @@ -315,6 +497,25 @@ } }, "libraries": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "sha512": "NCrgkMUcuMy3T5PY9kcBFpRyN/HrUyHsSxvdyq426iTZj2pG+6odaztW5BrQov3gPEXM5cPx4+64djl4sC8/nw==", + "files": [ + "lib/dotnet/xunit.performance.core.dll", + "lib/dotnet/xunit.performance.core.pdb", + "lib/dotnet/xunit.performance.core.XML", + "lib/dotnet/xunit.performance.execution.dotnet.dll", + "lib/dotnet/xunit.performance.execution.dotnet.pdb", + "lib/net46/xunit.performance.core.dll", + "lib/net46/xunit.performance.core.pdb", + "lib/net46/xunit.performance.core.XML", + "lib/net46/xunit.performance.execution.desktop.dll", + "lib/net46/xunit.performance.execution.desktop.pdb", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg.sha512", + "Microsoft.DotNet.xunit.performance.nuspec" + ] + }, "System.Collections/4.0.10": { "type": "package", "serviceable": true, @@ -349,10 +550,10 @@ "System.Collections.nuspec" ] }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "aCYId/+628/CuOEBKx7sGxQ9fpqvLDqkOMuc0rqWRUCAIgNLtLd5htaQo58aXjzrP8D4/X35xVC+PQoHHis4Mg==", + "sha512": "pYDflUHKD2oIllR+HsbgfkbwNsjivEgYsFjM3eZWS6KVqa5vYVMl93OvC+WfB0Va3Q9gAZYzxXQJUv6gWoJGLw==", "files": [ "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", @@ -366,8 +567,8 @@ "ref/xamarinios10/_._", "ref/xamarinmac20/_._", "runtime.json", - "System.Console.4.0.0-beta-23311.nupkg", - "System.Console.4.0.0-beta-23311.nupkg.sha512", + "System.Console.4.0.0-beta-23316.nupkg", + "System.Console.4.0.0-beta-23316.nupkg.sha512", "System.Console.nuspec" ] }, @@ -405,6 +606,40 @@ "System.Diagnostics.Debug.nuspec" ] }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "serviceable": true, + "sha512": "gn/wexGHc35Fv++5L1gYHMY5g25COfiZ0PGrL+3PfwzoJd4X2LbTAm/U8d385SI6BKQBI/z4dQfvneS9J27+Tw==", + "files": [ + "lib/DNXCore50/System.Diagnostics.Tracing.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Diagnostics.Tracing.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Diagnostics.Tracing.xml", + "ref/dotnet/es/System.Diagnostics.Tracing.xml", + "ref/dotnet/fr/System.Diagnostics.Tracing.xml", + "ref/dotnet/it/System.Diagnostics.Tracing.xml", + "ref/dotnet/ja/System.Diagnostics.Tracing.xml", + "ref/dotnet/ko/System.Diagnostics.Tracing.xml", + "ref/dotnet/ru/System.Diagnostics.Tracing.xml", + "ref/dotnet/System.Diagnostics.Tracing.dll", + "ref/dotnet/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hans/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hant/System.Diagnostics.Tracing.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Diagnostics.Tracing.dll", + "System.Diagnostics.Tracing.4.0.20.nupkg", + "System.Diagnostics.Tracing.4.0.20.nupkg.sha512", + "System.Diagnostics.Tracing.nuspec" + ] + }, "System.Globalization/4.0.10": { "type": "package", "sha512": "kzRtbbCNAxdafFBDogcM36ehA3th8c1PGiz8QRkZn8O5yMBorDHSK8/TGJPYOaCS5zdsGk0u9qXHnW91nqy7fw==", @@ -472,6 +707,71 @@ "System.IO.nuspec" ] }, + "System.IO.FileSystem/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "eo05SPWfG+54UA0wxgRIYOuOslq+2QrJLXZaJDDsfLXG15OLguaItW39NYZTqUb4DeGOkU4R0wpOLOW4ynMUDQ==", + "files": [ + "lib/DNXCore50/System.IO.FileSystem.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.dll", + "lib/netcore50/System.IO.FileSystem.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.IO.FileSystem.xml", + "ref/dotnet/es/System.IO.FileSystem.xml", + "ref/dotnet/fr/System.IO.FileSystem.xml", + "ref/dotnet/it/System.IO.FileSystem.xml", + "ref/dotnet/ja/System.IO.FileSystem.xml", + "ref/dotnet/ko/System.IO.FileSystem.xml", + "ref/dotnet/ru/System.IO.FileSystem.xml", + "ref/dotnet/System.IO.FileSystem.dll", + "ref/dotnet/System.IO.FileSystem.xml", + "ref/dotnet/zh-hans/System.IO.FileSystem.xml", + "ref/dotnet/zh-hant/System.IO.FileSystem.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.IO.FileSystem.4.0.0.nupkg", + "System.IO.FileSystem.4.0.0.nupkg.sha512", + "System.IO.FileSystem.nuspec" + ] + }, + "System.IO.FileSystem.Primitives/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "7pJUvYi/Yq3A5nagqCCiOw3+aJp3xXc/Cjr8dnJDnER3/6kX3LEencfqmXUcPl9+7OvRNyPMNhqsLAcMK6K/KA==", + "files": [ + "lib/dotnet/System.IO.FileSystem.Primitives.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/es/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/fr/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/it/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ja/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ko/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ru/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/System.IO.FileSystem.Primitives.dll", + "ref/dotnet/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/zh-hans/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/zh-hant/System.IO.FileSystem.Primitives.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.Primitives.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.IO.FileSystem.Primitives.4.0.0.nupkg", + "System.IO.FileSystem.Primitives.4.0.0.nupkg.sha512", + "System.IO.FileSystem.Primitives.nuspec" + ] + }, "System.Linq/4.0.0": { "type": "package", "serviceable": true, @@ -505,6 +805,102 @@ "System.Linq.nuspec" ] }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "sha512": "wlfVllrKi+evu4Hi8yoJP1dSOVXbvsy7Hs1+oz4Cykfdf6MQTPlD3LI4WKWhprn8FpU5MS3spPSbcMX5sAoJSw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Linq.Expressions.xml", + "ref/dotnet/es/System.Linq.Expressions.xml", + "ref/dotnet/fr/System.Linq.Expressions.xml", + "ref/dotnet/it/System.Linq.Expressions.xml", + "ref/dotnet/ja/System.Linq.Expressions.xml", + "ref/dotnet/ko/System.Linq.Expressions.xml", + "ref/dotnet/ru/System.Linq.Expressions.xml", + "ref/dotnet/System.Linq.Expressions.dll", + "ref/dotnet/System.Linq.Expressions.xml", + "ref/dotnet/zh-hans/System.Linq.Expressions.xml", + "ref/dotnet/zh-hant/System.Linq.Expressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Linq.Expressions.xml", + "ref/netcore50/es/System.Linq.Expressions.xml", + "ref/netcore50/fr/System.Linq.Expressions.xml", + "ref/netcore50/it/System.Linq.Expressions.xml", + "ref/netcore50/ja/System.Linq.Expressions.xml", + "ref/netcore50/ko/System.Linq.Expressions.xml", + "ref/netcore50/ru/System.Linq.Expressions.xml", + "ref/netcore50/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.xml", + "ref/netcore50/zh-hans/System.Linq.Expressions.xml", + "ref/netcore50/zh-hant/System.Linq.Expressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Linq.Expressions.4.0.0.nupkg", + "System.Linq.Expressions.4.0.0.nupkg.sha512", + "System.Linq.Expressions.nuspec" + ] + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "sha512": "+3j/n+5SlF7PKb0/s5kdord+5RyW3uUscB+0WPuYvfAvEgyx6yPdPXU9tXdDZImRohMuWnQTAG2rFojFPfoGbA==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.ObjectModel.xml", + "ref/dotnet/es/System.ObjectModel.xml", + "ref/dotnet/fr/System.ObjectModel.xml", + "ref/dotnet/it/System.ObjectModel.xml", + "ref/dotnet/ja/System.ObjectModel.xml", + "ref/dotnet/ko/System.ObjectModel.xml", + "ref/dotnet/ru/System.ObjectModel.xml", + "ref/dotnet/System.ObjectModel.dll", + "ref/dotnet/System.ObjectModel.xml", + "ref/dotnet/zh-hans/System.ObjectModel.xml", + "ref/dotnet/zh-hant/System.ObjectModel.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.ObjectModel.xml", + "ref/netcore50/es/System.ObjectModel.xml", + "ref/netcore50/fr/System.ObjectModel.xml", + "ref/netcore50/it/System.ObjectModel.xml", + "ref/netcore50/ja/System.ObjectModel.xml", + "ref/netcore50/ko/System.ObjectModel.xml", + "ref/netcore50/ru/System.ObjectModel.xml", + "ref/netcore50/System.ObjectModel.dll", + "ref/netcore50/System.ObjectModel.xml", + "ref/netcore50/zh-hans/System.ObjectModel.xml", + "ref/netcore50/zh-hant/System.ObjectModel.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.ObjectModel.4.0.0.nupkg", + "System.ObjectModel.4.0.0.nupkg.sha512", + "System.ObjectModel.nuspec" + ] + }, "System.Private.Uri/4.0.0": { "type": "package", "serviceable": true, @@ -553,6 +949,40 @@ "System.Reflection.nuspec" ] }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "dbYaZWCyFAu1TGYUqR2n+Q+1casSHPR2vVW0WVNkXpZbrd2BXcZ7cpvpu9C98CTHtNmyfMWCLpCclDqly23t6A==", + "files": [ + "lib/DNXCore50/System.Reflection.Extensions.dll", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Extensions.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "ref/dotnet/de/System.Reflection.Extensions.xml", + "ref/dotnet/es/System.Reflection.Extensions.xml", + "ref/dotnet/fr/System.Reflection.Extensions.xml", + "ref/dotnet/it/System.Reflection.Extensions.xml", + "ref/dotnet/ja/System.Reflection.Extensions.xml", + "ref/dotnet/ko/System.Reflection.Extensions.xml", + "ref/dotnet/ru/System.Reflection.Extensions.xml", + "ref/dotnet/System.Reflection.Extensions.dll", + "ref/dotnet/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hans/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hant/System.Reflection.Extensions.xml", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Extensions.dll", + "ref/netcore50/System.Reflection.Extensions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "runtimes/win8-aot/lib/netcore50/System.Reflection.Extensions.dll", + "System.Reflection.Extensions.4.0.0.nupkg", + "System.Reflection.Extensions.4.0.0.nupkg.sha512", + "System.Reflection.Extensions.nuspec" + ] + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "serviceable": true, @@ -810,6 +1240,87 @@ "System.Text.Encoding.nuspec" ] }, + "System.Text.Encoding.Extensions/4.0.10": { + "type": "package", + "sha512": "TZvlwXMxKo3bSRIcsWZLCIzIhLbvlz+mGeKYRZv/zUiSoQzGOwkYeBu6hOw2XPQgKqT0F4Rv8zqKdvmp2fWKYg==", + "files": [ + "lib/DNXCore50/System.Text.Encoding.Extensions.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Text.Encoding.Extensions.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Text.Encoding.Extensions.xml", + "ref/dotnet/es/System.Text.Encoding.Extensions.xml", + "ref/dotnet/fr/System.Text.Encoding.Extensions.xml", + "ref/dotnet/it/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ja/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ko/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ru/System.Text.Encoding.Extensions.xml", + "ref/dotnet/System.Text.Encoding.Extensions.dll", + "ref/dotnet/System.Text.Encoding.Extensions.xml", + "ref/dotnet/zh-hans/System.Text.Encoding.Extensions.xml", + "ref/dotnet/zh-hant/System.Text.Encoding.Extensions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Text.Encoding.Extensions.dll", + "System.Text.Encoding.Extensions.4.0.10.nupkg", + "System.Text.Encoding.Extensions.4.0.10.nupkg.sha512", + "System.Text.Encoding.Extensions.nuspec" + ] + }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "sha512": "D2CHm8LBIymJK9+1E3sn4cUEzMd6B+quQUrCGUluv9QFBNOdL3XqNu548QKeNplEXFOmF5aKXMxXbTrjbEUNMw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Text.RegularExpressions.xml", + "ref/dotnet/es/System.Text.RegularExpressions.xml", + "ref/dotnet/fr/System.Text.RegularExpressions.xml", + "ref/dotnet/it/System.Text.RegularExpressions.xml", + "ref/dotnet/ja/System.Text.RegularExpressions.xml", + "ref/dotnet/ko/System.Text.RegularExpressions.xml", + "ref/dotnet/ru/System.Text.RegularExpressions.xml", + "ref/dotnet/System.Text.RegularExpressions.dll", + "ref/dotnet/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hans/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hant/System.Text.RegularExpressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Text.RegularExpressions.xml", + "ref/netcore50/es/System.Text.RegularExpressions.xml", + "ref/netcore50/fr/System.Text.RegularExpressions.xml", + "ref/netcore50/it/System.Text.RegularExpressions.xml", + "ref/netcore50/ja/System.Text.RegularExpressions.xml", + "ref/netcore50/ko/System.Text.RegularExpressions.xml", + "ref/netcore50/ru/System.Text.RegularExpressions.xml", + "ref/netcore50/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Text.RegularExpressions.4.0.0.nupkg", + "System.Text.RegularExpressions.4.0.0.nupkg.sha512", + "System.Text.RegularExpressions.nuspec" + ] + }, "System.Threading/4.0.10": { "type": "package", "serviceable": true, @@ -844,6 +1355,31 @@ "System.Threading.nuspec" ] }, + "System.Threading.Overlapped/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "X5LuQFhM5FTqaez3eXKJ9CbfSGZ7wj6j4hSVtxct3zmwQXLqG95qoWdvILcgN7xtrDOBIFtpiyDg0vmoI0jE2A==", + "files": [ + "lib/DNXCore50/System.Threading.Overlapped.dll", + "lib/net46/System.Threading.Overlapped.dll", + "lib/netcore50/System.Threading.Overlapped.dll", + "ref/dotnet/de/System.Threading.Overlapped.xml", + "ref/dotnet/es/System.Threading.Overlapped.xml", + "ref/dotnet/fr/System.Threading.Overlapped.xml", + "ref/dotnet/it/System.Threading.Overlapped.xml", + "ref/dotnet/ja/System.Threading.Overlapped.xml", + "ref/dotnet/ko/System.Threading.Overlapped.xml", + "ref/dotnet/ru/System.Threading.Overlapped.xml", + "ref/dotnet/System.Threading.Overlapped.dll", + "ref/dotnet/System.Threading.Overlapped.xml", + "ref/dotnet/zh-hans/System.Threading.Overlapped.xml", + "ref/dotnet/zh-hant/System.Threading.Overlapped.xml", + "ref/net46/System.Threading.Overlapped.dll", + "System.Threading.Overlapped.4.0.0.nupkg", + "System.Threading.Overlapped.4.0.0.nupkg.sha512", + "System.Threading.Overlapped.nuspec" + ] + }, "System.Threading.Tasks/4.0.10": { "type": "package", "serviceable": true, @@ -878,12 +1414,12 @@ "System.Threading.Tasks.nuspec" ] }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", - "sha512": "NMFXV0ePe/GrfhMSPGAlWmiUZCzjaatpdAGcavf2B6vYTRyMTpyJT01LI6jemMV/VSDXLrtHp0Ov9xZyR1cLLg==", + "sha512": "dVnDKBCIpLE5GaxLALnbnobqtDyTTDKJSRbqhLGrx0Ptc/n3VQRUby/CDx6v+y7xNVPqtqj0XMeDO1DVT8E3tA==", "files": [ - "xunit.2.1.0-beta3-build3029.nupkg", - "xunit.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.2.1.0-rc1-build3168.nupkg", + "xunit.2.1.0-rc1-build3168.nupkg.sha512", "xunit.nuspec" ] }, @@ -900,105 +1436,116 @@ "xunit.abstractions.nuspec" ] }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", - "sha512": "AMS7Fv77DayXVRCBMmVEDwOXPcbxk8dCBA/iACsve+6+UQqopMtNyAynyIcXPFRK/peeitUKID4ChOXWisJmUw==", + "sha512": "lsTK4OaNGt5IOoKO3ZQ0gSFngjWSHZ5xNurNtLd0MxZv5onv66xlNmWBYCVNt4sZLknQ+RfiqYm1EZ9ZrA0SDw==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.xml", - "xunit.assert.2.1.0-beta3-build3029.nupkg", - "xunit.assert.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.assert.dll", + "lib/dotnet/xunit.assert.pdb", + "lib/dotnet/xunit.assert.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.xml", + "xunit.assert.2.1.0-rc1-build3168.nupkg", + "xunit.assert.2.1.0-rc1-build3168.nupkg.sha512", "xunit.assert.nuspec" ] }, - "xunit.core/2.1.0-beta3-build3029": { - "type": "package", - "sha512": "uDUBbwZSRx226BMwj6VylzXQPVpEIelNIulT+LxbSEH52y2a4btR9d5ptQmkSVjmJXP5/hGCc4cu1DSCu0pgUA==", - "files": [ - "build/_Desktop/xunit.execution.desktop.dll", - "build/monoandroid/xunit.core.props", - "build/monoandroid/xunit.execution.MonoAndroid.dll", - "build/monotouch/xunit.core.props", - "build/monotouch/xunit.execution.MonoTouch.dll", - "build/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.targets", - "build/portable-win81+wpa81/xunit.execution.universal.dll", - "build/portable-win81+wpa81/xunit.execution.universal.pri", - "build/wp8/xunit.core.props", - "build/wp8/xunit.core.targets", - "build/wp8/xunit.execution.wp8.dll", - "build/Xamarin.iOS/xunit.core.props", - "build/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "xunit.core.2.1.0-beta3-build3029.nupkg", - "xunit.core.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.core/2.1.0-rc1-build3168": { + "type": "package", + "sha512": "IcQo+pNEDYBC9HJfzY08k0NhLZMX8WXudrlhcrIAzkT2szhrLbGhUi1k6vU5n9crsVv+IxosvIH28kYf6/Z32w==", + "files": [ + "build/_desktop/xunit.execution.desktop.dll", + "build/dnx451/_._", + "build/monoandroid/_._", + "build/monotouch/_._", + "build/net45/_._", + "build/portable-net45+win8+wp8+wpa81/xunit.core.props", + "build/win8/_._", + "build/win81/xunit.core.props", + "build/wp8/_._", + "build/wpa81/xunit.core.props", + "build/xamarinios/_._", + "xunit.core.2.1.0-rc1-build3168.nupkg", + "xunit.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.core.nuspec" ] }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "lsPro5U3NLasHI/RwqjKzXiRlh9N0IOlR3cluwXYVtihXbGtySeSnU/Fh5MTcWYxh+MVpoNop5zDD0/A2nrHsA==", + "sha512": "8KZaq1mdeaiZxo1ScsGzhkeQRwLLS6+WIno+9gtnYccWmTjCJ/XSYz2fAAlB5mUeyw0vqqrFc+TfNZELs5QiZQ==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll.tdnet", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.xml", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.core.dll", + "lib/dotnet/xunit.core.dll.tdnet", + "lib/dotnet/xunit.core.pdb", + "lib/dotnet/xunit.core.xml", + "lib/dotnet/xunit.runner.tdnet.dll", + "lib/dotnet/xunit.runner.utility.desktop.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll.tdnet", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.tdnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.utility.desktop.dll", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.core.nuspec" ] }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { - "type": "package", - "sha512": "WuUYamK4RHrHxihvNuX7NkryMhQrpH1+ziJ/mPIQbm18zevSgre8BwUuVZvmLZa8uVob3xS4dvAah2+HCgLiXg==", - "files": [ - "lib/dnx451/xunit.execution.dnx.dll", - "lib/dnx451/xunit.execution.dnx.pdb", - "lib/dnx451/xunit.execution.dnx.xml", - "lib/dnxcore50/xunit.execution.dnx.dll", - "lib/dnxcore50/xunit.execution.dnx.pdb", - "lib/dnxcore50/xunit.execution.dnx.xml", - "lib/monoandroid/xunit.execution.MonoAndroid.dll", - "lib/monoandroid/xunit.execution.MonoAndroid.pdb", - "lib/monoandroid/xunit.execution.MonoAndroid.xml", - "lib/monotouch/xunit.execution.MonoTouch.dll", - "lib/monotouch/xunit.execution.MonoTouch.pdb", - "lib/monotouch/xunit.execution.MonoTouch.xml", - "lib/net45/xunit.execution.desktop.dll", - "lib/net45/xunit.execution.desktop.pdb", - "lib/net45/xunit.execution.desktop.xml", - "lib/portable-wpa81+win81/xunit.execution.universal.dll", - "lib/portable-wpa81+win81/xunit.execution.universal.pdb", - "lib/portable-wpa81+win81/xunit.execution.universal.pri", - "lib/portable-wpa81+win81/xunit.execution.universal.xml", - "lib/wp8/xunit.execution.wp8.dll", - "lib/wp8/xunit.execution.wp8.pdb", - "lib/wp8/xunit.execution.wp8.xml", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.pdb", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.xml", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.extensibility.execution/2.1.0-rc1-build3168": { + "type": "package", + "sha512": "1w0u3eB7i25hca60r/53oSVb0blMOEm2eVqvwTg9jhMSe/A9raj6UZAVzUnFtA3xLssP4K1udOGTC1qrZ9/VoA==", + "files": [ + "lib/dnx451/xunit.execution.dotnet.dll", + "lib/dnx451/xunit.execution.dotnet.pdb", + "lib/dnx451/xunit.execution.dotnet.xml", + "lib/dotnet/xunit.execution.dotnet.dll", + "lib/dotnet/xunit.execution.dotnet.pdb", + "lib/dotnet/xunit.execution.dotnet.xml", + "lib/monoandroid/xunit.execution.dotnet.dll", + "lib/monoandroid/xunit.execution.dotnet.pdb", + "lib/monoandroid/xunit.execution.dotnet.xml", + "lib/monotouch/xunit.execution.dotnet.dll", + "lib/monotouch/xunit.execution.dotnet.pdb", + "lib/monotouch/xunit.execution.dotnet.xml", + "lib/net35/xunit.execution.desktop.dll", + "lib/net35/xunit.execution.desktop.pdb", + "lib/net35/xunit.execution.desktop.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.xml", + "lib/win8/xunit.execution.dotnet.dll", + "lib/win8/xunit.execution.dotnet.pdb", + "lib/win8/xunit.execution.dotnet.xml", + "lib/wp8/xunit.execution.dotnet.dll", + "lib/wp8/xunit.execution.dotnet.pdb", + "lib/wp8/xunit.execution.dotnet.xml", + "lib/wpa81/xunit.execution.dotnet.dll", + "lib/wpa81/xunit.execution.dotnet.pdb", + "lib/wpa81/xunit.execution.dotnet.xml", + "lib/xamarinios/xunit.execution.dotnet.dll", + "lib/xamarinios/xunit.execution.dotnet.pdb", + "lib/xamarinios/xunit.execution.dotnet.xml", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.execution.nuspec" ] }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "serviceable": true, - "sha512": "P3Q9YspdSUzoJQS6iT5mF3jt+s0u9u/G3K6s0Ns7NbAwQPktjwuO7CgJk38fop4yYDVdsVEwbZF2jfNMhJ7hkQ==", + "sha512": "9t2jrzI6N5ueydH5omBi95hiBOuNXpI6sS2kQJO56+bUavVpSD6/aD0C4+Nqbiql8Zvu0yx2GO+2IAd0JQcjIA==", "files": [ "lib/dotnet/Xunit.NetCore.Extensions.dll", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg.sha512", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg.sha512", "xunit.netcore.extensions.nuspec" ] } }, "projectFileDependencyGroups": { "": [ + "Microsoft.DotNet.xunit.performance >= 1.0.0-*", "System.Collections >= 4.0.10", "System.Console >= 4.0.0-beta-*", "System.Diagnostics.Debug >= 4.0.10", @@ -1011,7 +1558,7 @@ "System.Text.Encoding >= 4.0.10", "System.Threading >= 4.0.10", "System.Threading.Tasks >= 4.0.10", - "xunit >= 2.1.0-beta3-*", + "xunit >= 2.1.0-rc1-*", "xunit.netcore.extensions >= 1.0.0-prerelease-*" ], "DNXCore,Version=v5.0": [] diff --git a/src/System.Collections/tests/Performance/Perf.Dictionary.cs b/src/System.Collections/tests/Performance/Perf.Dictionary.cs new file mode 100644 index 0000000000..2709784a3f --- /dev/null +++ b/src/System.Collections/tests/Performance/Perf.Dictionary.cs @@ -0,0 +1,203 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System.Collections.Generic; +using Xunit; +using Microsoft.Xunit.Performance; + +namespace System.Collections.Tests +{ + public class Perf_Dictionary + { + private static List<object[]> _testData; + + /// <summary> + /// Yields several Dictionaries containing increasing amounts of string-string + /// pairs can be used as MemberData input to performance tests for Dictionary + /// </summary> + /// <remarks>Any changes made to the returned collections MUST be undone. Collections + /// used as MemberData are cached and reused in other perf tests. + /// </remarks> + public static List<object[]> TestData() + { + if (_testData == null) + { + _testData = new List<object[]>(); + _testData.Add(new object[] { CreateDictionary(100) }); + _testData.Add(new object[] { CreateDictionary(1000) }); + } + return _testData; + } + + /// <summary> + /// Creates a Dictionary of string-string with the specified number of pairs + /// </summary> + public static Dictionary<string, string> CreateDictionary(int size) + { + Dictionary<string, string> dict = new Dictionary<string, string>(); + while (dict.Count < size) + { + string key = PerfUtils.CreateString(50); + while (dict.ContainsKey(key)) + key = PerfUtils.CreateString(50); + dict.Add(key, PerfUtils.CreateString(50)); + } + return dict; + } + + [Benchmark] + [MemberData("TestData")] + public void Add(Dictionary<string, string> dict) + { + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + dict.Add("key1", "string"); dict.Add("key2", "string"); dict.Add("key3", "string"); + dict.Add("key4", "string"); dict.Add("key5", "string"); dict.Add("key6", "string"); + dict.Add("key7", "string"); dict.Add("key8", "string"); dict.Add("key9", "string"); + } + for (int i = 1; i <= 9; i++) + Assert.True(dict.Remove("key" + i)); + } + } + + [Benchmark] + public void ctor() + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + new Dictionary<int, string>(); new Dictionary<int, string>(); new Dictionary<int, string>(); + new Dictionary<int, string>(); new Dictionary<int, string>(); new Dictionary<int, string>(); + new Dictionary<int, string>(); new Dictionary<int, string>(); new Dictionary<int, string>(); + } + } + + [Benchmark] + [InlineData(0)] + [InlineData(1024)] + [InlineData(4096)] + [InlineData(16384)] + public void ctor_int(int size) + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + new Dictionary<int, string>(size); new Dictionary<int, string>(size); new Dictionary<int, string>(size); + new Dictionary<int, string>(size); new Dictionary<int, string>(size); new Dictionary<int, string>(size); + new Dictionary<int, string>(size); new Dictionary<int, string>(size); new Dictionary<int, string>(size); + } + } + + [Benchmark] + [MemberData("TestData")] + public void GetItem(Dictionary<string, string> dict) + { + // Setup + string retrieved; + for (int i = 1; i <= 9; i++) + dict.Add("key" + i, "value"); + + // Actual perf testing + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + retrieved = dict["key1"]; retrieved = dict["key2"]; retrieved = dict["key3"]; + retrieved = dict["key4"]; retrieved = dict["key5"]; retrieved = dict["key6"]; + retrieved = dict["key7"]; retrieved = dict["key8"]; retrieved = dict["key9"]; + } + } + + // Teardown + for (int i = 1; i <= 9; i++) + dict.Remove("key" + i); + } + + [Benchmark] + [MemberData("TestData")] + public void SetItem(Dictionary<string, string> dict) + { + // Setup + for (int i = 1; i <= 9; i++) + dict.Add("key" + i, "value"); + + // Actual perf testing + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + dict["key1"] = "string"; dict["key2"] = "string"; dict["key3"] = "string"; + dict["key4"] = "string"; dict["key5"] = "string"; dict["key6"] = "string"; + dict["key7"] = "string"; dict["key8"] = "string"; dict["key9"] = "string"; + } + } + + // Teardown + for (int i = 1; i <= 9; i++) + dict.Remove("key" + i); + } + + [Benchmark] + [MemberData("TestData")] + public void GetKeys(Dictionary<string, string> dict) + { + IEnumerable<string> result; + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + result = dict.Keys; result = dict.Keys; result = dict.Keys; + result = dict.Keys; result = dict.Keys; result = dict.Keys; + result = dict.Keys; result = dict.Keys; result = dict.Keys; + } + } + + [Benchmark] + [MemberData("TestData")] + public void TryGetValue(Dictionary<string, string> dict) + { + // Setup + string retrieved; + string key = PerfUtils.CreateString(50); + dict.Add(key, "value"); + + // Actual perf testing + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + dict.TryGetValue(key, out retrieved); dict.TryGetValue(key, out retrieved); + dict.TryGetValue(key, out retrieved); dict.TryGetValue(key, out retrieved); + dict.TryGetValue(key, out retrieved); dict.TryGetValue(key, out retrieved); + dict.TryGetValue(key, out retrieved); dict.TryGetValue(key, out retrieved); + } + } + + // Teardown + dict.Remove(key); + } + + [Benchmark] + [MemberData("TestData")] + public void ContainsKey(Dictionary<string, string> dict) + { + // Setup + string key = PerfUtils.CreateString(50); + dict.Add(key, "value"); + + // Actual perf testing + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + dict.ContainsKey(key); dict.ContainsKey(key); dict.ContainsKey(key); + dict.ContainsKey(key); dict.ContainsKey(key); dict.ContainsKey(key); + dict.ContainsKey(key); dict.ContainsKey(key); dict.ContainsKey(key); + dict.ContainsKey(key); dict.ContainsKey(key); dict.ContainsKey(key); + } + } + dict.Remove(key); + } + } +} diff --git a/src/System.Collections/tests/Performance/Perf.List.cs b/src/System.Collections/tests/Performance/Perf.List.cs new file mode 100644 index 0000000000..b872b2d974 --- /dev/null +++ b/src/System.Collections/tests/Performance/Perf.List.cs @@ -0,0 +1,166 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System.Collections.Generic; +using Xunit; +using Microsoft.Xunit.Performance; + +namespace System.Collections.Tests +{ + public class Perf_List + { + private static List<object[]> _testData; + + /// <summary> + /// Yields several Lists containing increasing amounts of strings + /// can be used as MemberData input to performance tests for Dictionary + /// </summary> + /// <remarks>Any changes made to the returned collections MUST be undone. Collections + /// used as MemberData are cached and reused in other perf tests. + /// </remarks> + public static List<object[]> TestData() + { + if (_testData == null) + { + _testData = new List<object[]>(); + _testData.Add(new object[] { CreateList(100) }); + _testData.Add(new object[] { CreateList(1000) }); + } + return _testData; + } + + /// <summary> + /// Creates a list containing a number of elements equal to the specified size + /// </summary> + public static List<object> CreateList(int size) + { + List<object> list = new List<object>(); + for (int i = 0; i < size; i++) + list.Add(PerfUtils.CreateString(100)); + return list; + } + + [Benchmark] + [MemberData("TestData")] + public void Add(List<object> list) + { + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + list.Add("TestString1"); list.Add("TestString2"); list.Add("TestString3"); list.Add("TestString4"); + list.Add("TestString5"); list.Add("TestString6"); list.Add("TestString7"); list.Add("TestString8"); + } + list.RemoveRange(list.Count - 8, 8); + } + } + + [Benchmark] + [MemberData("TestData")] + public void AddRange(List<object> list) + { + foreach (var iteration in Benchmark.Iterations) + { + List<object> emptyList = new List<object>(); + using (iteration.StartMeasurement()) + emptyList.AddRange(list); + } + } + + [Benchmark] + [MemberData("TestData")] + public void Clear(List<object> list) + { + foreach (var iteration in Benchmark.Iterations) + { + // Create a local hard copy so that future iterations aren't affected + var copy = new List<object>(list); + using (iteration.StartMeasurement()) + copy.Clear(); + } + } + + [Benchmark] + [MemberData("TestData")] + public void Contains(List<object> list) + { + object contained = list[list.Count / 2]; + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + list.Contains(contained); list.Contains(contained); list.Contains(contained); list.Contains(contained); + list.Contains(contained); list.Contains(contained); list.Contains(contained); list.Contains(contained); + list.Contains(contained); list.Contains(contained); list.Contains(contained); list.Contains(contained); + } + } + + [Benchmark] + public void ctor() + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + new List<object>(); new List<object>(); new List<object>(); new List<object>(); new List<object>(); + new List<object>(); new List<object>(); new List<object>(); new List<object>(); new List<object>(); + new List<object>(); new List<object>(); new List<object>(); new List<object>(); new List<object>(); + } + } + + [Benchmark] + [MemberData("TestData")] + public void ctor_IEnumerable(List<object> list) + { + var array = list.ToArray(); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + new List<object>(array); + } + + [Benchmark] + [MemberData("TestData")] + public void GetCount(List<object> list) + { + int temp; + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + temp = list.Count; temp = list.Count; temp = list.Count; temp = list.Count; temp = list.Count; + temp = list.Count; temp = list.Count; temp = list.Count; temp = list.Count; temp = list.Count; + temp = list.Count; temp = list.Count; temp = list.Count; temp = list.Count; temp = list.Count; + } + } + + [Benchmark] + [MemberData("TestData")] + public void GetItem(List<object> list) + { + object temp; + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + temp = list[50]; temp = list[50]; temp = list[50]; temp = list[50]; temp = list[50]; + temp = list[50]; temp = list[50]; temp = list[50]; temp = list[50]; temp = list[50]; + temp = list[50]; temp = list[50]; temp = list[50]; temp = list[50]; temp = list[50]; + temp = list[50]; temp = list[50]; temp = list[50]; temp = list[50]; temp = list[50]; + } + } + + [Benchmark] + [MemberData("TestData")] + public void Enumerator(List<object> list) + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + foreach (var element in list) { } + } + + [Benchmark] + [MemberData("TestData")] + public void ToArray(List<object> list) + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + list.ToArray(); + } + } +} diff --git a/src/System.Collections/tests/System.Collections.Tests.csproj b/src/System.Collections/tests/System.Collections.Tests.csproj index d8edbe9918..f0654cde4a 100644 --- a/src/System.Collections/tests/System.Collections.Tests.csproj +++ b/src/System.Collections/tests/System.Collections.Tests.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?xml version="1.0" encoding="utf-8"?> <Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" /> <PropertyGroup> @@ -9,6 +9,11 @@ <AssemblyName>System.Collections.Tests</AssemblyName> <RootNamespace>System.Collections.Tests</RootNamespace> </PropertyGroup> + <!-- Performance tests require v5.0 portable tools --> + <PropertyGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <TargetFrameworkVersion>v5.0</TargetFrameworkVersion> + <TargetFrameworkProfile /> + </PropertyGroup> <!-- Default configurations to help VS understand the configurations --> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> </PropertyGroup> @@ -143,8 +148,16 @@ <Link>Common\System\Diagnostics\DebuggerAttributes.cs</Link> </Compile> </ItemGroup> + <!-- Performance Tests --> + <ItemGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <Compile Include="Performance\Perf.Dictionary.cs" /> + <Compile Include="Performance\Perf.List.cs" /> + <Compile Include="$(CommonTestPath)\Performance\PerfUtils.cs"> + <Link>Common\Performance\PerfUtils.cs</Link> + </Compile> + </ItemGroup> <ItemGroup> <None Include="project.json" /> </ItemGroup> <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> -</Project>
\ No newline at end of file +</Project> diff --git a/src/System.Collections/tests/project.json b/src/System.Collections/tests/project.json index b846876820..09ac0994f4 100644 --- a/src/System.Collections/tests/project.json +++ b/src/System.Collections/tests/project.json @@ -1,5 +1,6 @@ { "dependencies": { + "Microsoft.DotNet.xunit.performance": "1.0.0-*", "System.Collections": "4.0.10", "System.Console": "4.0.0-beta-*", "System.Globalization": "4.0.10", @@ -9,7 +10,7 @@ "System.Runtime.Extensions": "4.0.10", "System.Threading": "4.0.10", "System.Threading.Tasks": "4.0.10", - "xunit": "2.1.0-beta3-*", + "xunit": "2.1.0-rc1-*", "xunit.netcore.extensions": "1.0.0-prerelease-*" }, "frameworks": { diff --git a/src/System.Collections/tests/project.lock.json b/src/System.Collections/tests/project.lock.json index 88e6efd62e..965a91bb49 100644 --- a/src/System.Collections/tests/project.lock.json +++ b/src/System.Collections/tests/project.lock.json @@ -3,6 +3,36 @@ "version": 1, "targets": { "DNXCore,Version=v5.0": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.Diagnostics.Debug": "4.0.10", + "System.Diagnostics.Tracing": "4.0.20", + "System.Globalization": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem": "4.0.0", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.10", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Text.Encoding": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Tasks": "4.0.10", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "2.1.0-rc1-build3168", + "xunit.extensibility.execution": "2.1.0-rc1-build3168" + }, + "compile": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + }, + "runtime": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + } + }, "System.Collections/4.0.10": { "type": "package", "dependencies": { @@ -15,7 +45,7 @@ "lib/DNXCore50/System.Collections.dll": {} } }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.IO": "4.0.0", @@ -37,6 +67,18 @@ "lib/DNXCore50/System.Diagnostics.Debug.dll": {} } }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Diagnostics.Tracing.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Diagnostics.Tracing.dll": {} + } + }, "System.Globalization/4.0.10": { "type": "package", "dependencies": { @@ -63,6 +105,42 @@ "lib/DNXCore50/System.IO.dll": {} } }, + "System.IO.FileSystem/4.0.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Resources.ResourceManager": "4.0.0", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Runtime.Handles": "4.0.0", + "System.Runtime.InteropServices": "4.0.20", + "System.Text.Encoding": "4.0.10", + "System.Text.Encoding.Extensions": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Overlapped": "4.0.0", + "System.Threading.Tasks": "4.0.10" + }, + "compile": { + "ref/dotnet/System.IO.FileSystem.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.IO.FileSystem.dll": {} + } + }, + "System.IO.FileSystem.Primitives/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.20" + }, + "compile": { + "ref/dotnet/System.IO.FileSystem.Primitives.dll": {} + }, + "runtime": { + "lib/dotnet/System.IO.FileSystem.Primitives.dll": {} + } + }, "System.Linq/4.0.0": { "type": "package", "dependencies": { @@ -79,6 +157,25 @@ "lib/dotnet/System.Linq.dll": {} } }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Linq.Expressions.dll": {} + } + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.ObjectModel.dll": {} + } + }, "System.Private.Uri/4.0.0": { "type": "package", "compile": { @@ -102,6 +199,19 @@ "lib/DNXCore50/System.Reflection.dll": {} } }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Reflection.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Reflection.Extensions.dll": {} + } + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "dependencies": { @@ -204,6 +314,28 @@ "lib/DNXCore50/System.Text.Encoding.dll": {} } }, + "System.Text.Encoding.Extensions/4.0.10": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0", + "System.Text.Encoding": "4.0.10" + }, + "compile": { + "ref/dotnet/System.Text.Encoding.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Text.Encoding.Extensions.dll": {} + } + }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Text.RegularExpressions.dll": {} + } + }, "System.Threading/4.0.10": { "type": "package", "dependencies": { @@ -217,6 +349,19 @@ "lib/DNXCore50/System.Threading.dll": {} } }, + "System.Threading.Overlapped/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0", + "System.Runtime.Handles": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Threading.Overlapped.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Threading.Overlapped.dll": {} + } + }, "System.Threading.Tasks/4.0.10": { "type": "package", "dependencies": { @@ -229,11 +374,11 @@ "lib/DNXCore50/System.Threading.Tasks.dll": {} } }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.assert": "[2.1.0-beta3-build3029]", - "xunit.core": "[2.1.0-beta3-build3029]" + "xunit.assert": "[2.1.0-rc1-build3168]", + "xunit.core": "[2.1.0-rc1-build3168]" } }, "xunit.abstractions/2.0.0": { @@ -245,49 +390,86 @@ "lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll": {} } }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", + "dependencies": { + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.ObjectModel": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.RegularExpressions": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} } }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]", - "xunit.extensibility.execution": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]", + "xunit.extensibility.execution": "[2.1.0-rc1-build3168]" } }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { "xunit.abstractions": "[2.0.0]" }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {} + "lib/dotnet/xunit.core.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll": {} + "lib/dotnet/xunit.core.dll": {}, + "lib/dotnet/xunit.runner.tdnet.dll": {}, + "lib/dotnet/xunit.runner.utility.desktop.dll": {} } }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.0", + "System.Linq": "4.0.0", + "System.Linq.Expressions": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.Encoding": "4.0.0", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]" }, "compile": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} }, "runtime": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} } }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "dependencies": { "System.Diagnostics.Debug": "4.0.10", @@ -315,6 +497,25 @@ } }, "libraries": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "sha512": "NCrgkMUcuMy3T5PY9kcBFpRyN/HrUyHsSxvdyq426iTZj2pG+6odaztW5BrQov3gPEXM5cPx4+64djl4sC8/nw==", + "files": [ + "lib/dotnet/xunit.performance.core.dll", + "lib/dotnet/xunit.performance.core.pdb", + "lib/dotnet/xunit.performance.core.XML", + "lib/dotnet/xunit.performance.execution.dotnet.dll", + "lib/dotnet/xunit.performance.execution.dotnet.pdb", + "lib/net46/xunit.performance.core.dll", + "lib/net46/xunit.performance.core.pdb", + "lib/net46/xunit.performance.core.XML", + "lib/net46/xunit.performance.execution.desktop.dll", + "lib/net46/xunit.performance.execution.desktop.pdb", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg.sha512", + "Microsoft.DotNet.xunit.performance.nuspec" + ] + }, "System.Collections/4.0.10": { "type": "package", "serviceable": true, @@ -349,10 +550,10 @@ "System.Collections.nuspec" ] }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "aCYId/+628/CuOEBKx7sGxQ9fpqvLDqkOMuc0rqWRUCAIgNLtLd5htaQo58aXjzrP8D4/X35xVC+PQoHHis4Mg==", + "sha512": "pYDflUHKD2oIllR+HsbgfkbwNsjivEgYsFjM3eZWS6KVqa5vYVMl93OvC+WfB0Va3Q9gAZYzxXQJUv6gWoJGLw==", "files": [ "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", @@ -366,8 +567,8 @@ "ref/xamarinios10/_._", "ref/xamarinmac20/_._", "runtime.json", - "System.Console.4.0.0-beta-23311.nupkg", - "System.Console.4.0.0-beta-23311.nupkg.sha512", + "System.Console.4.0.0-beta-23316.nupkg", + "System.Console.4.0.0-beta-23316.nupkg.sha512", "System.Console.nuspec" ] }, @@ -405,6 +606,40 @@ "System.Diagnostics.Debug.nuspec" ] }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "serviceable": true, + "sha512": "gn/wexGHc35Fv++5L1gYHMY5g25COfiZ0PGrL+3PfwzoJd4X2LbTAm/U8d385SI6BKQBI/z4dQfvneS9J27+Tw==", + "files": [ + "lib/DNXCore50/System.Diagnostics.Tracing.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Diagnostics.Tracing.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Diagnostics.Tracing.xml", + "ref/dotnet/es/System.Diagnostics.Tracing.xml", + "ref/dotnet/fr/System.Diagnostics.Tracing.xml", + "ref/dotnet/it/System.Diagnostics.Tracing.xml", + "ref/dotnet/ja/System.Diagnostics.Tracing.xml", + "ref/dotnet/ko/System.Diagnostics.Tracing.xml", + "ref/dotnet/ru/System.Diagnostics.Tracing.xml", + "ref/dotnet/System.Diagnostics.Tracing.dll", + "ref/dotnet/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hans/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hant/System.Diagnostics.Tracing.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Diagnostics.Tracing.dll", + "System.Diagnostics.Tracing.4.0.20.nupkg", + "System.Diagnostics.Tracing.4.0.20.nupkg.sha512", + "System.Diagnostics.Tracing.nuspec" + ] + }, "System.Globalization/4.0.10": { "type": "package", "sha512": "kzRtbbCNAxdafFBDogcM36ehA3th8c1PGiz8QRkZn8O5yMBorDHSK8/TGJPYOaCS5zdsGk0u9qXHnW91nqy7fw==", @@ -472,6 +707,71 @@ "System.IO.nuspec" ] }, + "System.IO.FileSystem/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "eo05SPWfG+54UA0wxgRIYOuOslq+2QrJLXZaJDDsfLXG15OLguaItW39NYZTqUb4DeGOkU4R0wpOLOW4ynMUDQ==", + "files": [ + "lib/DNXCore50/System.IO.FileSystem.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.dll", + "lib/netcore50/System.IO.FileSystem.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.IO.FileSystem.xml", + "ref/dotnet/es/System.IO.FileSystem.xml", + "ref/dotnet/fr/System.IO.FileSystem.xml", + "ref/dotnet/it/System.IO.FileSystem.xml", + "ref/dotnet/ja/System.IO.FileSystem.xml", + "ref/dotnet/ko/System.IO.FileSystem.xml", + "ref/dotnet/ru/System.IO.FileSystem.xml", + "ref/dotnet/System.IO.FileSystem.dll", + "ref/dotnet/System.IO.FileSystem.xml", + "ref/dotnet/zh-hans/System.IO.FileSystem.xml", + "ref/dotnet/zh-hant/System.IO.FileSystem.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.IO.FileSystem.4.0.0.nupkg", + "System.IO.FileSystem.4.0.0.nupkg.sha512", + "System.IO.FileSystem.nuspec" + ] + }, + "System.IO.FileSystem.Primitives/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "7pJUvYi/Yq3A5nagqCCiOw3+aJp3xXc/Cjr8dnJDnER3/6kX3LEencfqmXUcPl9+7OvRNyPMNhqsLAcMK6K/KA==", + "files": [ + "lib/dotnet/System.IO.FileSystem.Primitives.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/es/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/fr/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/it/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ja/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ko/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ru/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/System.IO.FileSystem.Primitives.dll", + "ref/dotnet/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/zh-hans/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/zh-hant/System.IO.FileSystem.Primitives.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.Primitives.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.IO.FileSystem.Primitives.4.0.0.nupkg", + "System.IO.FileSystem.Primitives.4.0.0.nupkg.sha512", + "System.IO.FileSystem.Primitives.nuspec" + ] + }, "System.Linq/4.0.0": { "type": "package", "serviceable": true, @@ -505,6 +805,102 @@ "System.Linq.nuspec" ] }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "sha512": "wlfVllrKi+evu4Hi8yoJP1dSOVXbvsy7Hs1+oz4Cykfdf6MQTPlD3LI4WKWhprn8FpU5MS3spPSbcMX5sAoJSw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Linq.Expressions.xml", + "ref/dotnet/es/System.Linq.Expressions.xml", + "ref/dotnet/fr/System.Linq.Expressions.xml", + "ref/dotnet/it/System.Linq.Expressions.xml", + "ref/dotnet/ja/System.Linq.Expressions.xml", + "ref/dotnet/ko/System.Linq.Expressions.xml", + "ref/dotnet/ru/System.Linq.Expressions.xml", + "ref/dotnet/System.Linq.Expressions.dll", + "ref/dotnet/System.Linq.Expressions.xml", + "ref/dotnet/zh-hans/System.Linq.Expressions.xml", + "ref/dotnet/zh-hant/System.Linq.Expressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Linq.Expressions.xml", + "ref/netcore50/es/System.Linq.Expressions.xml", + "ref/netcore50/fr/System.Linq.Expressions.xml", + "ref/netcore50/it/System.Linq.Expressions.xml", + "ref/netcore50/ja/System.Linq.Expressions.xml", + "ref/netcore50/ko/System.Linq.Expressions.xml", + "ref/netcore50/ru/System.Linq.Expressions.xml", + "ref/netcore50/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.xml", + "ref/netcore50/zh-hans/System.Linq.Expressions.xml", + "ref/netcore50/zh-hant/System.Linq.Expressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Linq.Expressions.4.0.0.nupkg", + "System.Linq.Expressions.4.0.0.nupkg.sha512", + "System.Linq.Expressions.nuspec" + ] + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "sha512": "+3j/n+5SlF7PKb0/s5kdord+5RyW3uUscB+0WPuYvfAvEgyx6yPdPXU9tXdDZImRohMuWnQTAG2rFojFPfoGbA==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.ObjectModel.xml", + "ref/dotnet/es/System.ObjectModel.xml", + "ref/dotnet/fr/System.ObjectModel.xml", + "ref/dotnet/it/System.ObjectModel.xml", + "ref/dotnet/ja/System.ObjectModel.xml", + "ref/dotnet/ko/System.ObjectModel.xml", + "ref/dotnet/ru/System.ObjectModel.xml", + "ref/dotnet/System.ObjectModel.dll", + "ref/dotnet/System.ObjectModel.xml", + "ref/dotnet/zh-hans/System.ObjectModel.xml", + "ref/dotnet/zh-hant/System.ObjectModel.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.ObjectModel.xml", + "ref/netcore50/es/System.ObjectModel.xml", + "ref/netcore50/fr/System.ObjectModel.xml", + "ref/netcore50/it/System.ObjectModel.xml", + "ref/netcore50/ja/System.ObjectModel.xml", + "ref/netcore50/ko/System.ObjectModel.xml", + "ref/netcore50/ru/System.ObjectModel.xml", + "ref/netcore50/System.ObjectModel.dll", + "ref/netcore50/System.ObjectModel.xml", + "ref/netcore50/zh-hans/System.ObjectModel.xml", + "ref/netcore50/zh-hant/System.ObjectModel.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.ObjectModel.4.0.0.nupkg", + "System.ObjectModel.4.0.0.nupkg.sha512", + "System.ObjectModel.nuspec" + ] + }, "System.Private.Uri/4.0.0": { "type": "package", "serviceable": true, @@ -553,6 +949,40 @@ "System.Reflection.nuspec" ] }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "dbYaZWCyFAu1TGYUqR2n+Q+1casSHPR2vVW0WVNkXpZbrd2BXcZ7cpvpu9C98CTHtNmyfMWCLpCclDqly23t6A==", + "files": [ + "lib/DNXCore50/System.Reflection.Extensions.dll", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Extensions.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "ref/dotnet/de/System.Reflection.Extensions.xml", + "ref/dotnet/es/System.Reflection.Extensions.xml", + "ref/dotnet/fr/System.Reflection.Extensions.xml", + "ref/dotnet/it/System.Reflection.Extensions.xml", + "ref/dotnet/ja/System.Reflection.Extensions.xml", + "ref/dotnet/ko/System.Reflection.Extensions.xml", + "ref/dotnet/ru/System.Reflection.Extensions.xml", + "ref/dotnet/System.Reflection.Extensions.dll", + "ref/dotnet/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hans/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hant/System.Reflection.Extensions.xml", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Extensions.dll", + "ref/netcore50/System.Reflection.Extensions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "runtimes/win8-aot/lib/netcore50/System.Reflection.Extensions.dll", + "System.Reflection.Extensions.4.0.0.nupkg", + "System.Reflection.Extensions.4.0.0.nupkg.sha512", + "System.Reflection.Extensions.nuspec" + ] + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "serviceable": true, @@ -810,6 +1240,87 @@ "System.Text.Encoding.nuspec" ] }, + "System.Text.Encoding.Extensions/4.0.10": { + "type": "package", + "sha512": "TZvlwXMxKo3bSRIcsWZLCIzIhLbvlz+mGeKYRZv/zUiSoQzGOwkYeBu6hOw2XPQgKqT0F4Rv8zqKdvmp2fWKYg==", + "files": [ + "lib/DNXCore50/System.Text.Encoding.Extensions.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Text.Encoding.Extensions.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Text.Encoding.Extensions.xml", + "ref/dotnet/es/System.Text.Encoding.Extensions.xml", + "ref/dotnet/fr/System.Text.Encoding.Extensions.xml", + "ref/dotnet/it/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ja/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ko/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ru/System.Text.Encoding.Extensions.xml", + "ref/dotnet/System.Text.Encoding.Extensions.dll", + "ref/dotnet/System.Text.Encoding.Extensions.xml", + "ref/dotnet/zh-hans/System.Text.Encoding.Extensions.xml", + "ref/dotnet/zh-hant/System.Text.Encoding.Extensions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Text.Encoding.Extensions.dll", + "System.Text.Encoding.Extensions.4.0.10.nupkg", + "System.Text.Encoding.Extensions.4.0.10.nupkg.sha512", + "System.Text.Encoding.Extensions.nuspec" + ] + }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "sha512": "D2CHm8LBIymJK9+1E3sn4cUEzMd6B+quQUrCGUluv9QFBNOdL3XqNu548QKeNplEXFOmF5aKXMxXbTrjbEUNMw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Text.RegularExpressions.xml", + "ref/dotnet/es/System.Text.RegularExpressions.xml", + "ref/dotnet/fr/System.Text.RegularExpressions.xml", + "ref/dotnet/it/System.Text.RegularExpressions.xml", + "ref/dotnet/ja/System.Text.RegularExpressions.xml", + "ref/dotnet/ko/System.Text.RegularExpressions.xml", + "ref/dotnet/ru/System.Text.RegularExpressions.xml", + "ref/dotnet/System.Text.RegularExpressions.dll", + "ref/dotnet/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hans/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hant/System.Text.RegularExpressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Text.RegularExpressions.xml", + "ref/netcore50/es/System.Text.RegularExpressions.xml", + "ref/netcore50/fr/System.Text.RegularExpressions.xml", + "ref/netcore50/it/System.Text.RegularExpressions.xml", + "ref/netcore50/ja/System.Text.RegularExpressions.xml", + "ref/netcore50/ko/System.Text.RegularExpressions.xml", + "ref/netcore50/ru/System.Text.RegularExpressions.xml", + "ref/netcore50/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Text.RegularExpressions.4.0.0.nupkg", + "System.Text.RegularExpressions.4.0.0.nupkg.sha512", + "System.Text.RegularExpressions.nuspec" + ] + }, "System.Threading/4.0.10": { "type": "package", "serviceable": true, @@ -844,6 +1355,31 @@ "System.Threading.nuspec" ] }, + "System.Threading.Overlapped/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "X5LuQFhM5FTqaez3eXKJ9CbfSGZ7wj6j4hSVtxct3zmwQXLqG95qoWdvILcgN7xtrDOBIFtpiyDg0vmoI0jE2A==", + "files": [ + "lib/DNXCore50/System.Threading.Overlapped.dll", + "lib/net46/System.Threading.Overlapped.dll", + "lib/netcore50/System.Threading.Overlapped.dll", + "ref/dotnet/de/System.Threading.Overlapped.xml", + "ref/dotnet/es/System.Threading.Overlapped.xml", + "ref/dotnet/fr/System.Threading.Overlapped.xml", + "ref/dotnet/it/System.Threading.Overlapped.xml", + "ref/dotnet/ja/System.Threading.Overlapped.xml", + "ref/dotnet/ko/System.Threading.Overlapped.xml", + "ref/dotnet/ru/System.Threading.Overlapped.xml", + "ref/dotnet/System.Threading.Overlapped.dll", + "ref/dotnet/System.Threading.Overlapped.xml", + "ref/dotnet/zh-hans/System.Threading.Overlapped.xml", + "ref/dotnet/zh-hant/System.Threading.Overlapped.xml", + "ref/net46/System.Threading.Overlapped.dll", + "System.Threading.Overlapped.4.0.0.nupkg", + "System.Threading.Overlapped.4.0.0.nupkg.sha512", + "System.Threading.Overlapped.nuspec" + ] + }, "System.Threading.Tasks/4.0.10": { "type": "package", "serviceable": true, @@ -878,12 +1414,12 @@ "System.Threading.Tasks.nuspec" ] }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", - "sha512": "NMFXV0ePe/GrfhMSPGAlWmiUZCzjaatpdAGcavf2B6vYTRyMTpyJT01LI6jemMV/VSDXLrtHp0Ov9xZyR1cLLg==", + "sha512": "dVnDKBCIpLE5GaxLALnbnobqtDyTTDKJSRbqhLGrx0Ptc/n3VQRUby/CDx6v+y7xNVPqtqj0XMeDO1DVT8E3tA==", "files": [ - "xunit.2.1.0-beta3-build3029.nupkg", - "xunit.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.2.1.0-rc1-build3168.nupkg", + "xunit.2.1.0-rc1-build3168.nupkg.sha512", "xunit.nuspec" ] }, @@ -900,105 +1436,116 @@ "xunit.abstractions.nuspec" ] }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", - "sha512": "AMS7Fv77DayXVRCBMmVEDwOXPcbxk8dCBA/iACsve+6+UQqopMtNyAynyIcXPFRK/peeitUKID4ChOXWisJmUw==", + "sha512": "lsTK4OaNGt5IOoKO3ZQ0gSFngjWSHZ5xNurNtLd0MxZv5onv66xlNmWBYCVNt4sZLknQ+RfiqYm1EZ9ZrA0SDw==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.xml", - "xunit.assert.2.1.0-beta3-build3029.nupkg", - "xunit.assert.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.assert.dll", + "lib/dotnet/xunit.assert.pdb", + "lib/dotnet/xunit.assert.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.xml", + "xunit.assert.2.1.0-rc1-build3168.nupkg", + "xunit.assert.2.1.0-rc1-build3168.nupkg.sha512", "xunit.assert.nuspec" ] }, - "xunit.core/2.1.0-beta3-build3029": { - "type": "package", - "sha512": "uDUBbwZSRx226BMwj6VylzXQPVpEIelNIulT+LxbSEH52y2a4btR9d5ptQmkSVjmJXP5/hGCc4cu1DSCu0pgUA==", - "files": [ - "build/_Desktop/xunit.execution.desktop.dll", - "build/monoandroid/xunit.core.props", - "build/monoandroid/xunit.execution.MonoAndroid.dll", - "build/monotouch/xunit.core.props", - "build/monotouch/xunit.execution.MonoTouch.dll", - "build/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.targets", - "build/portable-win81+wpa81/xunit.execution.universal.dll", - "build/portable-win81+wpa81/xunit.execution.universal.pri", - "build/wp8/xunit.core.props", - "build/wp8/xunit.core.targets", - "build/wp8/xunit.execution.wp8.dll", - "build/Xamarin.iOS/xunit.core.props", - "build/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "xunit.core.2.1.0-beta3-build3029.nupkg", - "xunit.core.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.core/2.1.0-rc1-build3168": { + "type": "package", + "sha512": "IcQo+pNEDYBC9HJfzY08k0NhLZMX8WXudrlhcrIAzkT2szhrLbGhUi1k6vU5n9crsVv+IxosvIH28kYf6/Z32w==", + "files": [ + "build/_desktop/xunit.execution.desktop.dll", + "build/dnx451/_._", + "build/monoandroid/_._", + "build/monotouch/_._", + "build/net45/_._", + "build/portable-net45+win8+wp8+wpa81/xunit.core.props", + "build/win8/_._", + "build/win81/xunit.core.props", + "build/wp8/_._", + "build/wpa81/xunit.core.props", + "build/xamarinios/_._", + "xunit.core.2.1.0-rc1-build3168.nupkg", + "xunit.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.core.nuspec" ] }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "lsPro5U3NLasHI/RwqjKzXiRlh9N0IOlR3cluwXYVtihXbGtySeSnU/Fh5MTcWYxh+MVpoNop5zDD0/A2nrHsA==", + "sha512": "8KZaq1mdeaiZxo1ScsGzhkeQRwLLS6+WIno+9gtnYccWmTjCJ/XSYz2fAAlB5mUeyw0vqqrFc+TfNZELs5QiZQ==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll.tdnet", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.xml", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.core.dll", + "lib/dotnet/xunit.core.dll.tdnet", + "lib/dotnet/xunit.core.pdb", + "lib/dotnet/xunit.core.xml", + "lib/dotnet/xunit.runner.tdnet.dll", + "lib/dotnet/xunit.runner.utility.desktop.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll.tdnet", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.tdnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.utility.desktop.dll", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.core.nuspec" ] }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { - "type": "package", - "sha512": "WuUYamK4RHrHxihvNuX7NkryMhQrpH1+ziJ/mPIQbm18zevSgre8BwUuVZvmLZa8uVob3xS4dvAah2+HCgLiXg==", - "files": [ - "lib/dnx451/xunit.execution.dnx.dll", - "lib/dnx451/xunit.execution.dnx.pdb", - "lib/dnx451/xunit.execution.dnx.xml", - "lib/dnxcore50/xunit.execution.dnx.dll", - "lib/dnxcore50/xunit.execution.dnx.pdb", - "lib/dnxcore50/xunit.execution.dnx.xml", - "lib/monoandroid/xunit.execution.MonoAndroid.dll", - "lib/monoandroid/xunit.execution.MonoAndroid.pdb", - "lib/monoandroid/xunit.execution.MonoAndroid.xml", - "lib/monotouch/xunit.execution.MonoTouch.dll", - "lib/monotouch/xunit.execution.MonoTouch.pdb", - "lib/monotouch/xunit.execution.MonoTouch.xml", - "lib/net45/xunit.execution.desktop.dll", - "lib/net45/xunit.execution.desktop.pdb", - "lib/net45/xunit.execution.desktop.xml", - "lib/portable-wpa81+win81/xunit.execution.universal.dll", - "lib/portable-wpa81+win81/xunit.execution.universal.pdb", - "lib/portable-wpa81+win81/xunit.execution.universal.pri", - "lib/portable-wpa81+win81/xunit.execution.universal.xml", - "lib/wp8/xunit.execution.wp8.dll", - "lib/wp8/xunit.execution.wp8.pdb", - "lib/wp8/xunit.execution.wp8.xml", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.pdb", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.xml", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.extensibility.execution/2.1.0-rc1-build3168": { + "type": "package", + "sha512": "1w0u3eB7i25hca60r/53oSVb0blMOEm2eVqvwTg9jhMSe/A9raj6UZAVzUnFtA3xLssP4K1udOGTC1qrZ9/VoA==", + "files": [ + "lib/dnx451/xunit.execution.dotnet.dll", + "lib/dnx451/xunit.execution.dotnet.pdb", + "lib/dnx451/xunit.execution.dotnet.xml", + "lib/dotnet/xunit.execution.dotnet.dll", + "lib/dotnet/xunit.execution.dotnet.pdb", + "lib/dotnet/xunit.execution.dotnet.xml", + "lib/monoandroid/xunit.execution.dotnet.dll", + "lib/monoandroid/xunit.execution.dotnet.pdb", + "lib/monoandroid/xunit.execution.dotnet.xml", + "lib/monotouch/xunit.execution.dotnet.dll", + "lib/monotouch/xunit.execution.dotnet.pdb", + "lib/monotouch/xunit.execution.dotnet.xml", + "lib/net35/xunit.execution.desktop.dll", + "lib/net35/xunit.execution.desktop.pdb", + "lib/net35/xunit.execution.desktop.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.xml", + "lib/win8/xunit.execution.dotnet.dll", + "lib/win8/xunit.execution.dotnet.pdb", + "lib/win8/xunit.execution.dotnet.xml", + "lib/wp8/xunit.execution.dotnet.dll", + "lib/wp8/xunit.execution.dotnet.pdb", + "lib/wp8/xunit.execution.dotnet.xml", + "lib/wpa81/xunit.execution.dotnet.dll", + "lib/wpa81/xunit.execution.dotnet.pdb", + "lib/wpa81/xunit.execution.dotnet.xml", + "lib/xamarinios/xunit.execution.dotnet.dll", + "lib/xamarinios/xunit.execution.dotnet.pdb", + "lib/xamarinios/xunit.execution.dotnet.xml", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.execution.nuspec" ] }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "serviceable": true, - "sha512": "P3Q9YspdSUzoJQS6iT5mF3jt+s0u9u/G3K6s0Ns7NbAwQPktjwuO7CgJk38fop4yYDVdsVEwbZF2jfNMhJ7hkQ==", + "sha512": "9t2jrzI6N5ueydH5omBi95hiBOuNXpI6sS2kQJO56+bUavVpSD6/aD0C4+Nqbiql8Zvu0yx2GO+2IAd0JQcjIA==", "files": [ "lib/dotnet/Xunit.NetCore.Extensions.dll", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg.sha512", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg.sha512", "xunit.netcore.extensions.nuspec" ] } }, "projectFileDependencyGroups": { "": [ + "Microsoft.DotNet.xunit.performance >= 1.0.0-*", "System.Collections >= 4.0.10", "System.Console >= 4.0.0-beta-*", "System.Globalization >= 4.0.10", @@ -1008,7 +1555,7 @@ "System.Runtime.Extensions >= 4.0.10", "System.Threading >= 4.0.10", "System.Threading.Tasks >= 4.0.10", - "xunit >= 2.1.0-beta3-*", + "xunit >= 2.1.0-rc1-*", "xunit.netcore.extensions >= 1.0.0-prerelease-*" ], "DNXCore,Version=v5.0": [] diff --git a/src/System.Diagnostics.Process/tests/Performance/Perf.Process.cs b/src/System.Diagnostics.Process/tests/Performance/Perf.Process.cs new file mode 100644 index 0000000000..c084f720e6 --- /dev/null +++ b/src/System.Diagnostics.Process/tests/Performance/Perf.Process.cs @@ -0,0 +1,124 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Xunit; +using Microsoft.Xunit.Performance; +using System.IO; + +namespace System.Diagnostics.ProcessTests +{ + public class Perf_Process : ProcessTestBase + { + [Benchmark] + public void Kill() + { + foreach (var iteration in Benchmark.Iterations) + { + using (Process proc = CreateProcessInfinite()) + { + proc.Start(); + using (iteration.StartMeasurement()) + proc.Kill(); + } + } + } + + [Benchmark] + public void GetProcessesByName() + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + Process.GetProcessesByName("1"); + } + + [Benchmark] + public void GetId() + { + int id; + foreach (var iteration in Benchmark.Iterations) + { + using (Process proc = CreateProcess()) + { + proc.Start(); + using (iteration.StartMeasurement()) + id = proc.Id; + proc.Kill(); + } + } + } + + [Benchmark] + public void Start() + { + foreach (var iteration in Benchmark.Iterations) + using (Process proc = CreateProcess()) + { + using (iteration.StartMeasurement()) + { + proc.Start(); + } + proc.Kill(); + } + } + + [Benchmark] + public void GetHasExited() + { + bool result; + foreach (var iteration in Benchmark.Iterations) + { + using (Process proc = CreateProcess()) + { + proc.Start(); + using (iteration.StartMeasurement()) + result = proc.HasExited; + proc.Kill(); + } + } + } + + [Benchmark] + public void GetExitCode() + { + int result; + foreach (var iteration in Benchmark.Iterations) + { + using (Process proc = CreateProcess()) + { + proc.Start(); + proc.WaitForExit(); + using (iteration.StartMeasurement()) + result = proc.ExitCode; + } + } + } + + [Benchmark] + public void GetStartInfo() + { + ProcessStartInfo result; + foreach (var iteration in Benchmark.Iterations) + using (Process proc = CreateProcess()) + using (iteration.StartMeasurement()) + result = proc.StartInfo; + } + + [Benchmark] + public void GetStandardOutput() + { + StreamReader result; + foreach (var iteration in Benchmark.Iterations) + { + using (Process proc = CreateProcess()) + { + proc.StartInfo.RedirectStandardOutput = true; + proc.Start(); + + using (iteration.StartMeasurement()) + result = proc.StandardOutput; + proc.Kill(); + } + } + } + } +} diff --git a/src/System.Diagnostics.Process/tests/System.Diagnostics.Process.Tests.csproj b/src/System.Diagnostics.Process/tests/System.Diagnostics.Process.Tests.csproj index 8464875b17..eb9e0883f8 100644 --- a/src/System.Diagnostics.Process/tests/System.Diagnostics.Process.Tests.csproj +++ b/src/System.Diagnostics.Process/tests/System.Diagnostics.Process.Tests.csproj @@ -11,6 +11,11 @@ <NuGetPackageImportStamp>b62eec4b</NuGetPackageImportStamp> <AllowUnsafeBlocks>true</AllowUnsafeBlocks> </PropertyGroup> + <!-- Performance tests require v5.0 portable tools --> + <PropertyGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <TargetFrameworkVersion>v5.0</TargetFrameworkVersion> + <TargetFrameworkProfile /> + </PropertyGroup> <!-- Default configurations to help VS understand the configurations --> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' " /> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' " /> @@ -36,6 +41,13 @@ <Compile Include="ProcessWaitingTests.cs" /> <Compile Include="XunitAssemblyAttributes.cs" /> </ItemGroup> + <!-- Performance Tests --> + <ItemGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <Compile Include="Performance\Perf.Process.cs" /> + <Compile Include="$(CommonTestPath)\Performance\PerfUtils.cs"> + <Link>Common\Performance\PerfUtils.cs</Link> + </Compile> + </ItemGroup> <ItemGroup> <None Include="project.json" /> </ItemGroup> diff --git a/src/System.Diagnostics.Process/tests/project.json b/src/System.Diagnostics.Process/tests/project.json index 881853ed99..d17832fa36 100644 --- a/src/System.Diagnostics.Process/tests/project.json +++ b/src/System.Diagnostics.Process/tests/project.json @@ -1,5 +1,6 @@ { "dependencies": { + "Microsoft.DotNet.xunit.performance": "1.0.0-*", "Microsoft.Win32.Primitives": "4.0.0", "Microsoft.Win32.Registry": "4.0.0-beta-*", "System.Collections": "4.0.10", @@ -22,7 +23,7 @@ "System.Threading.Tasks": "4.0.10", "System.Threading.Thread": "4.0.0-beta-*", "System.Threading.ThreadPool": "4.0.10-beta-*", - "xunit": "2.1.0-beta3-*", + "xunit": "2.1.0-rc1-*", "xunit.netcore.extensions": "1.0.0-prerelease-*" }, "frameworks": { diff --git a/src/System.Diagnostics.Process/tests/project.lock.json b/src/System.Diagnostics.Process/tests/project.lock.json index 1098bcf5a3..99fcb9ab90 100644 --- a/src/System.Diagnostics.Process/tests/project.lock.json +++ b/src/System.Diagnostics.Process/tests/project.lock.json @@ -3,6 +3,36 @@ "version": 1, "targets": { "DNXCore,Version=v5.0": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.Diagnostics.Debug": "4.0.10", + "System.Diagnostics.Tracing": "4.0.20", + "System.Globalization": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem": "4.0.0", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.10", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Text.Encoding": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Tasks": "4.0.10", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "2.1.0-rc1-build3168", + "xunit.extensibility.execution": "2.1.0-rc1-build3168" + }, + "compile": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + }, + "runtime": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + } + }, "Microsoft.Win32.Primitives/4.0.0": { "type": "package", "dependencies": { @@ -16,7 +46,7 @@ "lib/dotnet/Microsoft.Win32.Primitives.dll": {} } }, - "Microsoft.Win32.Registry/4.0.0-beta-23311": { + "Microsoft.Win32.Registry/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.Collections": "4.0.10", @@ -46,7 +76,7 @@ "lib/DNXCore50/System.Collections.dll": {} } }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.IO": "4.0.0", @@ -68,6 +98,18 @@ "lib/DNXCore50/System.Diagnostics.Debug.dll": {} } }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Diagnostics.Tracing.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Diagnostics.Tracing.dll": {} + } + }, "System.Globalization/4.0.10": { "type": "package", "dependencies": { @@ -130,7 +172,7 @@ "lib/dotnet/System.IO.FileSystem.Primitives.dll": {} } }, - "System.IO.Pipes/4.0.0-beta-23311": { + "System.IO.Pipes/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.IO": "4.0.10", @@ -168,6 +210,25 @@ "lib/dotnet/System.Linq.dll": {} } }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Linq.Expressions.dll": {} + } + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.ObjectModel.dll": {} + } + }, "System.Private.Uri/4.0.0": { "type": "package", "compile": { @@ -281,7 +342,7 @@ "lib/DNXCore50/System.Runtime.InteropServices.dll": {} } }, - "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23311": { + "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.Resources.ResourceManager": "4.0.0", @@ -325,7 +386,7 @@ "lib/dotnet/System.Security.Principal.dll": {} } }, - "System.Security.Principal.Windows/4.0.0-beta-23311": { + "System.Security.Principal.Windows/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.Collections": "4.0.0", @@ -395,6 +456,15 @@ "lib/DNXCore50/System.Text.Encoding.Extensions.dll": {} } }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Text.RegularExpressions.dll": {} + } + }, "System.Threading/4.0.10": { "type": "package", "dependencies": { @@ -433,7 +503,7 @@ "lib/DNXCore50/System.Threading.Tasks.dll": {} } }, - "System.Threading.Thread/4.0.0-beta-23311": { + "System.Threading.Thread/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.Runtime": "4.0.0" @@ -445,7 +515,7 @@ "lib/DNXCore50/System.Threading.Thread.dll": {} } }, - "System.Threading.ThreadPool/4.0.10-beta-23311": { + "System.Threading.ThreadPool/4.0.10-beta-23316": { "type": "package", "dependencies": { "System.Runtime": "4.0.0", @@ -458,11 +528,11 @@ "lib/DNXCore50/System.Threading.ThreadPool.dll": {} } }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.assert": "[2.1.0-beta3-build3029]", - "xunit.core": "[2.1.0-beta3-build3029]" + "xunit.assert": "[2.1.0-rc1-build3168]", + "xunit.core": "[2.1.0-rc1-build3168]" } }, "xunit.abstractions/2.0.0": { @@ -474,49 +544,86 @@ "lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll": {} } }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", + "dependencies": { + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.ObjectModel": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.RegularExpressions": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} } }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]", - "xunit.extensibility.execution": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]", + "xunit.extensibility.execution": "[2.1.0-rc1-build3168]" } }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { "xunit.abstractions": "[2.0.0]" }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {} + "lib/dotnet/xunit.core.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll": {} + "lib/dotnet/xunit.core.dll": {}, + "lib/dotnet/xunit.runner.tdnet.dll": {}, + "lib/dotnet/xunit.runner.utility.desktop.dll": {} } }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.0", + "System.Linq": "4.0.0", + "System.Linq.Expressions": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.Encoding": "4.0.0", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]" }, "compile": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} }, "runtime": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} } }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "dependencies": { "System.Diagnostics.Debug": "4.0.10", @@ -544,6 +651,25 @@ } }, "libraries": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "sha512": "NCrgkMUcuMy3T5PY9kcBFpRyN/HrUyHsSxvdyq426iTZj2pG+6odaztW5BrQov3gPEXM5cPx4+64djl4sC8/nw==", + "files": [ + "lib/dotnet/xunit.performance.core.dll", + "lib/dotnet/xunit.performance.core.pdb", + "lib/dotnet/xunit.performance.core.XML", + "lib/dotnet/xunit.performance.execution.dotnet.dll", + "lib/dotnet/xunit.performance.execution.dotnet.pdb", + "lib/net46/xunit.performance.core.dll", + "lib/net46/xunit.performance.core.pdb", + "lib/net46/xunit.performance.core.XML", + "lib/net46/xunit.performance.execution.desktop.dll", + "lib/net46/xunit.performance.execution.desktop.pdb", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg.sha512", + "Microsoft.DotNet.xunit.performance.nuspec" + ] + }, "Microsoft.Win32.Primitives/4.0.0": { "type": "package", "serviceable": true, @@ -576,10 +702,10 @@ "ref/xamarinmac20/_._" ] }, - "Microsoft.Win32.Registry/4.0.0-beta-23311": { + "Microsoft.Win32.Registry/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "W3zUZ8Fb00S5qqWie6K9PAJ9jRsYxz2xSQPL2Kvn1/7gBuqRpsZjBZV8AWGD7e6IPn9t+W6StmoXyK5BqczmXw==", + "sha512": "NyoyqT2KwffCiebVmdtJpcTtpi8lIRWvLesnMJI4J8yyi3PX2ZWaVx9KhxqLGoPolnnLjlT6QVSgGSmAWtZefg==", "files": [ "de/Microsoft.Win32.Registry.xml", "es/Microsoft.Win32.Registry.xml", @@ -589,8 +715,8 @@ "ko/Microsoft.Win32.Registry.xml", "lib/DNXCore50/Microsoft.Win32.Registry.dll", "lib/net46/Microsoft.Win32.Registry.dll", - "Microsoft.Win32.Registry.4.0.0-beta-23311.nupkg", - "Microsoft.Win32.Registry.4.0.0-beta-23311.nupkg.sha512", + "Microsoft.Win32.Registry.4.0.0-beta-23316.nupkg", + "Microsoft.Win32.Registry.4.0.0-beta-23316.nupkg.sha512", "Microsoft.Win32.Registry.nuspec", "Microsoft.Win32.Registry.xml", "ref/dotnet/Microsoft.Win32.Registry.dll", @@ -634,10 +760,10 @@ "System.Collections.nuspec" ] }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "aCYId/+628/CuOEBKx7sGxQ9fpqvLDqkOMuc0rqWRUCAIgNLtLd5htaQo58aXjzrP8D4/X35xVC+PQoHHis4Mg==", + "sha512": "pYDflUHKD2oIllR+HsbgfkbwNsjivEgYsFjM3eZWS6KVqa5vYVMl93OvC+WfB0Va3Q9gAZYzxXQJUv6gWoJGLw==", "files": [ "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", @@ -651,8 +777,8 @@ "ref/xamarinios10/_._", "ref/xamarinmac20/_._", "runtime.json", - "System.Console.4.0.0-beta-23311.nupkg", - "System.Console.4.0.0-beta-23311.nupkg.sha512", + "System.Console.4.0.0-beta-23316.nupkg", + "System.Console.4.0.0-beta-23316.nupkg.sha512", "System.Console.nuspec" ] }, @@ -690,6 +816,40 @@ "System.Diagnostics.Debug.nuspec" ] }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "serviceable": true, + "sha512": "gn/wexGHc35Fv++5L1gYHMY5g25COfiZ0PGrL+3PfwzoJd4X2LbTAm/U8d385SI6BKQBI/z4dQfvneS9J27+Tw==", + "files": [ + "lib/DNXCore50/System.Diagnostics.Tracing.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Diagnostics.Tracing.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Diagnostics.Tracing.xml", + "ref/dotnet/es/System.Diagnostics.Tracing.xml", + "ref/dotnet/fr/System.Diagnostics.Tracing.xml", + "ref/dotnet/it/System.Diagnostics.Tracing.xml", + "ref/dotnet/ja/System.Diagnostics.Tracing.xml", + "ref/dotnet/ko/System.Diagnostics.Tracing.xml", + "ref/dotnet/ru/System.Diagnostics.Tracing.xml", + "ref/dotnet/System.Diagnostics.Tracing.dll", + "ref/dotnet/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hans/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hant/System.Diagnostics.Tracing.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Diagnostics.Tracing.dll", + "System.Diagnostics.Tracing.4.0.20.nupkg", + "System.Diagnostics.Tracing.4.0.20.nupkg.sha512", + "System.Diagnostics.Tracing.nuspec" + ] + }, "System.Globalization/4.0.10": { "type": "package", "sha512": "kzRtbbCNAxdafFBDogcM36ehA3th8c1PGiz8QRkZn8O5yMBorDHSK8/TGJPYOaCS5zdsGk0u9qXHnW91nqy7fw==", @@ -822,10 +982,10 @@ "System.IO.FileSystem.Primitives.nuspec" ] }, - "System.IO.Pipes/4.0.0-beta-23311": { + "System.IO.Pipes/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "5d6NEneBaLGfVsxqs4ijhKsH97pZGKQJtGqfLQXJ6pLo4YskfSZTv8fcmhp75phYecHPswWn1Z1O5c1jQHAOKA==", + "sha512": "g/1JXT4o/UOrcmTBNHbGXnRci2L0TBMLGrtw9m0o0GACABVJFKJWWGXlAFB8pHUNJVOOGaowwqkHpHie8SbMkA==", "files": [ "de/System.IO.Pipes.xml", "es/System.IO.Pipes.xml", @@ -838,8 +998,8 @@ "ref/dotnet/System.IO.Pipes.dll", "ref/net46/System.IO.Pipes.dll", "ru/System.IO.Pipes.xml", - "System.IO.Pipes.4.0.0-beta-23311.nupkg", - "System.IO.Pipes.4.0.0-beta-23311.nupkg.sha512", + "System.IO.Pipes.4.0.0-beta-23316.nupkg", + "System.IO.Pipes.4.0.0-beta-23316.nupkg.sha512", "System.IO.Pipes.nuspec", "System.IO.Pipes.xml", "zh-hans/System.IO.Pipes.xml", @@ -879,6 +1039,102 @@ "System.Linq.nuspec" ] }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "sha512": "wlfVllrKi+evu4Hi8yoJP1dSOVXbvsy7Hs1+oz4Cykfdf6MQTPlD3LI4WKWhprn8FpU5MS3spPSbcMX5sAoJSw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Linq.Expressions.xml", + "ref/dotnet/es/System.Linq.Expressions.xml", + "ref/dotnet/fr/System.Linq.Expressions.xml", + "ref/dotnet/it/System.Linq.Expressions.xml", + "ref/dotnet/ja/System.Linq.Expressions.xml", + "ref/dotnet/ko/System.Linq.Expressions.xml", + "ref/dotnet/ru/System.Linq.Expressions.xml", + "ref/dotnet/System.Linq.Expressions.dll", + "ref/dotnet/System.Linq.Expressions.xml", + "ref/dotnet/zh-hans/System.Linq.Expressions.xml", + "ref/dotnet/zh-hant/System.Linq.Expressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Linq.Expressions.xml", + "ref/netcore50/es/System.Linq.Expressions.xml", + "ref/netcore50/fr/System.Linq.Expressions.xml", + "ref/netcore50/it/System.Linq.Expressions.xml", + "ref/netcore50/ja/System.Linq.Expressions.xml", + "ref/netcore50/ko/System.Linq.Expressions.xml", + "ref/netcore50/ru/System.Linq.Expressions.xml", + "ref/netcore50/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.xml", + "ref/netcore50/zh-hans/System.Linq.Expressions.xml", + "ref/netcore50/zh-hant/System.Linq.Expressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Linq.Expressions.4.0.0.nupkg", + "System.Linq.Expressions.4.0.0.nupkg.sha512", + "System.Linq.Expressions.nuspec" + ] + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "sha512": "+3j/n+5SlF7PKb0/s5kdord+5RyW3uUscB+0WPuYvfAvEgyx6yPdPXU9tXdDZImRohMuWnQTAG2rFojFPfoGbA==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.ObjectModel.xml", + "ref/dotnet/es/System.ObjectModel.xml", + "ref/dotnet/fr/System.ObjectModel.xml", + "ref/dotnet/it/System.ObjectModel.xml", + "ref/dotnet/ja/System.ObjectModel.xml", + "ref/dotnet/ko/System.ObjectModel.xml", + "ref/dotnet/ru/System.ObjectModel.xml", + "ref/dotnet/System.ObjectModel.dll", + "ref/dotnet/System.ObjectModel.xml", + "ref/dotnet/zh-hans/System.ObjectModel.xml", + "ref/dotnet/zh-hant/System.ObjectModel.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.ObjectModel.xml", + "ref/netcore50/es/System.ObjectModel.xml", + "ref/netcore50/fr/System.ObjectModel.xml", + "ref/netcore50/it/System.ObjectModel.xml", + "ref/netcore50/ja/System.ObjectModel.xml", + "ref/netcore50/ko/System.ObjectModel.xml", + "ref/netcore50/ru/System.ObjectModel.xml", + "ref/netcore50/System.ObjectModel.dll", + "ref/netcore50/System.ObjectModel.xml", + "ref/netcore50/zh-hans/System.ObjectModel.xml", + "ref/netcore50/zh-hant/System.ObjectModel.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.ObjectModel.4.0.0.nupkg", + "System.ObjectModel.4.0.0.nupkg.sha512", + "System.ObjectModel.nuspec" + ] + }, "System.Private.Uri/4.0.0": { "type": "package", "serviceable": true, @@ -1165,10 +1421,10 @@ "System.Runtime.InteropServices.nuspec" ] }, - "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23311": { + "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "76bBVSdeG3enYyNmibt8x85V2fHK8mRPlpz5cPdtl0QPj2A3Hyar+g+W5t9XSw5jPLwRB4tZn8a18bPRcCEiow==", + "sha512": "3iuy8asS4InpTBRCWcSx6/gzPJWnwXQitPa83mMBBrdNoXm05YpTVVR/XYeCMOMFLRlprzl9Mw9FbOHiQpsQyw==", "files": [ "lib/dotnet/System.Runtime.InteropServices.RuntimeInformation.dll", "lib/MonoAndroid10/_._", @@ -1180,8 +1436,8 @@ "ref/MonoTouch10/_._", "ref/xamarinios10/_._", "ref/xamarinmac20/_._", - "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23311.nupkg", - "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23311.nupkg.sha512", + "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23316.nupkg", + "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23316.nupkg.sha512", "System.Runtime.InteropServices.RuntimeInformation.nuspec" ] }, @@ -1250,10 +1506,10 @@ "System.Security.Principal.nuspec" ] }, - "System.Security.Principal.Windows/4.0.0-beta-23311": { + "System.Security.Principal.Windows/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "6prP/ZgRLLvcAJyM0AqRHSmGGWuLJTnIB4aVw3f1ffM5L+m0G/5REKcLytubqOxIAAEy5kUPfKQaS+SQBdmtfg==", + "sha512": "nhGXagP2GEqOO6xI8GNpu66rdvmk+2PpOqSnq80ftKpHv43AdUtSfBIcNfI9sYzh5Vthtx24x0cXyeX3jp0pEQ==", "files": [ "de/System.Security.Principal.Windows.xml", "es/System.Security.Principal.Windows.xml", @@ -1266,8 +1522,8 @@ "ref/dotnet/System.Security.Principal.Windows.dll", "ref/net46/System.Security.Principal.Windows.dll", "ru/System.Security.Principal.Windows.xml", - "System.Security.Principal.Windows.4.0.0-beta-23311.nupkg", - "System.Security.Principal.Windows.4.0.0-beta-23311.nupkg.sha512", + "System.Security.Principal.Windows.4.0.0-beta-23316.nupkg", + "System.Security.Principal.Windows.4.0.0-beta-23316.nupkg.sha512", "System.Security.Principal.Windows.nuspec", "System.Security.Principal.Windows.xml", "zh-hans/System.Security.Principal.Windows.xml", @@ -1370,6 +1626,54 @@ "System.Text.Encoding.Extensions.nuspec" ] }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "sha512": "D2CHm8LBIymJK9+1E3sn4cUEzMd6B+quQUrCGUluv9QFBNOdL3XqNu548QKeNplEXFOmF5aKXMxXbTrjbEUNMw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Text.RegularExpressions.xml", + "ref/dotnet/es/System.Text.RegularExpressions.xml", + "ref/dotnet/fr/System.Text.RegularExpressions.xml", + "ref/dotnet/it/System.Text.RegularExpressions.xml", + "ref/dotnet/ja/System.Text.RegularExpressions.xml", + "ref/dotnet/ko/System.Text.RegularExpressions.xml", + "ref/dotnet/ru/System.Text.RegularExpressions.xml", + "ref/dotnet/System.Text.RegularExpressions.dll", + "ref/dotnet/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hans/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hant/System.Text.RegularExpressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Text.RegularExpressions.xml", + "ref/netcore50/es/System.Text.RegularExpressions.xml", + "ref/netcore50/fr/System.Text.RegularExpressions.xml", + "ref/netcore50/it/System.Text.RegularExpressions.xml", + "ref/netcore50/ja/System.Text.RegularExpressions.xml", + "ref/netcore50/ko/System.Text.RegularExpressions.xml", + "ref/netcore50/ru/System.Text.RegularExpressions.xml", + "ref/netcore50/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Text.RegularExpressions.4.0.0.nupkg", + "System.Text.RegularExpressions.4.0.0.nupkg.sha512", + "System.Text.RegularExpressions.nuspec" + ] + }, "System.Threading/4.0.10": { "type": "package", "serviceable": true, @@ -1463,10 +1767,10 @@ "System.Threading.Tasks.nuspec" ] }, - "System.Threading.Thread/4.0.0-beta-23311": { + "System.Threading.Thread/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "OgH6KflP3rlBmtrqE2xVcufOTIF3zQb/JN9aCl3rok0GZ8xnGS2xQy+F9hh6UHxQCkl0xWMhmvfdudvwvBkECw==", + "sha512": "K7VF+As0MKiWhaB2mWu4B5ku8Fg9xaMvH00YjfHFeTYHEX4A5/qO8hFDoFkEUKO+h+6bXjVJ7aakqUGTzO/zBA==", "files": [ "lib/DNXCore50/System.Threading.Thread.dll", "lib/MonoAndroid10/_._", @@ -1480,15 +1784,15 @@ "ref/net46/System.Threading.Thread.dll", "ref/xamarinios10/_._", "ref/xamarinmac20/_._", - "System.Threading.Thread.4.0.0-beta-23311.nupkg", - "System.Threading.Thread.4.0.0-beta-23311.nupkg.sha512", + "System.Threading.Thread.4.0.0-beta-23316.nupkg", + "System.Threading.Thread.4.0.0-beta-23316.nupkg.sha512", "System.Threading.Thread.nuspec" ] }, - "System.Threading.ThreadPool/4.0.10-beta-23311": { + "System.Threading.ThreadPool/4.0.10-beta-23316": { "type": "package", "serviceable": true, - "sha512": "KF1vm7tZIPslDE262oI6FXlKlXOoz5K4HMR1V6DlZIstkL6CyLISv8c6vhdj3R0k2vmmVKcp2GyF4sOWbD0Y2A==", + "sha512": "bLByUFcpDs94+guIu/2of2rOA/zB/7dzPks3HNv98AqIQ1ObeQCpPkrSitr+E/pW6nDvdIH4I47KGve6yiBMFg==", "files": [ "lib/DNXCore50/System.Threading.ThreadPool.dll", "lib/MonoAndroid10/_._", @@ -1502,17 +1806,17 @@ "ref/net46/System.Threading.ThreadPool.dll", "ref/xamarinios10/_._", "ref/xamarinmac20/_._", - "System.Threading.ThreadPool.4.0.10-beta-23311.nupkg", - "System.Threading.ThreadPool.4.0.10-beta-23311.nupkg.sha512", + "System.Threading.ThreadPool.4.0.10-beta-23316.nupkg", + "System.Threading.ThreadPool.4.0.10-beta-23316.nupkg.sha512", "System.Threading.ThreadPool.nuspec" ] }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", - "sha512": "NMFXV0ePe/GrfhMSPGAlWmiUZCzjaatpdAGcavf2B6vYTRyMTpyJT01LI6jemMV/VSDXLrtHp0Ov9xZyR1cLLg==", + "sha512": "dVnDKBCIpLE5GaxLALnbnobqtDyTTDKJSRbqhLGrx0Ptc/n3VQRUby/CDx6v+y7xNVPqtqj0XMeDO1DVT8E3tA==", "files": [ - "xunit.2.1.0-beta3-build3029.nupkg", - "xunit.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.2.1.0-rc1-build3168.nupkg", + "xunit.2.1.0-rc1-build3168.nupkg.sha512", "xunit.nuspec" ] }, @@ -1529,105 +1833,116 @@ "xunit.abstractions.nuspec" ] }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", - "sha512": "AMS7Fv77DayXVRCBMmVEDwOXPcbxk8dCBA/iACsve+6+UQqopMtNyAynyIcXPFRK/peeitUKID4ChOXWisJmUw==", + "sha512": "lsTK4OaNGt5IOoKO3ZQ0gSFngjWSHZ5xNurNtLd0MxZv5onv66xlNmWBYCVNt4sZLknQ+RfiqYm1EZ9ZrA0SDw==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.xml", - "xunit.assert.2.1.0-beta3-build3029.nupkg", - "xunit.assert.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.assert.dll", + "lib/dotnet/xunit.assert.pdb", + "lib/dotnet/xunit.assert.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.xml", + "xunit.assert.2.1.0-rc1-build3168.nupkg", + "xunit.assert.2.1.0-rc1-build3168.nupkg.sha512", "xunit.assert.nuspec" ] }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "uDUBbwZSRx226BMwj6VylzXQPVpEIelNIulT+LxbSEH52y2a4btR9d5ptQmkSVjmJXP5/hGCc4cu1DSCu0pgUA==", + "sha512": "IcQo+pNEDYBC9HJfzY08k0NhLZMX8WXudrlhcrIAzkT2szhrLbGhUi1k6vU5n9crsVv+IxosvIH28kYf6/Z32w==", "files": [ - "build/_Desktop/xunit.execution.desktop.dll", - "build/monoandroid/xunit.core.props", - "build/monoandroid/xunit.execution.MonoAndroid.dll", - "build/monotouch/xunit.core.props", - "build/monotouch/xunit.execution.MonoTouch.dll", - "build/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.targets", - "build/portable-win81+wpa81/xunit.execution.universal.dll", - "build/portable-win81+wpa81/xunit.execution.universal.pri", - "build/wp8/xunit.core.props", - "build/wp8/xunit.core.targets", - "build/wp8/xunit.execution.wp8.dll", - "build/Xamarin.iOS/xunit.core.props", - "build/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "xunit.core.2.1.0-beta3-build3029.nupkg", - "xunit.core.2.1.0-beta3-build3029.nupkg.sha512", + "build/_desktop/xunit.execution.desktop.dll", + "build/dnx451/_._", + "build/monoandroid/_._", + "build/monotouch/_._", + "build/net45/_._", + "build/portable-net45+win8+wp8+wpa81/xunit.core.props", + "build/win8/_._", + "build/win81/xunit.core.props", + "build/wp8/_._", + "build/wpa81/xunit.core.props", + "build/xamarinios/_._", + "xunit.core.2.1.0-rc1-build3168.nupkg", + "xunit.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.core.nuspec" ] }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "lsPro5U3NLasHI/RwqjKzXiRlh9N0IOlR3cluwXYVtihXbGtySeSnU/Fh5MTcWYxh+MVpoNop5zDD0/A2nrHsA==", + "sha512": "8KZaq1mdeaiZxo1ScsGzhkeQRwLLS6+WIno+9gtnYccWmTjCJ/XSYz2fAAlB5mUeyw0vqqrFc+TfNZELs5QiZQ==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll.tdnet", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.xml", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.core.dll", + "lib/dotnet/xunit.core.dll.tdnet", + "lib/dotnet/xunit.core.pdb", + "lib/dotnet/xunit.core.xml", + "lib/dotnet/xunit.runner.tdnet.dll", + "lib/dotnet/xunit.runner.utility.desktop.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll.tdnet", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.tdnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.utility.desktop.dll", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.core.nuspec" ] }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", - "sha512": "WuUYamK4RHrHxihvNuX7NkryMhQrpH1+ziJ/mPIQbm18zevSgre8BwUuVZvmLZa8uVob3xS4dvAah2+HCgLiXg==", + "sha512": "1w0u3eB7i25hca60r/53oSVb0blMOEm2eVqvwTg9jhMSe/A9raj6UZAVzUnFtA3xLssP4K1udOGTC1qrZ9/VoA==", "files": [ - "lib/dnx451/xunit.execution.dnx.dll", - "lib/dnx451/xunit.execution.dnx.pdb", - "lib/dnx451/xunit.execution.dnx.xml", - "lib/dnxcore50/xunit.execution.dnx.dll", - "lib/dnxcore50/xunit.execution.dnx.pdb", - "lib/dnxcore50/xunit.execution.dnx.xml", - "lib/monoandroid/xunit.execution.MonoAndroid.dll", - "lib/monoandroid/xunit.execution.MonoAndroid.pdb", - "lib/monoandroid/xunit.execution.MonoAndroid.xml", - "lib/monotouch/xunit.execution.MonoTouch.dll", - "lib/monotouch/xunit.execution.MonoTouch.pdb", - "lib/monotouch/xunit.execution.MonoTouch.xml", - "lib/net45/xunit.execution.desktop.dll", - "lib/net45/xunit.execution.desktop.pdb", - "lib/net45/xunit.execution.desktop.xml", - "lib/portable-wpa81+win81/xunit.execution.universal.dll", - "lib/portable-wpa81+win81/xunit.execution.universal.pdb", - "lib/portable-wpa81+win81/xunit.execution.universal.pri", - "lib/portable-wpa81+win81/xunit.execution.universal.xml", - "lib/wp8/xunit.execution.wp8.dll", - "lib/wp8/xunit.execution.wp8.pdb", - "lib/wp8/xunit.execution.wp8.xml", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.pdb", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.xml", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dnx451/xunit.execution.dotnet.dll", + "lib/dnx451/xunit.execution.dotnet.pdb", + "lib/dnx451/xunit.execution.dotnet.xml", + "lib/dotnet/xunit.execution.dotnet.dll", + "lib/dotnet/xunit.execution.dotnet.pdb", + "lib/dotnet/xunit.execution.dotnet.xml", + "lib/monoandroid/xunit.execution.dotnet.dll", + "lib/monoandroid/xunit.execution.dotnet.pdb", + "lib/monoandroid/xunit.execution.dotnet.xml", + "lib/monotouch/xunit.execution.dotnet.dll", + "lib/monotouch/xunit.execution.dotnet.pdb", + "lib/monotouch/xunit.execution.dotnet.xml", + "lib/net35/xunit.execution.desktop.dll", + "lib/net35/xunit.execution.desktop.pdb", + "lib/net35/xunit.execution.desktop.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.xml", + "lib/win8/xunit.execution.dotnet.dll", + "lib/win8/xunit.execution.dotnet.pdb", + "lib/win8/xunit.execution.dotnet.xml", + "lib/wp8/xunit.execution.dotnet.dll", + "lib/wp8/xunit.execution.dotnet.pdb", + "lib/wp8/xunit.execution.dotnet.xml", + "lib/wpa81/xunit.execution.dotnet.dll", + "lib/wpa81/xunit.execution.dotnet.pdb", + "lib/wpa81/xunit.execution.dotnet.xml", + "lib/xamarinios/xunit.execution.dotnet.dll", + "lib/xamarinios/xunit.execution.dotnet.pdb", + "lib/xamarinios/xunit.execution.dotnet.xml", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.execution.nuspec" ] }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "serviceable": true, - "sha512": "P3Q9YspdSUzoJQS6iT5mF3jt+s0u9u/G3K6s0Ns7NbAwQPktjwuO7CgJk38fop4yYDVdsVEwbZF2jfNMhJ7hkQ==", + "sha512": "9t2jrzI6N5ueydH5omBi95hiBOuNXpI6sS2kQJO56+bUavVpSD6/aD0C4+Nqbiql8Zvu0yx2GO+2IAd0JQcjIA==", "files": [ "lib/dotnet/Xunit.NetCore.Extensions.dll", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg.sha512", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg.sha512", "xunit.netcore.extensions.nuspec" ] } }, "projectFileDependencyGroups": { "": [ + "Microsoft.DotNet.xunit.performance >= 1.0.0-*", "Microsoft.Win32.Primitives >= 4.0.0", "Microsoft.Win32.Registry >= 4.0.0-beta-*", "System.Collections >= 4.0.10", @@ -1650,7 +1965,7 @@ "System.Threading.Tasks >= 4.0.10", "System.Threading.Thread >= 4.0.0-beta-*", "System.Threading.ThreadPool >= 4.0.10-beta-*", - "xunit >= 2.1.0-beta3-*", + "xunit >= 2.1.0-rc1-*", "xunit.netcore.extensions >= 1.0.0-prerelease-*" ], "DNXCore,Version=v5.0": [] diff --git a/src/System.Globalization/tests/Performance/Perf.CultureInfo.cs b/src/System.Globalization/tests/Performance/Perf.CultureInfo.cs new file mode 100644 index 0000000000..9a0ae96dc0 --- /dev/null +++ b/src/System.Globalization/tests/Performance/Perf.CultureInfo.cs @@ -0,0 +1,37 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Xunit; +using Microsoft.Xunit.Performance; + +namespace System.Globalization.Tests +{ + public class Perf_CultureInfo + { + [Benchmark] + public void GetCurrentCulture() + { + CultureInfo result; + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + result = CultureInfo.CurrentCulture; result = CultureInfo.CurrentCulture; result = CultureInfo.CurrentCulture; + result = CultureInfo.CurrentCulture; result = CultureInfo.CurrentCulture; result = CultureInfo.CurrentCulture; + result = CultureInfo.CurrentCulture; result = CultureInfo.CurrentCulture; result = CultureInfo.CurrentCulture; + } + } + + [Benchmark] + public void GetInvariantCulture() + { + CultureInfo result; + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + result = CultureInfo.InvariantCulture; result = CultureInfo.InvariantCulture; result = CultureInfo.InvariantCulture; + result = CultureInfo.InvariantCulture; result = CultureInfo.InvariantCulture; result = CultureInfo.InvariantCulture; + result = CultureInfo.InvariantCulture; result = CultureInfo.InvariantCulture; result = CultureInfo.InvariantCulture; + } + } + } +} diff --git a/src/System.Globalization/tests/System.Globalization.Tests.csproj b/src/System.Globalization/tests/System.Globalization.Tests.csproj index c53eb15f18..f0b4b1c42f 100644 --- a/src/System.Globalization/tests/System.Globalization.Tests.csproj +++ b/src/System.Globalization/tests/System.Globalization.Tests.csproj @@ -10,6 +10,11 @@ <AssemblyName>System.Globalization.Tests</AssemblyName> <RestorePackages>true</RestorePackages> </PropertyGroup> + <!-- Performance tests require v5.0 portable tools --> + <PropertyGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <TargetFrameworkVersion>v5.0</TargetFrameworkVersion> + <TargetFrameworkProfile /> + </PropertyGroup> <!-- Default configurations to help VS understand the configurations --> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> </PropertyGroup> @@ -170,6 +175,14 @@ <Compile Include="UnicodeCategory\UnicodeCategoryTests.cs" /> <Compile Include="$(CommonTestPath)\System\RandomDataGenerator.cs" /> </ItemGroup> + <!-- Performance Tests --> + <ItemGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <Compile Include="Performance\Perf.CultureInfo.cs" /> + <Compile Include="Performance\Perf.StringBuilder.cs" /> + <Compile Include="$(CommonTestPath)\Performance\PerfUtils.cs"> + <Link>Common\Performance\PerfUtils.cs</Link> + </Compile> + </ItemGroup> <ItemGroup> <None Include="project.json" /> </ItemGroup> diff --git a/src/System.Globalization/tests/project.json b/src/System.Globalization/tests/project.json index 2b8aa8b70f..c267839ac3 100644 --- a/src/System.Globalization/tests/project.json +++ b/src/System.Globalization/tests/project.json @@ -1,5 +1,6 @@ { "dependencies": { + "Microsoft.DotNet.xunit.performance": "1.0.0-*", "System.AppContext": "4.0.0", "System.Console": "4.0.0-beta-*", "System.Globalization": "4.0.10", @@ -10,7 +11,7 @@ "System.Runtime.InteropServices": "4.0.20", "System.Threading": "4.0.10", "System.Threading.Tasks": "4.0.10", - "xunit": "2.1.0-beta3-*", + "xunit": "2.1.0-rc1-*", "xunit.netcore.extensions": "1.0.0-prerelease-*" }, "frameworks": { diff --git a/src/System.Globalization/tests/project.lock.json b/src/System.Globalization/tests/project.lock.json index a989b32e4e..fecf8fedac 100644 --- a/src/System.Globalization/tests/project.lock.json +++ b/src/System.Globalization/tests/project.lock.json @@ -3,6 +3,36 @@ "version": 1, "targets": { "DNXCore,Version=v5.0": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.Diagnostics.Debug": "4.0.10", + "System.Diagnostics.Tracing": "4.0.20", + "System.Globalization": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem": "4.0.0", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.10", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Text.Encoding": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Tasks": "4.0.10", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "2.1.0-rc1-build3168", + "xunit.extensibility.execution": "2.1.0-rc1-build3168" + }, + "compile": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + }, + "runtime": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + } + }, "System.AppContext/4.0.0": { "type": "package", "dependencies": { @@ -27,7 +57,7 @@ "lib/DNXCore50/System.Collections.dll": {} } }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.IO": "4.0.0", @@ -49,6 +79,18 @@ "lib/DNXCore50/System.Diagnostics.Debug.dll": {} } }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Diagnostics.Tracing.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Diagnostics.Tracing.dll": {} + } + }, "System.Globalization/4.0.10": { "type": "package", "dependencies": { @@ -88,6 +130,42 @@ "lib/DNXCore50/System.IO.dll": {} } }, + "System.IO.FileSystem/4.0.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Resources.ResourceManager": "4.0.0", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Runtime.Handles": "4.0.0", + "System.Runtime.InteropServices": "4.0.20", + "System.Text.Encoding": "4.0.10", + "System.Text.Encoding.Extensions": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Overlapped": "4.0.0", + "System.Threading.Tasks": "4.0.10" + }, + "compile": { + "ref/dotnet/System.IO.FileSystem.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.IO.FileSystem.dll": {} + } + }, + "System.IO.FileSystem.Primitives/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.20" + }, + "compile": { + "ref/dotnet/System.IO.FileSystem.Primitives.dll": {} + }, + "runtime": { + "lib/dotnet/System.IO.FileSystem.Primitives.dll": {} + } + }, "System.Linq/4.0.0": { "type": "package", "dependencies": { @@ -104,6 +182,25 @@ "lib/dotnet/System.Linq.dll": {} } }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Linq.Expressions.dll": {} + } + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.ObjectModel.dll": {} + } + }, "System.Private.Uri/4.0.0": { "type": "package", "compile": { @@ -127,6 +224,19 @@ "lib/DNXCore50/System.Reflection.dll": {} } }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Reflection.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Reflection.Extensions.dll": {} + } + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "dependencies": { @@ -229,6 +339,28 @@ "lib/DNXCore50/System.Text.Encoding.dll": {} } }, + "System.Text.Encoding.Extensions/4.0.10": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0", + "System.Text.Encoding": "4.0.10" + }, + "compile": { + "ref/dotnet/System.Text.Encoding.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Text.Encoding.Extensions.dll": {} + } + }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Text.RegularExpressions.dll": {} + } + }, "System.Threading/4.0.10": { "type": "package", "dependencies": { @@ -242,6 +374,19 @@ "lib/DNXCore50/System.Threading.dll": {} } }, + "System.Threading.Overlapped/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0", + "System.Runtime.Handles": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Threading.Overlapped.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Threading.Overlapped.dll": {} + } + }, "System.Threading.Tasks/4.0.10": { "type": "package", "dependencies": { @@ -254,11 +399,11 @@ "lib/DNXCore50/System.Threading.Tasks.dll": {} } }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.assert": "[2.1.0-beta3-build3029]", - "xunit.core": "[2.1.0-beta3-build3029]" + "xunit.assert": "[2.1.0-rc1-build3168]", + "xunit.core": "[2.1.0-rc1-build3168]" } }, "xunit.abstractions/2.0.0": { @@ -270,49 +415,86 @@ "lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll": {} } }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", + "dependencies": { + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.ObjectModel": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.RegularExpressions": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} } }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]", - "xunit.extensibility.execution": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]", + "xunit.extensibility.execution": "[2.1.0-rc1-build3168]" } }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { "xunit.abstractions": "[2.0.0]" }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {} + "lib/dotnet/xunit.core.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll": {} + "lib/dotnet/xunit.core.dll": {}, + "lib/dotnet/xunit.runner.tdnet.dll": {}, + "lib/dotnet/xunit.runner.utility.desktop.dll": {} } }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.0", + "System.Linq": "4.0.0", + "System.Linq.Expressions": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.Encoding": "4.0.0", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]" }, "compile": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} }, "runtime": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} } }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "dependencies": { "System.Diagnostics.Debug": "4.0.10", @@ -340,6 +522,25 @@ } }, "libraries": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "sha512": "NCrgkMUcuMy3T5PY9kcBFpRyN/HrUyHsSxvdyq426iTZj2pG+6odaztW5BrQov3gPEXM5cPx4+64djl4sC8/nw==", + "files": [ + "lib/dotnet/xunit.performance.core.dll", + "lib/dotnet/xunit.performance.core.pdb", + "lib/dotnet/xunit.performance.core.XML", + "lib/dotnet/xunit.performance.execution.dotnet.dll", + "lib/dotnet/xunit.performance.execution.dotnet.pdb", + "lib/net46/xunit.performance.core.dll", + "lib/net46/xunit.performance.core.pdb", + "lib/net46/xunit.performance.core.XML", + "lib/net46/xunit.performance.execution.desktop.dll", + "lib/net46/xunit.performance.execution.desktop.pdb", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg.sha512", + "Microsoft.DotNet.xunit.performance.nuspec" + ] + }, "System.AppContext/4.0.0": { "type": "package", "serviceable": true, @@ -407,10 +608,10 @@ "System.Collections.nuspec" ] }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "aCYId/+628/CuOEBKx7sGxQ9fpqvLDqkOMuc0rqWRUCAIgNLtLd5htaQo58aXjzrP8D4/X35xVC+PQoHHis4Mg==", + "sha512": "pYDflUHKD2oIllR+HsbgfkbwNsjivEgYsFjM3eZWS6KVqa5vYVMl93OvC+WfB0Va3Q9gAZYzxXQJUv6gWoJGLw==", "files": [ "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", @@ -424,8 +625,8 @@ "ref/xamarinios10/_._", "ref/xamarinmac20/_._", "runtime.json", - "System.Console.4.0.0-beta-23311.nupkg", - "System.Console.4.0.0-beta-23311.nupkg.sha512", + "System.Console.4.0.0-beta-23316.nupkg", + "System.Console.4.0.0-beta-23316.nupkg.sha512", "System.Console.nuspec" ] }, @@ -463,6 +664,40 @@ "System.Diagnostics.Debug.nuspec" ] }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "serviceable": true, + "sha512": "gn/wexGHc35Fv++5L1gYHMY5g25COfiZ0PGrL+3PfwzoJd4X2LbTAm/U8d385SI6BKQBI/z4dQfvneS9J27+Tw==", + "files": [ + "lib/DNXCore50/System.Diagnostics.Tracing.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Diagnostics.Tracing.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Diagnostics.Tracing.xml", + "ref/dotnet/es/System.Diagnostics.Tracing.xml", + "ref/dotnet/fr/System.Diagnostics.Tracing.xml", + "ref/dotnet/it/System.Diagnostics.Tracing.xml", + "ref/dotnet/ja/System.Diagnostics.Tracing.xml", + "ref/dotnet/ko/System.Diagnostics.Tracing.xml", + "ref/dotnet/ru/System.Diagnostics.Tracing.xml", + "ref/dotnet/System.Diagnostics.Tracing.dll", + "ref/dotnet/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hans/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hant/System.Diagnostics.Tracing.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Diagnostics.Tracing.dll", + "System.Diagnostics.Tracing.4.0.20.nupkg", + "System.Diagnostics.Tracing.4.0.20.nupkg.sha512", + "System.Diagnostics.Tracing.nuspec" + ] + }, "System.Globalization/4.0.10": { "type": "package", "sha512": "kzRtbbCNAxdafFBDogcM36ehA3th8c1PGiz8QRkZn8O5yMBorDHSK8/TGJPYOaCS5zdsGk0u9qXHnW91nqy7fw==", @@ -563,6 +798,71 @@ "System.IO.nuspec" ] }, + "System.IO.FileSystem/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "eo05SPWfG+54UA0wxgRIYOuOslq+2QrJLXZaJDDsfLXG15OLguaItW39NYZTqUb4DeGOkU4R0wpOLOW4ynMUDQ==", + "files": [ + "lib/DNXCore50/System.IO.FileSystem.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.dll", + "lib/netcore50/System.IO.FileSystem.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.IO.FileSystem.xml", + "ref/dotnet/es/System.IO.FileSystem.xml", + "ref/dotnet/fr/System.IO.FileSystem.xml", + "ref/dotnet/it/System.IO.FileSystem.xml", + "ref/dotnet/ja/System.IO.FileSystem.xml", + "ref/dotnet/ko/System.IO.FileSystem.xml", + "ref/dotnet/ru/System.IO.FileSystem.xml", + "ref/dotnet/System.IO.FileSystem.dll", + "ref/dotnet/System.IO.FileSystem.xml", + "ref/dotnet/zh-hans/System.IO.FileSystem.xml", + "ref/dotnet/zh-hant/System.IO.FileSystem.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.IO.FileSystem.4.0.0.nupkg", + "System.IO.FileSystem.4.0.0.nupkg.sha512", + "System.IO.FileSystem.nuspec" + ] + }, + "System.IO.FileSystem.Primitives/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "7pJUvYi/Yq3A5nagqCCiOw3+aJp3xXc/Cjr8dnJDnER3/6kX3LEencfqmXUcPl9+7OvRNyPMNhqsLAcMK6K/KA==", + "files": [ + "lib/dotnet/System.IO.FileSystem.Primitives.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/es/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/fr/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/it/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ja/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ko/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ru/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/System.IO.FileSystem.Primitives.dll", + "ref/dotnet/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/zh-hans/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/zh-hant/System.IO.FileSystem.Primitives.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.Primitives.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.IO.FileSystem.Primitives.4.0.0.nupkg", + "System.IO.FileSystem.Primitives.4.0.0.nupkg.sha512", + "System.IO.FileSystem.Primitives.nuspec" + ] + }, "System.Linq/4.0.0": { "type": "package", "serviceable": true, @@ -596,6 +896,102 @@ "System.Linq.nuspec" ] }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "sha512": "wlfVllrKi+evu4Hi8yoJP1dSOVXbvsy7Hs1+oz4Cykfdf6MQTPlD3LI4WKWhprn8FpU5MS3spPSbcMX5sAoJSw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Linq.Expressions.xml", + "ref/dotnet/es/System.Linq.Expressions.xml", + "ref/dotnet/fr/System.Linq.Expressions.xml", + "ref/dotnet/it/System.Linq.Expressions.xml", + "ref/dotnet/ja/System.Linq.Expressions.xml", + "ref/dotnet/ko/System.Linq.Expressions.xml", + "ref/dotnet/ru/System.Linq.Expressions.xml", + "ref/dotnet/System.Linq.Expressions.dll", + "ref/dotnet/System.Linq.Expressions.xml", + "ref/dotnet/zh-hans/System.Linq.Expressions.xml", + "ref/dotnet/zh-hant/System.Linq.Expressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Linq.Expressions.xml", + "ref/netcore50/es/System.Linq.Expressions.xml", + "ref/netcore50/fr/System.Linq.Expressions.xml", + "ref/netcore50/it/System.Linq.Expressions.xml", + "ref/netcore50/ja/System.Linq.Expressions.xml", + "ref/netcore50/ko/System.Linq.Expressions.xml", + "ref/netcore50/ru/System.Linq.Expressions.xml", + "ref/netcore50/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.xml", + "ref/netcore50/zh-hans/System.Linq.Expressions.xml", + "ref/netcore50/zh-hant/System.Linq.Expressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Linq.Expressions.4.0.0.nupkg", + "System.Linq.Expressions.4.0.0.nupkg.sha512", + "System.Linq.Expressions.nuspec" + ] + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "sha512": "+3j/n+5SlF7PKb0/s5kdord+5RyW3uUscB+0WPuYvfAvEgyx6yPdPXU9tXdDZImRohMuWnQTAG2rFojFPfoGbA==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.ObjectModel.xml", + "ref/dotnet/es/System.ObjectModel.xml", + "ref/dotnet/fr/System.ObjectModel.xml", + "ref/dotnet/it/System.ObjectModel.xml", + "ref/dotnet/ja/System.ObjectModel.xml", + "ref/dotnet/ko/System.ObjectModel.xml", + "ref/dotnet/ru/System.ObjectModel.xml", + "ref/dotnet/System.ObjectModel.dll", + "ref/dotnet/System.ObjectModel.xml", + "ref/dotnet/zh-hans/System.ObjectModel.xml", + "ref/dotnet/zh-hant/System.ObjectModel.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.ObjectModel.xml", + "ref/netcore50/es/System.ObjectModel.xml", + "ref/netcore50/fr/System.ObjectModel.xml", + "ref/netcore50/it/System.ObjectModel.xml", + "ref/netcore50/ja/System.ObjectModel.xml", + "ref/netcore50/ko/System.ObjectModel.xml", + "ref/netcore50/ru/System.ObjectModel.xml", + "ref/netcore50/System.ObjectModel.dll", + "ref/netcore50/System.ObjectModel.xml", + "ref/netcore50/zh-hans/System.ObjectModel.xml", + "ref/netcore50/zh-hant/System.ObjectModel.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.ObjectModel.4.0.0.nupkg", + "System.ObjectModel.4.0.0.nupkg.sha512", + "System.ObjectModel.nuspec" + ] + }, "System.Private.Uri/4.0.0": { "type": "package", "serviceable": true, @@ -644,6 +1040,40 @@ "System.Reflection.nuspec" ] }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "dbYaZWCyFAu1TGYUqR2n+Q+1casSHPR2vVW0WVNkXpZbrd2BXcZ7cpvpu9C98CTHtNmyfMWCLpCclDqly23t6A==", + "files": [ + "lib/DNXCore50/System.Reflection.Extensions.dll", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Extensions.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "ref/dotnet/de/System.Reflection.Extensions.xml", + "ref/dotnet/es/System.Reflection.Extensions.xml", + "ref/dotnet/fr/System.Reflection.Extensions.xml", + "ref/dotnet/it/System.Reflection.Extensions.xml", + "ref/dotnet/ja/System.Reflection.Extensions.xml", + "ref/dotnet/ko/System.Reflection.Extensions.xml", + "ref/dotnet/ru/System.Reflection.Extensions.xml", + "ref/dotnet/System.Reflection.Extensions.dll", + "ref/dotnet/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hans/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hant/System.Reflection.Extensions.xml", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Extensions.dll", + "ref/netcore50/System.Reflection.Extensions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "runtimes/win8-aot/lib/netcore50/System.Reflection.Extensions.dll", + "System.Reflection.Extensions.4.0.0.nupkg", + "System.Reflection.Extensions.4.0.0.nupkg.sha512", + "System.Reflection.Extensions.nuspec" + ] + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "serviceable": true, @@ -901,6 +1331,87 @@ "System.Text.Encoding.nuspec" ] }, + "System.Text.Encoding.Extensions/4.0.10": { + "type": "package", + "sha512": "TZvlwXMxKo3bSRIcsWZLCIzIhLbvlz+mGeKYRZv/zUiSoQzGOwkYeBu6hOw2XPQgKqT0F4Rv8zqKdvmp2fWKYg==", + "files": [ + "lib/DNXCore50/System.Text.Encoding.Extensions.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Text.Encoding.Extensions.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Text.Encoding.Extensions.xml", + "ref/dotnet/es/System.Text.Encoding.Extensions.xml", + "ref/dotnet/fr/System.Text.Encoding.Extensions.xml", + "ref/dotnet/it/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ja/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ko/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ru/System.Text.Encoding.Extensions.xml", + "ref/dotnet/System.Text.Encoding.Extensions.dll", + "ref/dotnet/System.Text.Encoding.Extensions.xml", + "ref/dotnet/zh-hans/System.Text.Encoding.Extensions.xml", + "ref/dotnet/zh-hant/System.Text.Encoding.Extensions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Text.Encoding.Extensions.dll", + "System.Text.Encoding.Extensions.4.0.10.nupkg", + "System.Text.Encoding.Extensions.4.0.10.nupkg.sha512", + "System.Text.Encoding.Extensions.nuspec" + ] + }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "sha512": "D2CHm8LBIymJK9+1E3sn4cUEzMd6B+quQUrCGUluv9QFBNOdL3XqNu548QKeNplEXFOmF5aKXMxXbTrjbEUNMw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Text.RegularExpressions.xml", + "ref/dotnet/es/System.Text.RegularExpressions.xml", + "ref/dotnet/fr/System.Text.RegularExpressions.xml", + "ref/dotnet/it/System.Text.RegularExpressions.xml", + "ref/dotnet/ja/System.Text.RegularExpressions.xml", + "ref/dotnet/ko/System.Text.RegularExpressions.xml", + "ref/dotnet/ru/System.Text.RegularExpressions.xml", + "ref/dotnet/System.Text.RegularExpressions.dll", + "ref/dotnet/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hans/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hant/System.Text.RegularExpressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Text.RegularExpressions.xml", + "ref/netcore50/es/System.Text.RegularExpressions.xml", + "ref/netcore50/fr/System.Text.RegularExpressions.xml", + "ref/netcore50/it/System.Text.RegularExpressions.xml", + "ref/netcore50/ja/System.Text.RegularExpressions.xml", + "ref/netcore50/ko/System.Text.RegularExpressions.xml", + "ref/netcore50/ru/System.Text.RegularExpressions.xml", + "ref/netcore50/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Text.RegularExpressions.4.0.0.nupkg", + "System.Text.RegularExpressions.4.0.0.nupkg.sha512", + "System.Text.RegularExpressions.nuspec" + ] + }, "System.Threading/4.0.10": { "type": "package", "serviceable": true, @@ -935,6 +1446,31 @@ "System.Threading.nuspec" ] }, + "System.Threading.Overlapped/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "X5LuQFhM5FTqaez3eXKJ9CbfSGZ7wj6j4hSVtxct3zmwQXLqG95qoWdvILcgN7xtrDOBIFtpiyDg0vmoI0jE2A==", + "files": [ + "lib/DNXCore50/System.Threading.Overlapped.dll", + "lib/net46/System.Threading.Overlapped.dll", + "lib/netcore50/System.Threading.Overlapped.dll", + "ref/dotnet/de/System.Threading.Overlapped.xml", + "ref/dotnet/es/System.Threading.Overlapped.xml", + "ref/dotnet/fr/System.Threading.Overlapped.xml", + "ref/dotnet/it/System.Threading.Overlapped.xml", + "ref/dotnet/ja/System.Threading.Overlapped.xml", + "ref/dotnet/ko/System.Threading.Overlapped.xml", + "ref/dotnet/ru/System.Threading.Overlapped.xml", + "ref/dotnet/System.Threading.Overlapped.dll", + "ref/dotnet/System.Threading.Overlapped.xml", + "ref/dotnet/zh-hans/System.Threading.Overlapped.xml", + "ref/dotnet/zh-hant/System.Threading.Overlapped.xml", + "ref/net46/System.Threading.Overlapped.dll", + "System.Threading.Overlapped.4.0.0.nupkg", + "System.Threading.Overlapped.4.0.0.nupkg.sha512", + "System.Threading.Overlapped.nuspec" + ] + }, "System.Threading.Tasks/4.0.10": { "type": "package", "serviceable": true, @@ -969,12 +1505,12 @@ "System.Threading.Tasks.nuspec" ] }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", - "sha512": "NMFXV0ePe/GrfhMSPGAlWmiUZCzjaatpdAGcavf2B6vYTRyMTpyJT01LI6jemMV/VSDXLrtHp0Ov9xZyR1cLLg==", + "sha512": "dVnDKBCIpLE5GaxLALnbnobqtDyTTDKJSRbqhLGrx0Ptc/n3VQRUby/CDx6v+y7xNVPqtqj0XMeDO1DVT8E3tA==", "files": [ - "xunit.2.1.0-beta3-build3029.nupkg", - "xunit.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.2.1.0-rc1-build3168.nupkg", + "xunit.2.1.0-rc1-build3168.nupkg.sha512", "xunit.nuspec" ] }, @@ -991,105 +1527,116 @@ "xunit.abstractions.nuspec" ] }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", - "sha512": "AMS7Fv77DayXVRCBMmVEDwOXPcbxk8dCBA/iACsve+6+UQqopMtNyAynyIcXPFRK/peeitUKID4ChOXWisJmUw==", + "sha512": "lsTK4OaNGt5IOoKO3ZQ0gSFngjWSHZ5xNurNtLd0MxZv5onv66xlNmWBYCVNt4sZLknQ+RfiqYm1EZ9ZrA0SDw==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.xml", - "xunit.assert.2.1.0-beta3-build3029.nupkg", - "xunit.assert.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.assert.dll", + "lib/dotnet/xunit.assert.pdb", + "lib/dotnet/xunit.assert.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.xml", + "xunit.assert.2.1.0-rc1-build3168.nupkg", + "xunit.assert.2.1.0-rc1-build3168.nupkg.sha512", "xunit.assert.nuspec" ] }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "uDUBbwZSRx226BMwj6VylzXQPVpEIelNIulT+LxbSEH52y2a4btR9d5ptQmkSVjmJXP5/hGCc4cu1DSCu0pgUA==", + "sha512": "IcQo+pNEDYBC9HJfzY08k0NhLZMX8WXudrlhcrIAzkT2szhrLbGhUi1k6vU5n9crsVv+IxosvIH28kYf6/Z32w==", "files": [ - "build/_Desktop/xunit.execution.desktop.dll", - "build/monoandroid/xunit.core.props", - "build/monoandroid/xunit.execution.MonoAndroid.dll", - "build/monotouch/xunit.core.props", - "build/monotouch/xunit.execution.MonoTouch.dll", - "build/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.targets", - "build/portable-win81+wpa81/xunit.execution.universal.dll", - "build/portable-win81+wpa81/xunit.execution.universal.pri", - "build/wp8/xunit.core.props", - "build/wp8/xunit.core.targets", - "build/wp8/xunit.execution.wp8.dll", - "build/Xamarin.iOS/xunit.core.props", - "build/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "xunit.core.2.1.0-beta3-build3029.nupkg", - "xunit.core.2.1.0-beta3-build3029.nupkg.sha512", + "build/_desktop/xunit.execution.desktop.dll", + "build/dnx451/_._", + "build/monoandroid/_._", + "build/monotouch/_._", + "build/net45/_._", + "build/portable-net45+win8+wp8+wpa81/xunit.core.props", + "build/win8/_._", + "build/win81/xunit.core.props", + "build/wp8/_._", + "build/wpa81/xunit.core.props", + "build/xamarinios/_._", + "xunit.core.2.1.0-rc1-build3168.nupkg", + "xunit.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.core.nuspec" ] }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "lsPro5U3NLasHI/RwqjKzXiRlh9N0IOlR3cluwXYVtihXbGtySeSnU/Fh5MTcWYxh+MVpoNop5zDD0/A2nrHsA==", + "sha512": "8KZaq1mdeaiZxo1ScsGzhkeQRwLLS6+WIno+9gtnYccWmTjCJ/XSYz2fAAlB5mUeyw0vqqrFc+TfNZELs5QiZQ==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll.tdnet", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.xml", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.core.dll", + "lib/dotnet/xunit.core.dll.tdnet", + "lib/dotnet/xunit.core.pdb", + "lib/dotnet/xunit.core.xml", + "lib/dotnet/xunit.runner.tdnet.dll", + "lib/dotnet/xunit.runner.utility.desktop.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll.tdnet", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.tdnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.utility.desktop.dll", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.core.nuspec" ] }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", - "sha512": "WuUYamK4RHrHxihvNuX7NkryMhQrpH1+ziJ/mPIQbm18zevSgre8BwUuVZvmLZa8uVob3xS4dvAah2+HCgLiXg==", + "sha512": "1w0u3eB7i25hca60r/53oSVb0blMOEm2eVqvwTg9jhMSe/A9raj6UZAVzUnFtA3xLssP4K1udOGTC1qrZ9/VoA==", "files": [ - "lib/dnx451/xunit.execution.dnx.dll", - "lib/dnx451/xunit.execution.dnx.pdb", - "lib/dnx451/xunit.execution.dnx.xml", - "lib/dnxcore50/xunit.execution.dnx.dll", - "lib/dnxcore50/xunit.execution.dnx.pdb", - "lib/dnxcore50/xunit.execution.dnx.xml", - "lib/monoandroid/xunit.execution.MonoAndroid.dll", - "lib/monoandroid/xunit.execution.MonoAndroid.pdb", - "lib/monoandroid/xunit.execution.MonoAndroid.xml", - "lib/monotouch/xunit.execution.MonoTouch.dll", - "lib/monotouch/xunit.execution.MonoTouch.pdb", - "lib/monotouch/xunit.execution.MonoTouch.xml", - "lib/net45/xunit.execution.desktop.dll", - "lib/net45/xunit.execution.desktop.pdb", - "lib/net45/xunit.execution.desktop.xml", - "lib/portable-wpa81+win81/xunit.execution.universal.dll", - "lib/portable-wpa81+win81/xunit.execution.universal.pdb", - "lib/portable-wpa81+win81/xunit.execution.universal.pri", - "lib/portable-wpa81+win81/xunit.execution.universal.xml", - "lib/wp8/xunit.execution.wp8.dll", - "lib/wp8/xunit.execution.wp8.pdb", - "lib/wp8/xunit.execution.wp8.xml", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.pdb", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.xml", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dnx451/xunit.execution.dotnet.dll", + "lib/dnx451/xunit.execution.dotnet.pdb", + "lib/dnx451/xunit.execution.dotnet.xml", + "lib/dotnet/xunit.execution.dotnet.dll", + "lib/dotnet/xunit.execution.dotnet.pdb", + "lib/dotnet/xunit.execution.dotnet.xml", + "lib/monoandroid/xunit.execution.dotnet.dll", + "lib/monoandroid/xunit.execution.dotnet.pdb", + "lib/monoandroid/xunit.execution.dotnet.xml", + "lib/monotouch/xunit.execution.dotnet.dll", + "lib/monotouch/xunit.execution.dotnet.pdb", + "lib/monotouch/xunit.execution.dotnet.xml", + "lib/net35/xunit.execution.desktop.dll", + "lib/net35/xunit.execution.desktop.pdb", + "lib/net35/xunit.execution.desktop.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.xml", + "lib/win8/xunit.execution.dotnet.dll", + "lib/win8/xunit.execution.dotnet.pdb", + "lib/win8/xunit.execution.dotnet.xml", + "lib/wp8/xunit.execution.dotnet.dll", + "lib/wp8/xunit.execution.dotnet.pdb", + "lib/wp8/xunit.execution.dotnet.xml", + "lib/wpa81/xunit.execution.dotnet.dll", + "lib/wpa81/xunit.execution.dotnet.pdb", + "lib/wpa81/xunit.execution.dotnet.xml", + "lib/xamarinios/xunit.execution.dotnet.dll", + "lib/xamarinios/xunit.execution.dotnet.pdb", + "lib/xamarinios/xunit.execution.dotnet.xml", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.execution.nuspec" ] }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "serviceable": true, - "sha512": "P3Q9YspdSUzoJQS6iT5mF3jt+s0u9u/G3K6s0Ns7NbAwQPktjwuO7CgJk38fop4yYDVdsVEwbZF2jfNMhJ7hkQ==", + "sha512": "9t2jrzI6N5ueydH5omBi95hiBOuNXpI6sS2kQJO56+bUavVpSD6/aD0C4+Nqbiql8Zvu0yx2GO+2IAd0JQcjIA==", "files": [ "lib/dotnet/Xunit.NetCore.Extensions.dll", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg.sha512", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg.sha512", "xunit.netcore.extensions.nuspec" ] } }, "projectFileDependencyGroups": { "": [ + "Microsoft.DotNet.xunit.performance >= 1.0.0-*", "System.AppContext >= 4.0.0", "System.Console >= 4.0.0-beta-*", "System.Globalization >= 4.0.10", @@ -1100,7 +1647,7 @@ "System.Runtime.InteropServices >= 4.0.20", "System.Threading >= 4.0.10", "System.Threading.Tasks >= 4.0.10", - "xunit >= 2.1.0-beta3-*", + "xunit >= 2.1.0-rc1-*", "xunit.netcore.extensions >= 1.0.0-prerelease-*" ], "DNXCore,Version=v5.0": [] diff --git a/src/System.IO.Compression/tests/Performance/Perf.DeflateStream.cs b/src/System.IO.Compression/tests/Performance/Perf.DeflateStream.cs new file mode 100644 index 0000000000..58102a7ad6 --- /dev/null +++ b/src/System.IO.Compression/tests/Performance/Perf.DeflateStream.cs @@ -0,0 +1,118 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Xunit; +using Microsoft.Xunit.Performance; +using System.Collections.Generic; +using System.Security.Cryptography; + +namespace System.IO.Compression.Tests +{ + public class Perf_DeflateStream + { + private static List<object[]> _compressedFiles; + private static List<object[]> _byteArraysToCompress; + + /// <summary> + /// Yields an Enumerable list of paths to GZTestData files + /// </summary> + public static IEnumerable<object[]> CompressedFiles() + { + if (_compressedFiles == null) + { + _compressedFiles = new List<object[]>(); + // Crypto random data + byte[] bytes = new byte[100000000]; + var rand = RandomNumberGenerator.Create(); + rand.GetBytes(bytes); + string filePath = PerfUtils.GetTestFilePath() + ".gz"; + using (FileStream output = File.Create(filePath)) + using (GZipStream zip = new GZipStream(output, CompressionMode.Compress)) + zip.Write(bytes, 0, bytes.Length); + _compressedFiles.Add(new object[] { filePath }); + + // Create a compressed file with repeated segments + bytes = Text.Encoding.UTF8.GetBytes(PerfUtils.CreateString(100000)); + filePath = PerfUtils.GetTestFilePath() + ".gz"; + using (FileStream output = File.Create(filePath)) + using (GZipStream zip = new GZipStream(output, CompressionMode.Compress)) + for (int i = 0; i < 1000; i++) + zip.Write(bytes, 0, bytes.Length); + _compressedFiles.Add(new object[] { filePath }); + } + return _compressedFiles; + } + + // Creates byte arrays that contain random data to be compressed + public static IEnumerable<object[]> ByteArraysToCompress() + { + if (_byteArraysToCompress == null) + { + _byteArraysToCompress = new List<object[]>(); + + // Regular, semi well formed data + _byteArraysToCompress.Add(new object[] { Text.Encoding.UTF8.GetBytes(PerfUtils.CreateString(100000000)) }); + + // Crypto random data + { + byte[] bytes = new byte[100000000]; + var rand = RandomNumberGenerator.Create(); + rand.GetBytes(bytes); + _byteArraysToCompress.Add(new object[] { bytes }); + } + + // Highly repeated data + { + byte[] bytes = new byte[101000000]; + byte[] small = Text.Encoding.UTF8.GetBytes(PerfUtils.CreateString(100000)); + for (int i = 0; i < 1000; i++) + small.CopyTo(bytes, 100000 * i); + _byteArraysToCompress.Add(new object[] { bytes }); + } + } + return _byteArraysToCompress; + } + + [Benchmark] + [MemberData("CompressedFiles")] + public async void Decompress(string testFilePath) + { + int _bufferSize = 1024; + int retCount = -1; + var bytes = new byte[_bufferSize]; + using (MemoryStream gzStream = await LocalMemoryStream.readAppFileAsync(testFilePath)) + using (MemoryStream strippedMs = StripHeaderAndFooter.Strip(gzStream)) + { + foreach (var iteration in Benchmark.Iterations) + { + using (DeflateStream zip = new DeflateStream(strippedMs, CompressionMode.Decompress, leaveOpen: true)) + using (iteration.StartMeasurement()) + { + while (retCount != 0) + { + retCount = zip.Read(bytes, 0, _bufferSize); + } + } + strippedMs.Seek(0, SeekOrigin.Begin); + } + } + } + + [Benchmark] + [MemberData("ByteArraysToCompress")] + public void Compress(byte[] bytes) + { + foreach (var iteration in Benchmark.Iterations) + { + string filePath = PerfUtils.GetTestFilePath(); + using (FileStream output = File.Create(filePath)) + using (DeflateStream zip = new DeflateStream(output, CompressionMode.Compress)) + using (iteration.StartMeasurement()) + { + zip.Write(bytes, 0, bytes.Length); + } + File.Delete(filePath); + } + } + } +} diff --git a/src/System.IO.Compression/tests/System.IO.Compression.Tests.csproj b/src/System.IO.Compression/tests/System.IO.Compression.Tests.csproj index 1badbd51ca..317cfb8079 100644 --- a/src/System.IO.Compression/tests/System.IO.Compression.Tests.csproj +++ b/src/System.IO.Compression/tests/System.IO.Compression.Tests.csproj @@ -8,6 +8,11 @@ <OutputType>Library</OutputType> <AssemblyName>System.IO.Compression.Tests</AssemblyName> </PropertyGroup> + <!-- Performance tests require v5.0 portable tools --> + <PropertyGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <TargetFrameworkVersion>v5.0</TargetFrameworkVersion> + <TargetFrameworkProfile /> + </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'" /> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'" /> <ItemGroup> @@ -48,6 +53,13 @@ <Link>Common\Compression\Utilities\ZipTestHelper.cs</Link> </Compile> </ItemGroup> + <!-- Performance Tests --> + <ItemGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <Compile Include="Performance\Perf.DeflateStream.cs" /> + <Compile Include="$(CommonTestPath)\Performance\PerfUtils.cs"> + <Link>Common\Performance\PerfUtils.cs</Link> + </Compile> + </ItemGroup> <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> <!-- Temporary until we have new work in build tools to deploy content from nuget packages --> diff --git a/src/System.IO.Compression/tests/project.json b/src/System.IO.Compression/tests/project.json index c8de6d2531..aabb023460 100644 --- a/src/System.IO.Compression/tests/project.json +++ b/src/System.IO.Compression/tests/project.json @@ -1,5 +1,6 @@ { "dependencies": { + "Microsoft.DotNet.xunit.performance": "1.0.0-*", "System.Collections": "4.0.10", "System.Console": "4.0.0-beta-*", "System.Diagnostics.Debug": "4.0.10", @@ -13,12 +14,13 @@ "System.Runtime.Handles": "4.0.0", "System.Runtime.InteropServices": "4.0.20", "System.Runtime.InteropServices.RuntimeInformation": "4.0.0-beta-*", + "System.Security.Cryptography.Algorithms": "4.0.0-beta-*", "System.Text.Encoding": "4.0.10", "System.Threading.Overlapped": "4.0.0", "System.Threading.Tasks": "4.0.10", "System.Threading.ThreadPool": "4.0.10-beta-*", "System.IO.Compression.TestData": "1.0.0-prerelease", - "xunit": "2.1.0-beta3-*", + "xunit": "2.1.0-rc1-*", "xunit.netcore.extensions": "1.0.0-prerelease-*" }, "frameworks": { diff --git a/src/System.IO.Compression/tests/project.lock.json b/src/System.IO.Compression/tests/project.lock.json index 059de03419..272c23898c 100644 --- a/src/System.IO.Compression/tests/project.lock.json +++ b/src/System.IO.Compression/tests/project.lock.json @@ -3,6 +3,36 @@ "version": 1, "targets": { "DNXCore,Version=v5.0": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.Diagnostics.Debug": "4.0.10", + "System.Diagnostics.Tracing": "4.0.20", + "System.Globalization": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem": "4.0.0", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.10", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Text.Encoding": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Tasks": "4.0.10", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "2.1.0-rc1-build3168", + "xunit.extensibility.execution": "2.1.0-rc1-build3168" + }, + "compile": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + }, + "runtime": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + } + }, "System.Collections/4.0.10": { "type": "package", "dependencies": { @@ -15,7 +45,7 @@ "lib/DNXCore50/System.Collections.dll": {} } }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23321": { "type": "package", "dependencies": { "System.IO": "4.0.0", @@ -37,6 +67,18 @@ "lib/DNXCore50/System.Diagnostics.Debug.dll": {} } }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Diagnostics.Tracing.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Diagnostics.Tracing.dll": {} + } + }, "System.Globalization/4.0.10": { "type": "package", "dependencies": { @@ -138,6 +180,25 @@ "lib/dotnet/System.Linq.dll": {} } }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Linq.Expressions.dll": {} + } + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.ObjectModel.dll": {} + } + }, "System.Private.Uri/4.0.0": { "type": "package", "compile": { @@ -161,6 +222,19 @@ "lib/DNXCore50/System.Reflection.dll": {} } }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Reflection.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Reflection.Extensions.dll": {} + } + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "dependencies": { @@ -238,17 +312,42 @@ "lib/DNXCore50/System.Runtime.InteropServices.dll": {} } }, - "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23311": { + "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23321": { "type": "package", "dependencies": { - "System.Resources.ResourceManager": "4.0.0", - "System.Runtime": "4.0.20" + "System.Runtime": "4.0.0" }, "compile": { "ref/dotnet/System.Runtime.InteropServices.RuntimeInformation.dll": {} + } + }, + "System.Security.Cryptography.Algorithms/4.0.0-beta-23321": { + "type": "package", + "dependencies": { + "System.IO": "4.0.0", + "System.Runtime": "4.0.0", + "System.Security.Cryptography.Primitives": "4.0.0-beta-23321" + }, + "compile": { + "ref/dotnet/System.Security.Cryptography.Algorithms.dll": {} + } + }, + "System.Security.Cryptography.Primitives/4.0.0-beta-23321": { + "type": "package", + "dependencies": { + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.10", + "System.Resources.ResourceManager": "4.0.0", + "System.Runtime": "4.0.20", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Security.Cryptography.Primitives.dll": {} }, "runtime": { - "lib/dotnet/System.Runtime.InteropServices.RuntimeInformation.dll": {} + "lib/dotnet/System.Security.Cryptography.Primitives.dll": {} } }, "System.Text.Encoding/4.0.10": { @@ -276,6 +375,15 @@ "lib/DNXCore50/System.Text.Encoding.Extensions.dll": {} } }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Text.RegularExpressions.dll": {} + } + }, "System.Threading/4.0.10": { "type": "package", "dependencies": { @@ -314,7 +422,7 @@ "lib/DNXCore50/System.Threading.Tasks.dll": {} } }, - "System.Threading.ThreadPool/4.0.10-beta-23311": { + "System.Threading.ThreadPool/4.0.10-beta-23321": { "type": "package", "dependencies": { "System.Runtime": "4.0.0", @@ -327,11 +435,11 @@ "lib/DNXCore50/System.Threading.ThreadPool.dll": {} } }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.assert": "[2.1.0-beta3-build3029]", - "xunit.core": "[2.1.0-beta3-build3029]" + "xunit.assert": "[2.1.0-rc1-build3168]", + "xunit.core": "[2.1.0-rc1-build3168]" } }, "xunit.abstractions/2.0.0": { @@ -343,49 +451,86 @@ "lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll": {} } }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", + "dependencies": { + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.ObjectModel": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.RegularExpressions": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} } }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]", - "xunit.extensibility.execution": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]", + "xunit.extensibility.execution": "[2.1.0-rc1-build3168]" } }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { "xunit.abstractions": "[2.0.0]" }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {} + "lib/dotnet/xunit.core.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll": {} + "lib/dotnet/xunit.core.dll": {}, + "lib/dotnet/xunit.runner.tdnet.dll": {}, + "lib/dotnet/xunit.runner.utility.desktop.dll": {} } }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.0", + "System.Linq": "4.0.0", + "System.Linq.Expressions": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.Encoding": "4.0.0", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]" }, "compile": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} }, "runtime": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} } }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00093": { "type": "package", "dependencies": { "System.Diagnostics.Debug": "4.0.10", @@ -412,6 +557,36 @@ } }, "DNXCore,Version=v5.0/win7-x86": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.Diagnostics.Debug": "4.0.10", + "System.Diagnostics.Tracing": "4.0.20", + "System.Globalization": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem": "4.0.0", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.10", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Text.Encoding": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Tasks": "4.0.10", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "2.1.0-rc1-build3168", + "xunit.extensibility.execution": "2.1.0-rc1-build3168" + }, + "compile": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + }, + "runtime": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + } + }, "System.Collections/4.0.10": { "type": "package", "dependencies": { @@ -424,7 +599,7 @@ "lib/DNXCore50/System.Collections.dll": {} } }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23321": { "type": "package", "dependencies": { "System.IO": "4.0.0", @@ -446,6 +621,18 @@ "lib/DNXCore50/System.Diagnostics.Debug.dll": {} } }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Diagnostics.Tracing.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Diagnostics.Tracing.dll": {} + } + }, "System.Globalization/4.0.10": { "type": "package", "dependencies": { @@ -553,6 +740,25 @@ "lib/dotnet/System.Linq.dll": {} } }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Linq.Expressions.dll": {} + } + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.ObjectModel.dll": {} + } + }, "System.Private.Uri/4.0.0": { "type": "package", "compile": { @@ -576,6 +782,19 @@ "lib/DNXCore50/System.Reflection.dll": {} } }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Reflection.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Reflection.Extensions.dll": {} + } + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "dependencies": { @@ -653,17 +872,42 @@ "lib/DNXCore50/System.Runtime.InteropServices.dll": {} } }, - "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23311": { + "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23321": { "type": "package", "dependencies": { - "System.Resources.ResourceManager": "4.0.0", - "System.Runtime": "4.0.20" + "System.Runtime": "4.0.0" }, "compile": { "ref/dotnet/System.Runtime.InteropServices.RuntimeInformation.dll": {} + } + }, + "System.Security.Cryptography.Algorithms/4.0.0-beta-23321": { + "type": "package", + "dependencies": { + "System.IO": "4.0.0", + "System.Runtime": "4.0.0", + "System.Security.Cryptography.Primitives": "4.0.0-beta-23321" + }, + "compile": { + "ref/dotnet/System.Security.Cryptography.Algorithms.dll": {} + } + }, + "System.Security.Cryptography.Primitives/4.0.0-beta-23321": { + "type": "package", + "dependencies": { + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.10", + "System.Resources.ResourceManager": "4.0.0", + "System.Runtime": "4.0.20", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Security.Cryptography.Primitives.dll": {} }, "runtime": { - "lib/dotnet/System.Runtime.InteropServices.RuntimeInformation.dll": {} + "lib/dotnet/System.Security.Cryptography.Primitives.dll": {} } }, "System.Text.Encoding/4.0.10": { @@ -691,6 +935,15 @@ "lib/DNXCore50/System.Text.Encoding.Extensions.dll": {} } }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Text.RegularExpressions.dll": {} + } + }, "System.Threading/4.0.10": { "type": "package", "dependencies": { @@ -729,7 +982,7 @@ "lib/DNXCore50/System.Threading.Tasks.dll": {} } }, - "System.Threading.ThreadPool/4.0.10-beta-23311": { + "System.Threading.ThreadPool/4.0.10-beta-23321": { "type": "package", "dependencies": { "System.Runtime": "4.0.0", @@ -742,11 +995,11 @@ "lib/DNXCore50/System.Threading.ThreadPool.dll": {} } }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.assert": "[2.1.0-beta3-build3029]", - "xunit.core": "[2.1.0-beta3-build3029]" + "xunit.assert": "[2.1.0-rc1-build3168]", + "xunit.core": "[2.1.0-rc1-build3168]" } }, "xunit.abstractions/2.0.0": { @@ -758,49 +1011,86 @@ "lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll": {} } }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", + "dependencies": { + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.ObjectModel": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.RegularExpressions": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} } }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]", - "xunit.extensibility.execution": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]", + "xunit.extensibility.execution": "[2.1.0-rc1-build3168]" } }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { "xunit.abstractions": "[2.0.0]" }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {} + "lib/dotnet/xunit.core.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll": {} + "lib/dotnet/xunit.core.dll": {}, + "lib/dotnet/xunit.runner.tdnet.dll": {}, + "lib/dotnet/xunit.runner.utility.desktop.dll": {} } }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.0", + "System.Linq": "4.0.0", + "System.Linq.Expressions": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.Encoding": "4.0.0", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]" }, "compile": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} }, "runtime": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} } }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00093": { "type": "package", "dependencies": { "System.Diagnostics.Debug": "4.0.10", @@ -827,6 +1117,36 @@ } }, "DNXCore,Version=v5.0/win7-x64": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.Diagnostics.Debug": "4.0.10", + "System.Diagnostics.Tracing": "4.0.20", + "System.Globalization": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem": "4.0.0", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.10", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Text.Encoding": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Tasks": "4.0.10", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "2.1.0-rc1-build3168", + "xunit.extensibility.execution": "2.1.0-rc1-build3168" + }, + "compile": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + }, + "runtime": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + } + }, "System.Collections/4.0.10": { "type": "package", "dependencies": { @@ -839,7 +1159,7 @@ "lib/DNXCore50/System.Collections.dll": {} } }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23321": { "type": "package", "dependencies": { "System.IO": "4.0.0", @@ -861,6 +1181,18 @@ "lib/DNXCore50/System.Diagnostics.Debug.dll": {} } }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Diagnostics.Tracing.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Diagnostics.Tracing.dll": {} + } + }, "System.Globalization/4.0.10": { "type": "package", "dependencies": { @@ -968,6 +1300,25 @@ "lib/dotnet/System.Linq.dll": {} } }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Linq.Expressions.dll": {} + } + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.ObjectModel.dll": {} + } + }, "System.Private.Uri/4.0.0": { "type": "package", "compile": { @@ -991,6 +1342,19 @@ "lib/DNXCore50/System.Reflection.dll": {} } }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Reflection.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Reflection.Extensions.dll": {} + } + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "dependencies": { @@ -1068,17 +1432,42 @@ "lib/DNXCore50/System.Runtime.InteropServices.dll": {} } }, - "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23311": { + "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23321": { "type": "package", "dependencies": { - "System.Resources.ResourceManager": "4.0.0", - "System.Runtime": "4.0.20" + "System.Runtime": "4.0.0" }, "compile": { "ref/dotnet/System.Runtime.InteropServices.RuntimeInformation.dll": {} + } + }, + "System.Security.Cryptography.Algorithms/4.0.0-beta-23321": { + "type": "package", + "dependencies": { + "System.IO": "4.0.0", + "System.Runtime": "4.0.0", + "System.Security.Cryptography.Primitives": "4.0.0-beta-23321" + }, + "compile": { + "ref/dotnet/System.Security.Cryptography.Algorithms.dll": {} + } + }, + "System.Security.Cryptography.Primitives/4.0.0-beta-23321": { + "type": "package", + "dependencies": { + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.10", + "System.Resources.ResourceManager": "4.0.0", + "System.Runtime": "4.0.20", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Security.Cryptography.Primitives.dll": {} }, "runtime": { - "lib/dotnet/System.Runtime.InteropServices.RuntimeInformation.dll": {} + "lib/dotnet/System.Security.Cryptography.Primitives.dll": {} } }, "System.Text.Encoding/4.0.10": { @@ -1106,6 +1495,15 @@ "lib/DNXCore50/System.Text.Encoding.Extensions.dll": {} } }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Text.RegularExpressions.dll": {} + } + }, "System.Threading/4.0.10": { "type": "package", "dependencies": { @@ -1144,7 +1542,7 @@ "lib/DNXCore50/System.Threading.Tasks.dll": {} } }, - "System.Threading.ThreadPool/4.0.10-beta-23311": { + "System.Threading.ThreadPool/4.0.10-beta-23321": { "type": "package", "dependencies": { "System.Runtime": "4.0.0", @@ -1157,11 +1555,11 @@ "lib/DNXCore50/System.Threading.ThreadPool.dll": {} } }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.assert": "[2.1.0-beta3-build3029]", - "xunit.core": "[2.1.0-beta3-build3029]" + "xunit.assert": "[2.1.0-rc1-build3168]", + "xunit.core": "[2.1.0-rc1-build3168]" } }, "xunit.abstractions/2.0.0": { @@ -1173,49 +1571,86 @@ "lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll": {} } }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", + "dependencies": { + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.ObjectModel": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.RegularExpressions": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} } }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]", - "xunit.extensibility.execution": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]", + "xunit.extensibility.execution": "[2.1.0-rc1-build3168]" } }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { "xunit.abstractions": "[2.0.0]" }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {} + "lib/dotnet/xunit.core.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll": {} + "lib/dotnet/xunit.core.dll": {}, + "lib/dotnet/xunit.runner.tdnet.dll": {}, + "lib/dotnet/xunit.runner.utility.desktop.dll": {} } }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.0", + "System.Linq": "4.0.0", + "System.Linq.Expressions": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.Encoding": "4.0.0", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]" }, "compile": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} }, "runtime": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} } }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00093": { "type": "package", "dependencies": { "System.Diagnostics.Debug": "4.0.10", @@ -1243,6 +1678,25 @@ } }, "libraries": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "sha512": "NCrgkMUcuMy3T5PY9kcBFpRyN/HrUyHsSxvdyq426iTZj2pG+6odaztW5BrQov3gPEXM5cPx4+64djl4sC8/nw==", + "files": [ + "lib/dotnet/xunit.performance.core.dll", + "lib/dotnet/xunit.performance.core.pdb", + "lib/dotnet/xunit.performance.core.XML", + "lib/dotnet/xunit.performance.execution.dotnet.dll", + "lib/dotnet/xunit.performance.execution.dotnet.pdb", + "lib/net46/xunit.performance.core.dll", + "lib/net46/xunit.performance.core.pdb", + "lib/net46/xunit.performance.core.XML", + "lib/net46/xunit.performance.execution.desktop.dll", + "lib/net46/xunit.performance.execution.desktop.pdb", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg.sha512", + "Microsoft.DotNet.xunit.performance.nuspec" + ] + }, "System.Collections/4.0.10": { "type": "package", "serviceable": true, @@ -1277,10 +1731,10 @@ "System.Collections.nuspec" ] }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23321": { "type": "package", "serviceable": true, - "sha512": "aCYId/+628/CuOEBKx7sGxQ9fpqvLDqkOMuc0rqWRUCAIgNLtLd5htaQo58aXjzrP8D4/X35xVC+PQoHHis4Mg==", + "sha512": "T+3GU5sqNEY6FQrcBq+OxgGmR3iocoyCIaH486/jrHvYiDI2fJYuIQQMFfDom7lK9ALuyGQo6DHtIP8gvPtU4w==", "files": [ "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", @@ -1294,8 +1748,8 @@ "ref/xamarinios10/_._", "ref/xamarinmac20/_._", "runtime.json", - "System.Console.4.0.0-beta-23311.nupkg", - "System.Console.4.0.0-beta-23311.nupkg.sha512", + "System.Console.4.0.0-beta-23321.nupkg", + "System.Console.4.0.0-beta-23321.nupkg.sha512", "System.Console.nuspec" ] }, @@ -1333,6 +1787,40 @@ "System.Diagnostics.Debug.nuspec" ] }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "serviceable": true, + "sha512": "gn/wexGHc35Fv++5L1gYHMY5g25COfiZ0PGrL+3PfwzoJd4X2LbTAm/U8d385SI6BKQBI/z4dQfvneS9J27+Tw==", + "files": [ + "lib/DNXCore50/System.Diagnostics.Tracing.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Diagnostics.Tracing.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Diagnostics.Tracing.xml", + "ref/dotnet/es/System.Diagnostics.Tracing.xml", + "ref/dotnet/fr/System.Diagnostics.Tracing.xml", + "ref/dotnet/it/System.Diagnostics.Tracing.xml", + "ref/dotnet/ja/System.Diagnostics.Tracing.xml", + "ref/dotnet/ko/System.Diagnostics.Tracing.xml", + "ref/dotnet/ru/System.Diagnostics.Tracing.xml", + "ref/dotnet/System.Diagnostics.Tracing.dll", + "ref/dotnet/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hans/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hant/System.Diagnostics.Tracing.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Diagnostics.Tracing.dll", + "System.Diagnostics.Tracing.4.0.20.nupkg", + "System.Diagnostics.Tracing.4.0.20.nupkg.sha512", + "System.Diagnostics.Tracing.nuspec" + ] + }, "System.Globalization/4.0.10": { "type": "package", "sha512": "kzRtbbCNAxdafFBDogcM36ehA3th8c1PGiz8QRkZn8O5yMBorDHSK8/TGJPYOaCS5zdsGk0u9qXHnW91nqy7fw==", @@ -1652,6 +2140,102 @@ "System.Linq.nuspec" ] }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "sha512": "wlfVllrKi+evu4Hi8yoJP1dSOVXbvsy7Hs1+oz4Cykfdf6MQTPlD3LI4WKWhprn8FpU5MS3spPSbcMX5sAoJSw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Linq.Expressions.xml", + "ref/dotnet/es/System.Linq.Expressions.xml", + "ref/dotnet/fr/System.Linq.Expressions.xml", + "ref/dotnet/it/System.Linq.Expressions.xml", + "ref/dotnet/ja/System.Linq.Expressions.xml", + "ref/dotnet/ko/System.Linq.Expressions.xml", + "ref/dotnet/ru/System.Linq.Expressions.xml", + "ref/dotnet/System.Linq.Expressions.dll", + "ref/dotnet/System.Linq.Expressions.xml", + "ref/dotnet/zh-hans/System.Linq.Expressions.xml", + "ref/dotnet/zh-hant/System.Linq.Expressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Linq.Expressions.xml", + "ref/netcore50/es/System.Linq.Expressions.xml", + "ref/netcore50/fr/System.Linq.Expressions.xml", + "ref/netcore50/it/System.Linq.Expressions.xml", + "ref/netcore50/ja/System.Linq.Expressions.xml", + "ref/netcore50/ko/System.Linq.Expressions.xml", + "ref/netcore50/ru/System.Linq.Expressions.xml", + "ref/netcore50/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.xml", + "ref/netcore50/zh-hans/System.Linq.Expressions.xml", + "ref/netcore50/zh-hant/System.Linq.Expressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Linq.Expressions.4.0.0.nupkg", + "System.Linq.Expressions.4.0.0.nupkg.sha512", + "System.Linq.Expressions.nuspec" + ] + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "sha512": "+3j/n+5SlF7PKb0/s5kdord+5RyW3uUscB+0WPuYvfAvEgyx6yPdPXU9tXdDZImRohMuWnQTAG2rFojFPfoGbA==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.ObjectModel.xml", + "ref/dotnet/es/System.ObjectModel.xml", + "ref/dotnet/fr/System.ObjectModel.xml", + "ref/dotnet/it/System.ObjectModel.xml", + "ref/dotnet/ja/System.ObjectModel.xml", + "ref/dotnet/ko/System.ObjectModel.xml", + "ref/dotnet/ru/System.ObjectModel.xml", + "ref/dotnet/System.ObjectModel.dll", + "ref/dotnet/System.ObjectModel.xml", + "ref/dotnet/zh-hans/System.ObjectModel.xml", + "ref/dotnet/zh-hant/System.ObjectModel.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.ObjectModel.xml", + "ref/netcore50/es/System.ObjectModel.xml", + "ref/netcore50/fr/System.ObjectModel.xml", + "ref/netcore50/it/System.ObjectModel.xml", + "ref/netcore50/ja/System.ObjectModel.xml", + "ref/netcore50/ko/System.ObjectModel.xml", + "ref/netcore50/ru/System.ObjectModel.xml", + "ref/netcore50/System.ObjectModel.dll", + "ref/netcore50/System.ObjectModel.xml", + "ref/netcore50/zh-hans/System.ObjectModel.xml", + "ref/netcore50/zh-hant/System.ObjectModel.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.ObjectModel.4.0.0.nupkg", + "System.ObjectModel.4.0.0.nupkg.sha512", + "System.ObjectModel.nuspec" + ] + }, "System.Private.Uri/4.0.0": { "type": "package", "serviceable": true, @@ -1700,6 +2284,40 @@ "System.Reflection.nuspec" ] }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "dbYaZWCyFAu1TGYUqR2n+Q+1casSHPR2vVW0WVNkXpZbrd2BXcZ7cpvpu9C98CTHtNmyfMWCLpCclDqly23t6A==", + "files": [ + "lib/DNXCore50/System.Reflection.Extensions.dll", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Extensions.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "ref/dotnet/de/System.Reflection.Extensions.xml", + "ref/dotnet/es/System.Reflection.Extensions.xml", + "ref/dotnet/fr/System.Reflection.Extensions.xml", + "ref/dotnet/it/System.Reflection.Extensions.xml", + "ref/dotnet/ja/System.Reflection.Extensions.xml", + "ref/dotnet/ko/System.Reflection.Extensions.xml", + "ref/dotnet/ru/System.Reflection.Extensions.xml", + "ref/dotnet/System.Reflection.Extensions.dll", + "ref/dotnet/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hans/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hant/System.Reflection.Extensions.xml", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Extensions.dll", + "ref/netcore50/System.Reflection.Extensions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "runtimes/win8-aot/lib/netcore50/System.Reflection.Extensions.dll", + "System.Reflection.Extensions.4.0.0.nupkg", + "System.Reflection.Extensions.4.0.0.nupkg.sha512", + "System.Reflection.Extensions.nuspec" + ] + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "serviceable": true, @@ -1904,12 +2522,11 @@ "System.Runtime.InteropServices.nuspec" ] }, - "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23311": { + "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23321": { "type": "package", "serviceable": true, - "sha512": "76bBVSdeG3enYyNmibt8x85V2fHK8mRPlpz5cPdtl0QPj2A3Hyar+g+W5t9XSw5jPLwRB4tZn8a18bPRcCEiow==", + "sha512": "9eDT2lqk4bWh7uXWThNjGC179r8nCZj8lcDqJfUEUVpODcgiI5hY5RQ1vl62y9wSLoRdp89x8MxheCaZ97J1ag==", "files": [ - "lib/dotnet/System.Runtime.InteropServices.RuntimeInformation.dll", "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", "lib/xamarinios10/_._", @@ -1919,11 +2536,56 @@ "ref/MonoTouch10/_._", "ref/xamarinios10/_._", "ref/xamarinmac20/_._", - "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23311.nupkg", - "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23311.nupkg.sha512", + "runtime.json", + "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23321.nupkg", + "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23321.nupkg.sha512", "System.Runtime.InteropServices.RuntimeInformation.nuspec" ] }, + "System.Security.Cryptography.Algorithms/4.0.0-beta-23321": { + "type": "package", + "serviceable": true, + "sha512": "is3IkmQpNNBTyX5LTSUJUj/3vXpJTL/V60hwYP7TiXWdzXSBjF4l8Fit2ywQu/V1kvbqeae3e26hPJgghXwaKw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Algorithms.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/System.Security.Cryptography.Algorithms.dll", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Algorithms.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtime.json", + "System.Security.Cryptography.Algorithms.4.0.0-beta-23321.nupkg", + "System.Security.Cryptography.Algorithms.4.0.0-beta-23321.nupkg.sha512", + "System.Security.Cryptography.Algorithms.nuspec" + ] + }, + "System.Security.Cryptography.Primitives/4.0.0-beta-23321": { + "type": "package", + "serviceable": true, + "sha512": "/ikqSaAkgplWxYWEzu1r9g4ipQf6GERrkOOv7xNwbxMQx0Vi2y/MyJSbB14ePrcYLykJOa1c6rrPyLByAhtVyg==", + "files": [ + "lib/dotnet/System.Security.Cryptography.Primitives.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/System.Security.Cryptography.Primitives.dll", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Primitives.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Security.Cryptography.Primitives.4.0.0-beta-23321.nupkg", + "System.Security.Cryptography.Primitives.4.0.0-beta-23321.nupkg.sha512", + "System.Security.Cryptography.Primitives.nuspec" + ] + }, "System.Text.Encoding/4.0.10": { "type": "package", "sha512": "fNlSFgy4OuDlJrP9SFFxMlaLazq6ipv15sU5TiEgg9UCVnA/OgoVUfymFp4AOk1jOkW5SVxWbeeIUptcM+m/Vw==", @@ -1990,6 +2652,54 @@ "System.Text.Encoding.Extensions.nuspec" ] }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "sha512": "D2CHm8LBIymJK9+1E3sn4cUEzMd6B+quQUrCGUluv9QFBNOdL3XqNu548QKeNplEXFOmF5aKXMxXbTrjbEUNMw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Text.RegularExpressions.xml", + "ref/dotnet/es/System.Text.RegularExpressions.xml", + "ref/dotnet/fr/System.Text.RegularExpressions.xml", + "ref/dotnet/it/System.Text.RegularExpressions.xml", + "ref/dotnet/ja/System.Text.RegularExpressions.xml", + "ref/dotnet/ko/System.Text.RegularExpressions.xml", + "ref/dotnet/ru/System.Text.RegularExpressions.xml", + "ref/dotnet/System.Text.RegularExpressions.dll", + "ref/dotnet/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hans/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hant/System.Text.RegularExpressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Text.RegularExpressions.xml", + "ref/netcore50/es/System.Text.RegularExpressions.xml", + "ref/netcore50/fr/System.Text.RegularExpressions.xml", + "ref/netcore50/it/System.Text.RegularExpressions.xml", + "ref/netcore50/ja/System.Text.RegularExpressions.xml", + "ref/netcore50/ko/System.Text.RegularExpressions.xml", + "ref/netcore50/ru/System.Text.RegularExpressions.xml", + "ref/netcore50/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Text.RegularExpressions.4.0.0.nupkg", + "System.Text.RegularExpressions.4.0.0.nupkg.sha512", + "System.Text.RegularExpressions.nuspec" + ] + }, "System.Threading/4.0.10": { "type": "package", "serviceable": true, @@ -2083,10 +2793,10 @@ "System.Threading.Tasks.nuspec" ] }, - "System.Threading.ThreadPool/4.0.10-beta-23311": { + "System.Threading.ThreadPool/4.0.10-beta-23321": { "type": "package", "serviceable": true, - "sha512": "KF1vm7tZIPslDE262oI6FXlKlXOoz5K4HMR1V6DlZIstkL6CyLISv8c6vhdj3R0k2vmmVKcp2GyF4sOWbD0Y2A==", + "sha512": "C9n2qyHG1ywYg1YGZLfeF4Xn6p0eqjDchxvZNF4Ac3nH4GKmLizFTRLdQ5NbNrPJ0Ry1JDg2LEhcVEaztWk61Q==", "files": [ "lib/DNXCore50/System.Threading.ThreadPool.dll", "lib/MonoAndroid10/_._", @@ -2100,17 +2810,17 @@ "ref/net46/System.Threading.ThreadPool.dll", "ref/xamarinios10/_._", "ref/xamarinmac20/_._", - "System.Threading.ThreadPool.4.0.10-beta-23311.nupkg", - "System.Threading.ThreadPool.4.0.10-beta-23311.nupkg.sha512", + "System.Threading.ThreadPool.4.0.10-beta-23321.nupkg", + "System.Threading.ThreadPool.4.0.10-beta-23321.nupkg.sha512", "System.Threading.ThreadPool.nuspec" ] }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", - "sha512": "NMFXV0ePe/GrfhMSPGAlWmiUZCzjaatpdAGcavf2B6vYTRyMTpyJT01LI6jemMV/VSDXLrtHp0Ov9xZyR1cLLg==", + "sha512": "dVnDKBCIpLE5GaxLALnbnobqtDyTTDKJSRbqhLGrx0Ptc/n3VQRUby/CDx6v+y7xNVPqtqj0XMeDO1DVT8E3tA==", "files": [ - "xunit.2.1.0-beta3-build3029.nupkg", - "xunit.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.2.1.0-rc1-build3168.nupkg", + "xunit.2.1.0-rc1-build3168.nupkg.sha512", "xunit.nuspec" ] }, @@ -2127,105 +2837,116 @@ "xunit.abstractions.nuspec" ] }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", - "sha512": "AMS7Fv77DayXVRCBMmVEDwOXPcbxk8dCBA/iACsve+6+UQqopMtNyAynyIcXPFRK/peeitUKID4ChOXWisJmUw==", + "sha512": "lsTK4OaNGt5IOoKO3ZQ0gSFngjWSHZ5xNurNtLd0MxZv5onv66xlNmWBYCVNt4sZLknQ+RfiqYm1EZ9ZrA0SDw==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.xml", - "xunit.assert.2.1.0-beta3-build3029.nupkg", - "xunit.assert.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.assert.dll", + "lib/dotnet/xunit.assert.pdb", + "lib/dotnet/xunit.assert.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.xml", + "xunit.assert.2.1.0-rc1-build3168.nupkg", + "xunit.assert.2.1.0-rc1-build3168.nupkg.sha512", "xunit.assert.nuspec" ] }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "uDUBbwZSRx226BMwj6VylzXQPVpEIelNIulT+LxbSEH52y2a4btR9d5ptQmkSVjmJXP5/hGCc4cu1DSCu0pgUA==", + "sha512": "IcQo+pNEDYBC9HJfzY08k0NhLZMX8WXudrlhcrIAzkT2szhrLbGhUi1k6vU5n9crsVv+IxosvIH28kYf6/Z32w==", "files": [ - "build/_Desktop/xunit.execution.desktop.dll", - "build/monoandroid/xunit.core.props", - "build/monoandroid/xunit.execution.MonoAndroid.dll", - "build/monotouch/xunit.core.props", - "build/monotouch/xunit.execution.MonoTouch.dll", - "build/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.targets", - "build/portable-win81+wpa81/xunit.execution.universal.dll", - "build/portable-win81+wpa81/xunit.execution.universal.pri", - "build/wp8/xunit.core.props", - "build/wp8/xunit.core.targets", - "build/wp8/xunit.execution.wp8.dll", - "build/Xamarin.iOS/xunit.core.props", - "build/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "xunit.core.2.1.0-beta3-build3029.nupkg", - "xunit.core.2.1.0-beta3-build3029.nupkg.sha512", + "build/_desktop/xunit.execution.desktop.dll", + "build/dnx451/_._", + "build/monoandroid/_._", + "build/monotouch/_._", + "build/net45/_._", + "build/portable-net45+win8+wp8+wpa81/xunit.core.props", + "build/win8/_._", + "build/win81/xunit.core.props", + "build/wp8/_._", + "build/wpa81/xunit.core.props", + "build/xamarinios/_._", + "xunit.core.2.1.0-rc1-build3168.nupkg", + "xunit.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.core.nuspec" ] }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "lsPro5U3NLasHI/RwqjKzXiRlh9N0IOlR3cluwXYVtihXbGtySeSnU/Fh5MTcWYxh+MVpoNop5zDD0/A2nrHsA==", + "sha512": "8KZaq1mdeaiZxo1ScsGzhkeQRwLLS6+WIno+9gtnYccWmTjCJ/XSYz2fAAlB5mUeyw0vqqrFc+TfNZELs5QiZQ==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll.tdnet", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.xml", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.core.dll", + "lib/dotnet/xunit.core.dll.tdnet", + "lib/dotnet/xunit.core.pdb", + "lib/dotnet/xunit.core.xml", + "lib/dotnet/xunit.runner.tdnet.dll", + "lib/dotnet/xunit.runner.utility.desktop.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll.tdnet", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.tdnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.utility.desktop.dll", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.core.nuspec" ] }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", - "sha512": "WuUYamK4RHrHxihvNuX7NkryMhQrpH1+ziJ/mPIQbm18zevSgre8BwUuVZvmLZa8uVob3xS4dvAah2+HCgLiXg==", + "sha512": "1w0u3eB7i25hca60r/53oSVb0blMOEm2eVqvwTg9jhMSe/A9raj6UZAVzUnFtA3xLssP4K1udOGTC1qrZ9/VoA==", "files": [ - "lib/dnx451/xunit.execution.dnx.dll", - "lib/dnx451/xunit.execution.dnx.pdb", - "lib/dnx451/xunit.execution.dnx.xml", - "lib/dnxcore50/xunit.execution.dnx.dll", - "lib/dnxcore50/xunit.execution.dnx.pdb", - "lib/dnxcore50/xunit.execution.dnx.xml", - "lib/monoandroid/xunit.execution.MonoAndroid.dll", - "lib/monoandroid/xunit.execution.MonoAndroid.pdb", - "lib/monoandroid/xunit.execution.MonoAndroid.xml", - "lib/monotouch/xunit.execution.MonoTouch.dll", - "lib/monotouch/xunit.execution.MonoTouch.pdb", - "lib/monotouch/xunit.execution.MonoTouch.xml", - "lib/net45/xunit.execution.desktop.dll", - "lib/net45/xunit.execution.desktop.pdb", - "lib/net45/xunit.execution.desktop.xml", - "lib/portable-wpa81+win81/xunit.execution.universal.dll", - "lib/portable-wpa81+win81/xunit.execution.universal.pdb", - "lib/portable-wpa81+win81/xunit.execution.universal.pri", - "lib/portable-wpa81+win81/xunit.execution.universal.xml", - "lib/wp8/xunit.execution.wp8.dll", - "lib/wp8/xunit.execution.wp8.pdb", - "lib/wp8/xunit.execution.wp8.xml", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.pdb", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.xml", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dnx451/xunit.execution.dotnet.dll", + "lib/dnx451/xunit.execution.dotnet.pdb", + "lib/dnx451/xunit.execution.dotnet.xml", + "lib/dotnet/xunit.execution.dotnet.dll", + "lib/dotnet/xunit.execution.dotnet.pdb", + "lib/dotnet/xunit.execution.dotnet.xml", + "lib/monoandroid/xunit.execution.dotnet.dll", + "lib/monoandroid/xunit.execution.dotnet.pdb", + "lib/monoandroid/xunit.execution.dotnet.xml", + "lib/monotouch/xunit.execution.dotnet.dll", + "lib/monotouch/xunit.execution.dotnet.pdb", + "lib/monotouch/xunit.execution.dotnet.xml", + "lib/net35/xunit.execution.desktop.dll", + "lib/net35/xunit.execution.desktop.pdb", + "lib/net35/xunit.execution.desktop.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.xml", + "lib/win8/xunit.execution.dotnet.dll", + "lib/win8/xunit.execution.dotnet.pdb", + "lib/win8/xunit.execution.dotnet.xml", + "lib/wp8/xunit.execution.dotnet.dll", + "lib/wp8/xunit.execution.dotnet.pdb", + "lib/wp8/xunit.execution.dotnet.xml", + "lib/wpa81/xunit.execution.dotnet.dll", + "lib/wpa81/xunit.execution.dotnet.pdb", + "lib/wpa81/xunit.execution.dotnet.xml", + "lib/xamarinios/xunit.execution.dotnet.dll", + "lib/xamarinios/xunit.execution.dotnet.pdb", + "lib/xamarinios/xunit.execution.dotnet.xml", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.execution.nuspec" ] }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00093": { "type": "package", "serviceable": true, - "sha512": "P3Q9YspdSUzoJQS6iT5mF3jt+s0u9u/G3K6s0Ns7NbAwQPktjwuO7CgJk38fop4yYDVdsVEwbZF2jfNMhJ7hkQ==", + "sha512": "WNHEzFxXVBUhPIRM7k6m6GOSDLxg9CvX4mGN1xVh8rO+lWXAgX0B68zRB2MYXckokB4I2pEszmGkAmiLAsDrCA==", "files": [ "lib/dotnet/Xunit.NetCore.Extensions.dll", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg.sha512", + "xunit.netcore.extensions.1.0.0-prerelease-00093.nupkg", + "xunit.netcore.extensions.1.0.0-prerelease-00093.nupkg.sha512", "xunit.netcore.extensions.nuspec" ] } }, "projectFileDependencyGroups": { "": [ + "Microsoft.DotNet.xunit.performance >= 1.0.0-*", "System.Collections >= 4.0.10", "System.Console >= 4.0.0-beta-*", "System.Diagnostics.Debug >= 4.0.10", @@ -2239,12 +2960,13 @@ "System.Runtime.Handles >= 4.0.0", "System.Runtime.InteropServices >= 4.0.20", "System.Runtime.InteropServices.RuntimeInformation >= 4.0.0-beta-*", + "System.Security.Cryptography.Algorithms >= 4.0.0-beta-*", "System.Text.Encoding >= 4.0.10", "System.Threading.Overlapped >= 4.0.0", "System.Threading.Tasks >= 4.0.10", "System.Threading.ThreadPool >= 4.0.10-beta-*", "System.IO.Compression.TestData >= 1.0.0-prerelease", - "xunit >= 2.1.0-beta3-*", + "xunit >= 2.1.0-rc1-*", "xunit.netcore.extensions >= 1.0.0-prerelease-*" ], "DNXCore,Version=v5.0": [] diff --git a/src/System.IO.FileSystem/tests/Performance/Perf.Directory.cs b/src/System.IO.FileSystem/tests/Performance/Perf.Directory.cs new file mode 100644 index 0000000000..413bc9fccd --- /dev/null +++ b/src/System.IO.FileSystem/tests/Performance/Perf.Directory.cs @@ -0,0 +1,63 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.Xunit.Performance; + +namespace System.IO.FileSystem.Tests +{ + public class Perf_Directory + { + [Benchmark] + public void GetCurrentDirectory() + { + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + Directory.GetCurrentDirectory(); Directory.GetCurrentDirectory(); Directory.GetCurrentDirectory(); + Directory.GetCurrentDirectory(); Directory.GetCurrentDirectory(); Directory.GetCurrentDirectory(); + Directory.GetCurrentDirectory(); Directory.GetCurrentDirectory(); Directory.GetCurrentDirectory(); + } + } + } + + [Benchmark] + public void CreateDirectory() + { + foreach (var iteration in Benchmark.Iterations) + { + // Setup + string testFile = PerfUtils.GetTestFilePath(); + + // Actual perf testing + using (iteration.StartMeasurement()) + Directory.CreateDirectory(testFile); + + // Teardown + Directory.Delete(testFile); + } + } + + [Benchmark] + public void Exists() + { + // Setup + string testFile = PerfUtils.GetTestFilePath(); + Directory.CreateDirectory(testFile); + + foreach (var iteration in Benchmark.Iterations) + { + // Actual perf testing + using (iteration.StartMeasurement()) + { + Directory.Exists(testFile); Directory.Exists(testFile); Directory.Exists(testFile); + Directory.Exists(testFile); Directory.Exists(testFile); Directory.Exists(testFile); + Directory.Exists(testFile); Directory.Exists(testFile); Directory.Exists(testFile); + } + } + + // Teardown + Directory.Delete(testFile); + } + } +} diff --git a/src/System.IO.FileSystem/tests/Performance/Perf.File.cs b/src/System.IO.FileSystem/tests/Performance/Perf.File.cs new file mode 100644 index 0000000000..c0edc031c6 --- /dev/null +++ b/src/System.IO.FileSystem/tests/Performance/Perf.File.cs @@ -0,0 +1,49 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.Xunit.Performance; + +namespace System.IO.FileSystem.Tests +{ + public class Perf_File + { + [Benchmark] + public void Exists() + { + // Setup + string testFile = PerfUtils.GetTestFilePath(); + File.Create(testFile).Dispose(); + + foreach (var iteration in Benchmark.Iterations) + { + // Actual perf testing + using (iteration.StartMeasurement()) + { + File.Exists(testFile); File.Exists(testFile); File.Exists(testFile); + File.Exists(testFile); File.Exists(testFile); File.Exists(testFile); + File.Exists(testFile); File.Exists(testFile); File.Exists(testFile); + } + } + + // Teardown + File.Delete(testFile); + } + + [Benchmark] + public void Delete() + { + foreach (var iteration in Benchmark.Iterations) + { + // Setup + string testFile = PerfUtils.GetTestFilePath(); + File.Create(testFile + 1).Dispose(); File.Create(testFile + 2).Dispose(); File.Create(testFile + 3).Dispose(); + + // Actual perf testing + using (iteration.StartMeasurement()) + { + File.Delete(testFile + 1); File.Delete(testFile + 2); File.Delete(testFile + 3); + } + } + } + } +} diff --git a/src/System.IO.FileSystem/tests/Performance/Perf.FileInfo.cs b/src/System.IO.FileSystem/tests/Performance/Perf.FileInfo.cs new file mode 100644 index 0000000000..64b5276669 --- /dev/null +++ b/src/System.IO.FileSystem/tests/Performance/Perf.FileInfo.cs @@ -0,0 +1,25 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.Xunit.Performance; + +namespace System.IO.FileSystem.Tests +{ + public class Perf_FileInfo + { + [Benchmark] + public void ctor_str() + { + string path = PerfUtils.GetTestFilePath(); + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + new FileInfo(path); new FileInfo(path); new FileInfo(path); + new FileInfo(path); new FileInfo(path); new FileInfo(path); + new FileInfo(path); new FileInfo(path); new FileInfo(path); + } + } + } + } +} diff --git a/src/System.IO.FileSystem/tests/System.IO.FileSystem.Tests.csproj b/src/System.IO.FileSystem/tests/System.IO.FileSystem.Tests.csproj index 49aec22928..9d4514cc27 100644 --- a/src/System.IO.FileSystem/tests/System.IO.FileSystem.Tests.csproj +++ b/src/System.IO.FileSystem/tests/System.IO.FileSystem.Tests.csproj @@ -9,6 +9,11 @@ <AssemblyName>System.IO.FileSystem.Tests</AssemblyName> <TestCategories>InnerLoop;OuterLoop</TestCategories> </PropertyGroup> + <!-- Performance tests require v5.0 portable tools --> + <PropertyGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <TargetFrameworkVersion>v5.0</TargetFrameworkVersion> + <TargetFrameworkProfile /> + </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'"> <DebugSymbols>true</DebugSymbols> <PlatformTarget>AnyCPU</PlatformTarget> @@ -28,7 +33,6 @@ <Name>System.IO.FileSystem</Name> <Private>True</Private> </ProjectReference> - <!-- Until an updated packages is published, temporarily copy the locally built System.Runtime.Extensions library but still reference the contract from the package for compiling. @@ -165,5 +169,14 @@ <Link>Common\System\IO\FileCleanupTestBase.cs</Link> </Compile> </ItemGroup> + <!-- Performance Tests --> + <ItemGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <Compile Include="Performance\Perf.Directory.cs" /> + <Compile Include="Performance\Perf.File.cs" /> + <Compile Include="Performance\Perf.FileInfo.cs" /> + <Compile Include="$(CommonTestPath)\Performance\PerfUtils.cs"> + <Link>Common\Performance\PerfUtils.cs</Link> + </Compile> + </ItemGroup> <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> -</Project> +</Project>
\ No newline at end of file diff --git a/src/System.IO.FileSystem/tests/project.json b/src/System.IO.FileSystem/tests/project.json index 96e940b630..19c4e373c8 100644 --- a/src/System.IO.FileSystem/tests/project.json +++ b/src/System.IO.FileSystem/tests/project.json @@ -1,5 +1,6 @@ { "dependencies": { + "Microsoft.DotNet.xunit.performance": "1.0.0-*", "System.Collections": "4.0.10", "System.Console": "4.0.0-beta-*", "System.Diagnostics.Debug": "4.0.10", @@ -18,7 +19,7 @@ "System.Threading.Overlapped": "4.0.0", "System.Threading.Tasks": "4.0.10", "System.Threading.ThreadPool": "4.0.10-beta-*", - "xunit": "2.1.0-beta3-*", + "xunit": "2.1.0-rc1-*", "xunit.netcore.extensions": "1.0.0-prerelease-*" }, "frameworks": { diff --git a/src/System.IO.FileSystem/tests/project.lock.json b/src/System.IO.FileSystem/tests/project.lock.json index df3a5ddf0c..cade0983e3 100644 --- a/src/System.IO.FileSystem/tests/project.lock.json +++ b/src/System.IO.FileSystem/tests/project.lock.json @@ -3,6 +3,36 @@ "version": 1, "targets": { "DNXCore,Version=v5.0": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.Diagnostics.Debug": "4.0.10", + "System.Diagnostics.Tracing": "4.0.20", + "System.Globalization": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem": "4.0.0", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.10", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Text.Encoding": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Tasks": "4.0.10", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "2.1.0-rc1-build3168", + "xunit.extensibility.execution": "2.1.0-rc1-build3168" + }, + "compile": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + }, + "runtime": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + } + }, "System.Collections/4.0.10": { "type": "package", "dependencies": { @@ -15,7 +45,7 @@ "lib/DNXCore50/System.Collections.dll": {} } }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.IO": "4.0.0", @@ -37,6 +67,18 @@ "lib/DNXCore50/System.Diagnostics.Debug.dll": {} } }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Diagnostics.Tracing.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Diagnostics.Tracing.dll": {} + } + }, "System.Globalization/4.0.10": { "type": "package", "dependencies": { @@ -63,6 +105,30 @@ "lib/DNXCore50/System.IO.dll": {} } }, + "System.IO.FileSystem/4.0.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Resources.ResourceManager": "4.0.0", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Runtime.Handles": "4.0.0", + "System.Runtime.InteropServices": "4.0.20", + "System.Text.Encoding": "4.0.10", + "System.Text.Encoding.Extensions": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Overlapped": "4.0.0", + "System.Threading.Tasks": "4.0.10" + }, + "compile": { + "ref/dotnet/System.IO.FileSystem.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.IO.FileSystem.dll": {} + } + }, "System.IO.FileSystem.Primitives/4.0.0": { "type": "package", "dependencies": { @@ -75,7 +141,7 @@ "lib/dotnet/System.IO.FileSystem.Primitives.dll": {} } }, - "System.IO.Pipes/4.0.0-beta-23311": { + "System.IO.Pipes/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.IO": "4.0.10", @@ -113,6 +179,25 @@ "lib/dotnet/System.Linq.dll": {} } }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Linq.Expressions.dll": {} + } + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.ObjectModel.dll": {} + } + }, "System.Private.Uri/4.0.0": { "type": "package", "compile": { @@ -136,6 +221,19 @@ "lib/DNXCore50/System.Reflection.dll": {} } }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Reflection.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Reflection.Extensions.dll": {} + } + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "dependencies": { @@ -213,7 +311,7 @@ "lib/DNXCore50/System.Runtime.InteropServices.dll": {} } }, - "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23311": { + "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.Resources.ResourceManager": "4.0.0", @@ -263,6 +361,15 @@ "lib/DNXCore50/System.Text.Encoding.Extensions.dll": {} } }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Text.RegularExpressions.dll": {} + } + }, "System.Threading/4.0.10": { "type": "package", "dependencies": { @@ -301,7 +408,7 @@ "lib/DNXCore50/System.Threading.Tasks.dll": {} } }, - "System.Threading.ThreadPool/4.0.10-beta-23311": { + "System.Threading.ThreadPool/4.0.10-beta-23316": { "type": "package", "dependencies": { "System.Runtime": "4.0.0", @@ -314,11 +421,11 @@ "lib/DNXCore50/System.Threading.ThreadPool.dll": {} } }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.assert": "[2.1.0-beta3-build3029]", - "xunit.core": "[2.1.0-beta3-build3029]" + "xunit.assert": "[2.1.0-rc1-build3168]", + "xunit.core": "[2.1.0-rc1-build3168]" } }, "xunit.abstractions/2.0.0": { @@ -330,49 +437,86 @@ "lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll": {} } }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", + "dependencies": { + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.ObjectModel": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.RegularExpressions": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} } }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]", - "xunit.extensibility.execution": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]", + "xunit.extensibility.execution": "[2.1.0-rc1-build3168]" } }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { "xunit.abstractions": "[2.0.0]" }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {} + "lib/dotnet/xunit.core.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll": {} + "lib/dotnet/xunit.core.dll": {}, + "lib/dotnet/xunit.runner.tdnet.dll": {}, + "lib/dotnet/xunit.runner.utility.desktop.dll": {} } }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.0", + "System.Linq": "4.0.0", + "System.Linq.Expressions": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.Encoding": "4.0.0", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]" }, "compile": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} }, "runtime": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} } }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "dependencies": { "System.Diagnostics.Debug": "4.0.10", @@ -400,6 +544,25 @@ } }, "libraries": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "sha512": "NCrgkMUcuMy3T5PY9kcBFpRyN/HrUyHsSxvdyq426iTZj2pG+6odaztW5BrQov3gPEXM5cPx4+64djl4sC8/nw==", + "files": [ + "lib/dotnet/xunit.performance.core.dll", + "lib/dotnet/xunit.performance.core.pdb", + "lib/dotnet/xunit.performance.core.XML", + "lib/dotnet/xunit.performance.execution.dotnet.dll", + "lib/dotnet/xunit.performance.execution.dotnet.pdb", + "lib/net46/xunit.performance.core.dll", + "lib/net46/xunit.performance.core.pdb", + "lib/net46/xunit.performance.core.XML", + "lib/net46/xunit.performance.execution.desktop.dll", + "lib/net46/xunit.performance.execution.desktop.pdb", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg.sha512", + "Microsoft.DotNet.xunit.performance.nuspec" + ] + }, "System.Collections/4.0.10": { "type": "package", "serviceable": true, @@ -434,10 +597,10 @@ "System.Collections.nuspec" ] }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "aCYId/+628/CuOEBKx7sGxQ9fpqvLDqkOMuc0rqWRUCAIgNLtLd5htaQo58aXjzrP8D4/X35xVC+PQoHHis4Mg==", + "sha512": "pYDflUHKD2oIllR+HsbgfkbwNsjivEgYsFjM3eZWS6KVqa5vYVMl93OvC+WfB0Va3Q9gAZYzxXQJUv6gWoJGLw==", "files": [ "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", @@ -451,8 +614,8 @@ "ref/xamarinios10/_._", "ref/xamarinmac20/_._", "runtime.json", - "System.Console.4.0.0-beta-23311.nupkg", - "System.Console.4.0.0-beta-23311.nupkg.sha512", + "System.Console.4.0.0-beta-23316.nupkg", + "System.Console.4.0.0-beta-23316.nupkg.sha512", "System.Console.nuspec" ] }, @@ -490,6 +653,40 @@ "System.Diagnostics.Debug.nuspec" ] }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "serviceable": true, + "sha512": "gn/wexGHc35Fv++5L1gYHMY5g25COfiZ0PGrL+3PfwzoJd4X2LbTAm/U8d385SI6BKQBI/z4dQfvneS9J27+Tw==", + "files": [ + "lib/DNXCore50/System.Diagnostics.Tracing.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Diagnostics.Tracing.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Diagnostics.Tracing.xml", + "ref/dotnet/es/System.Diagnostics.Tracing.xml", + "ref/dotnet/fr/System.Diagnostics.Tracing.xml", + "ref/dotnet/it/System.Diagnostics.Tracing.xml", + "ref/dotnet/ja/System.Diagnostics.Tracing.xml", + "ref/dotnet/ko/System.Diagnostics.Tracing.xml", + "ref/dotnet/ru/System.Diagnostics.Tracing.xml", + "ref/dotnet/System.Diagnostics.Tracing.dll", + "ref/dotnet/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hans/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hant/System.Diagnostics.Tracing.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Diagnostics.Tracing.dll", + "System.Diagnostics.Tracing.4.0.20.nupkg", + "System.Diagnostics.Tracing.4.0.20.nupkg.sha512", + "System.Diagnostics.Tracing.nuspec" + ] + }, "System.Globalization/4.0.10": { "type": "package", "sha512": "kzRtbbCNAxdafFBDogcM36ehA3th8c1PGiz8QRkZn8O5yMBorDHSK8/TGJPYOaCS5zdsGk0u9qXHnW91nqy7fw==", @@ -557,6 +754,39 @@ "System.IO.nuspec" ] }, + "System.IO.FileSystem/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "eo05SPWfG+54UA0wxgRIYOuOslq+2QrJLXZaJDDsfLXG15OLguaItW39NYZTqUb4DeGOkU4R0wpOLOW4ynMUDQ==", + "files": [ + "lib/DNXCore50/System.IO.FileSystem.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.dll", + "lib/netcore50/System.IO.FileSystem.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.IO.FileSystem.xml", + "ref/dotnet/es/System.IO.FileSystem.xml", + "ref/dotnet/fr/System.IO.FileSystem.xml", + "ref/dotnet/it/System.IO.FileSystem.xml", + "ref/dotnet/ja/System.IO.FileSystem.xml", + "ref/dotnet/ko/System.IO.FileSystem.xml", + "ref/dotnet/ru/System.IO.FileSystem.xml", + "ref/dotnet/System.IO.FileSystem.dll", + "ref/dotnet/System.IO.FileSystem.xml", + "ref/dotnet/zh-hans/System.IO.FileSystem.xml", + "ref/dotnet/zh-hant/System.IO.FileSystem.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.IO.FileSystem.4.0.0.nupkg", + "System.IO.FileSystem.4.0.0.nupkg.sha512", + "System.IO.FileSystem.nuspec" + ] + }, "System.IO.FileSystem.Primitives/4.0.0": { "type": "package", "serviceable": true, @@ -589,10 +819,10 @@ "System.IO.FileSystem.Primitives.nuspec" ] }, - "System.IO.Pipes/4.0.0-beta-23311": { + "System.IO.Pipes/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "5d6NEneBaLGfVsxqs4ijhKsH97pZGKQJtGqfLQXJ6pLo4YskfSZTv8fcmhp75phYecHPswWn1Z1O5c1jQHAOKA==", + "sha512": "g/1JXT4o/UOrcmTBNHbGXnRci2L0TBMLGrtw9m0o0GACABVJFKJWWGXlAFB8pHUNJVOOGaowwqkHpHie8SbMkA==", "files": [ "de/System.IO.Pipes.xml", "es/System.IO.Pipes.xml", @@ -605,8 +835,8 @@ "ref/dotnet/System.IO.Pipes.dll", "ref/net46/System.IO.Pipes.dll", "ru/System.IO.Pipes.xml", - "System.IO.Pipes.4.0.0-beta-23311.nupkg", - "System.IO.Pipes.4.0.0-beta-23311.nupkg.sha512", + "System.IO.Pipes.4.0.0-beta-23316.nupkg", + "System.IO.Pipes.4.0.0-beta-23316.nupkg.sha512", "System.IO.Pipes.nuspec", "System.IO.Pipes.xml", "zh-hans/System.IO.Pipes.xml", @@ -646,6 +876,102 @@ "System.Linq.nuspec" ] }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "sha512": "wlfVllrKi+evu4Hi8yoJP1dSOVXbvsy7Hs1+oz4Cykfdf6MQTPlD3LI4WKWhprn8FpU5MS3spPSbcMX5sAoJSw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Linq.Expressions.xml", + "ref/dotnet/es/System.Linq.Expressions.xml", + "ref/dotnet/fr/System.Linq.Expressions.xml", + "ref/dotnet/it/System.Linq.Expressions.xml", + "ref/dotnet/ja/System.Linq.Expressions.xml", + "ref/dotnet/ko/System.Linq.Expressions.xml", + "ref/dotnet/ru/System.Linq.Expressions.xml", + "ref/dotnet/System.Linq.Expressions.dll", + "ref/dotnet/System.Linq.Expressions.xml", + "ref/dotnet/zh-hans/System.Linq.Expressions.xml", + "ref/dotnet/zh-hant/System.Linq.Expressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Linq.Expressions.xml", + "ref/netcore50/es/System.Linq.Expressions.xml", + "ref/netcore50/fr/System.Linq.Expressions.xml", + "ref/netcore50/it/System.Linq.Expressions.xml", + "ref/netcore50/ja/System.Linq.Expressions.xml", + "ref/netcore50/ko/System.Linq.Expressions.xml", + "ref/netcore50/ru/System.Linq.Expressions.xml", + "ref/netcore50/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.xml", + "ref/netcore50/zh-hans/System.Linq.Expressions.xml", + "ref/netcore50/zh-hant/System.Linq.Expressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Linq.Expressions.4.0.0.nupkg", + "System.Linq.Expressions.4.0.0.nupkg.sha512", + "System.Linq.Expressions.nuspec" + ] + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "sha512": "+3j/n+5SlF7PKb0/s5kdord+5RyW3uUscB+0WPuYvfAvEgyx6yPdPXU9tXdDZImRohMuWnQTAG2rFojFPfoGbA==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.ObjectModel.xml", + "ref/dotnet/es/System.ObjectModel.xml", + "ref/dotnet/fr/System.ObjectModel.xml", + "ref/dotnet/it/System.ObjectModel.xml", + "ref/dotnet/ja/System.ObjectModel.xml", + "ref/dotnet/ko/System.ObjectModel.xml", + "ref/dotnet/ru/System.ObjectModel.xml", + "ref/dotnet/System.ObjectModel.dll", + "ref/dotnet/System.ObjectModel.xml", + "ref/dotnet/zh-hans/System.ObjectModel.xml", + "ref/dotnet/zh-hant/System.ObjectModel.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.ObjectModel.xml", + "ref/netcore50/es/System.ObjectModel.xml", + "ref/netcore50/fr/System.ObjectModel.xml", + "ref/netcore50/it/System.ObjectModel.xml", + "ref/netcore50/ja/System.ObjectModel.xml", + "ref/netcore50/ko/System.ObjectModel.xml", + "ref/netcore50/ru/System.ObjectModel.xml", + "ref/netcore50/System.ObjectModel.dll", + "ref/netcore50/System.ObjectModel.xml", + "ref/netcore50/zh-hans/System.ObjectModel.xml", + "ref/netcore50/zh-hant/System.ObjectModel.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.ObjectModel.4.0.0.nupkg", + "System.ObjectModel.4.0.0.nupkg.sha512", + "System.ObjectModel.nuspec" + ] + }, "System.Private.Uri/4.0.0": { "type": "package", "serviceable": true, @@ -694,6 +1020,40 @@ "System.Reflection.nuspec" ] }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "dbYaZWCyFAu1TGYUqR2n+Q+1casSHPR2vVW0WVNkXpZbrd2BXcZ7cpvpu9C98CTHtNmyfMWCLpCclDqly23t6A==", + "files": [ + "lib/DNXCore50/System.Reflection.Extensions.dll", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Extensions.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "ref/dotnet/de/System.Reflection.Extensions.xml", + "ref/dotnet/es/System.Reflection.Extensions.xml", + "ref/dotnet/fr/System.Reflection.Extensions.xml", + "ref/dotnet/it/System.Reflection.Extensions.xml", + "ref/dotnet/ja/System.Reflection.Extensions.xml", + "ref/dotnet/ko/System.Reflection.Extensions.xml", + "ref/dotnet/ru/System.Reflection.Extensions.xml", + "ref/dotnet/System.Reflection.Extensions.dll", + "ref/dotnet/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hans/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hant/System.Reflection.Extensions.xml", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Extensions.dll", + "ref/netcore50/System.Reflection.Extensions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "runtimes/win8-aot/lib/netcore50/System.Reflection.Extensions.dll", + "System.Reflection.Extensions.4.0.0.nupkg", + "System.Reflection.Extensions.4.0.0.nupkg.sha512", + "System.Reflection.Extensions.nuspec" + ] + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "serviceable": true, @@ -898,10 +1258,10 @@ "System.Runtime.InteropServices.nuspec" ] }, - "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23311": { + "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "76bBVSdeG3enYyNmibt8x85V2fHK8mRPlpz5cPdtl0QPj2A3Hyar+g+W5t9XSw5jPLwRB4tZn8a18bPRcCEiow==", + "sha512": "3iuy8asS4InpTBRCWcSx6/gzPJWnwXQitPa83mMBBrdNoXm05YpTVVR/XYeCMOMFLRlprzl9Mw9FbOHiQpsQyw==", "files": [ "lib/dotnet/System.Runtime.InteropServices.RuntimeInformation.dll", "lib/MonoAndroid10/_._", @@ -913,8 +1273,8 @@ "ref/MonoTouch10/_._", "ref/xamarinios10/_._", "ref/xamarinmac20/_._", - "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23311.nupkg", - "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23311.nupkg.sha512", + "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23316.nupkg", + "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23316.nupkg.sha512", "System.Runtime.InteropServices.RuntimeInformation.nuspec" ] }, @@ -1017,6 +1377,54 @@ "System.Text.Encoding.Extensions.nuspec" ] }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "sha512": "D2CHm8LBIymJK9+1E3sn4cUEzMd6B+quQUrCGUluv9QFBNOdL3XqNu548QKeNplEXFOmF5aKXMxXbTrjbEUNMw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Text.RegularExpressions.xml", + "ref/dotnet/es/System.Text.RegularExpressions.xml", + "ref/dotnet/fr/System.Text.RegularExpressions.xml", + "ref/dotnet/it/System.Text.RegularExpressions.xml", + "ref/dotnet/ja/System.Text.RegularExpressions.xml", + "ref/dotnet/ko/System.Text.RegularExpressions.xml", + "ref/dotnet/ru/System.Text.RegularExpressions.xml", + "ref/dotnet/System.Text.RegularExpressions.dll", + "ref/dotnet/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hans/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hant/System.Text.RegularExpressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Text.RegularExpressions.xml", + "ref/netcore50/es/System.Text.RegularExpressions.xml", + "ref/netcore50/fr/System.Text.RegularExpressions.xml", + "ref/netcore50/it/System.Text.RegularExpressions.xml", + "ref/netcore50/ja/System.Text.RegularExpressions.xml", + "ref/netcore50/ko/System.Text.RegularExpressions.xml", + "ref/netcore50/ru/System.Text.RegularExpressions.xml", + "ref/netcore50/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Text.RegularExpressions.4.0.0.nupkg", + "System.Text.RegularExpressions.4.0.0.nupkg.sha512", + "System.Text.RegularExpressions.nuspec" + ] + }, "System.Threading/4.0.10": { "type": "package", "serviceable": true, @@ -1110,10 +1518,10 @@ "System.Threading.Tasks.nuspec" ] }, - "System.Threading.ThreadPool/4.0.10-beta-23311": { + "System.Threading.ThreadPool/4.0.10-beta-23316": { "type": "package", "serviceable": true, - "sha512": "KF1vm7tZIPslDE262oI6FXlKlXOoz5K4HMR1V6DlZIstkL6CyLISv8c6vhdj3R0k2vmmVKcp2GyF4sOWbD0Y2A==", + "sha512": "bLByUFcpDs94+guIu/2of2rOA/zB/7dzPks3HNv98AqIQ1ObeQCpPkrSitr+E/pW6nDvdIH4I47KGve6yiBMFg==", "files": [ "lib/DNXCore50/System.Threading.ThreadPool.dll", "lib/MonoAndroid10/_._", @@ -1127,17 +1535,17 @@ "ref/net46/System.Threading.ThreadPool.dll", "ref/xamarinios10/_._", "ref/xamarinmac20/_._", - "System.Threading.ThreadPool.4.0.10-beta-23311.nupkg", - "System.Threading.ThreadPool.4.0.10-beta-23311.nupkg.sha512", + "System.Threading.ThreadPool.4.0.10-beta-23316.nupkg", + "System.Threading.ThreadPool.4.0.10-beta-23316.nupkg.sha512", "System.Threading.ThreadPool.nuspec" ] }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", - "sha512": "NMFXV0ePe/GrfhMSPGAlWmiUZCzjaatpdAGcavf2B6vYTRyMTpyJT01LI6jemMV/VSDXLrtHp0Ov9xZyR1cLLg==", + "sha512": "dVnDKBCIpLE5GaxLALnbnobqtDyTTDKJSRbqhLGrx0Ptc/n3VQRUby/CDx6v+y7xNVPqtqj0XMeDO1DVT8E3tA==", "files": [ - "xunit.2.1.0-beta3-build3029.nupkg", - "xunit.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.2.1.0-rc1-build3168.nupkg", + "xunit.2.1.0-rc1-build3168.nupkg.sha512", "xunit.nuspec" ] }, @@ -1154,105 +1562,116 @@ "xunit.abstractions.nuspec" ] }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", - "sha512": "AMS7Fv77DayXVRCBMmVEDwOXPcbxk8dCBA/iACsve+6+UQqopMtNyAynyIcXPFRK/peeitUKID4ChOXWisJmUw==", + "sha512": "lsTK4OaNGt5IOoKO3ZQ0gSFngjWSHZ5xNurNtLd0MxZv5onv66xlNmWBYCVNt4sZLknQ+RfiqYm1EZ9ZrA0SDw==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.xml", - "xunit.assert.2.1.0-beta3-build3029.nupkg", - "xunit.assert.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.assert.dll", + "lib/dotnet/xunit.assert.pdb", + "lib/dotnet/xunit.assert.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.xml", + "xunit.assert.2.1.0-rc1-build3168.nupkg", + "xunit.assert.2.1.0-rc1-build3168.nupkg.sha512", "xunit.assert.nuspec" ] }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "uDUBbwZSRx226BMwj6VylzXQPVpEIelNIulT+LxbSEH52y2a4btR9d5ptQmkSVjmJXP5/hGCc4cu1DSCu0pgUA==", + "sha512": "IcQo+pNEDYBC9HJfzY08k0NhLZMX8WXudrlhcrIAzkT2szhrLbGhUi1k6vU5n9crsVv+IxosvIH28kYf6/Z32w==", "files": [ - "build/_Desktop/xunit.execution.desktop.dll", - "build/monoandroid/xunit.core.props", - "build/monoandroid/xunit.execution.MonoAndroid.dll", - "build/monotouch/xunit.core.props", - "build/monotouch/xunit.execution.MonoTouch.dll", - "build/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.targets", - "build/portable-win81+wpa81/xunit.execution.universal.dll", - "build/portable-win81+wpa81/xunit.execution.universal.pri", - "build/wp8/xunit.core.props", - "build/wp8/xunit.core.targets", - "build/wp8/xunit.execution.wp8.dll", - "build/Xamarin.iOS/xunit.core.props", - "build/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "xunit.core.2.1.0-beta3-build3029.nupkg", - "xunit.core.2.1.0-beta3-build3029.nupkg.sha512", + "build/_desktop/xunit.execution.desktop.dll", + "build/dnx451/_._", + "build/monoandroid/_._", + "build/monotouch/_._", + "build/net45/_._", + "build/portable-net45+win8+wp8+wpa81/xunit.core.props", + "build/win8/_._", + "build/win81/xunit.core.props", + "build/wp8/_._", + "build/wpa81/xunit.core.props", + "build/xamarinios/_._", + "xunit.core.2.1.0-rc1-build3168.nupkg", + "xunit.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.core.nuspec" ] }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "lsPro5U3NLasHI/RwqjKzXiRlh9N0IOlR3cluwXYVtihXbGtySeSnU/Fh5MTcWYxh+MVpoNop5zDD0/A2nrHsA==", + "sha512": "8KZaq1mdeaiZxo1ScsGzhkeQRwLLS6+WIno+9gtnYccWmTjCJ/XSYz2fAAlB5mUeyw0vqqrFc+TfNZELs5QiZQ==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll.tdnet", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.xml", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.core.dll", + "lib/dotnet/xunit.core.dll.tdnet", + "lib/dotnet/xunit.core.pdb", + "lib/dotnet/xunit.core.xml", + "lib/dotnet/xunit.runner.tdnet.dll", + "lib/dotnet/xunit.runner.utility.desktop.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll.tdnet", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.tdnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.utility.desktop.dll", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.core.nuspec" ] }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", - "sha512": "WuUYamK4RHrHxihvNuX7NkryMhQrpH1+ziJ/mPIQbm18zevSgre8BwUuVZvmLZa8uVob3xS4dvAah2+HCgLiXg==", + "sha512": "1w0u3eB7i25hca60r/53oSVb0blMOEm2eVqvwTg9jhMSe/A9raj6UZAVzUnFtA3xLssP4K1udOGTC1qrZ9/VoA==", "files": [ - "lib/dnx451/xunit.execution.dnx.dll", - "lib/dnx451/xunit.execution.dnx.pdb", - "lib/dnx451/xunit.execution.dnx.xml", - "lib/dnxcore50/xunit.execution.dnx.dll", - "lib/dnxcore50/xunit.execution.dnx.pdb", - "lib/dnxcore50/xunit.execution.dnx.xml", - "lib/monoandroid/xunit.execution.MonoAndroid.dll", - "lib/monoandroid/xunit.execution.MonoAndroid.pdb", - "lib/monoandroid/xunit.execution.MonoAndroid.xml", - "lib/monotouch/xunit.execution.MonoTouch.dll", - "lib/monotouch/xunit.execution.MonoTouch.pdb", - "lib/monotouch/xunit.execution.MonoTouch.xml", - "lib/net45/xunit.execution.desktop.dll", - "lib/net45/xunit.execution.desktop.pdb", - "lib/net45/xunit.execution.desktop.xml", - "lib/portable-wpa81+win81/xunit.execution.universal.dll", - "lib/portable-wpa81+win81/xunit.execution.universal.pdb", - "lib/portable-wpa81+win81/xunit.execution.universal.pri", - "lib/portable-wpa81+win81/xunit.execution.universal.xml", - "lib/wp8/xunit.execution.wp8.dll", - "lib/wp8/xunit.execution.wp8.pdb", - "lib/wp8/xunit.execution.wp8.xml", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.pdb", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.xml", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dnx451/xunit.execution.dotnet.dll", + "lib/dnx451/xunit.execution.dotnet.pdb", + "lib/dnx451/xunit.execution.dotnet.xml", + "lib/dotnet/xunit.execution.dotnet.dll", + "lib/dotnet/xunit.execution.dotnet.pdb", + "lib/dotnet/xunit.execution.dotnet.xml", + "lib/monoandroid/xunit.execution.dotnet.dll", + "lib/monoandroid/xunit.execution.dotnet.pdb", + "lib/monoandroid/xunit.execution.dotnet.xml", + "lib/monotouch/xunit.execution.dotnet.dll", + "lib/monotouch/xunit.execution.dotnet.pdb", + "lib/monotouch/xunit.execution.dotnet.xml", + "lib/net35/xunit.execution.desktop.dll", + "lib/net35/xunit.execution.desktop.pdb", + "lib/net35/xunit.execution.desktop.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.xml", + "lib/win8/xunit.execution.dotnet.dll", + "lib/win8/xunit.execution.dotnet.pdb", + "lib/win8/xunit.execution.dotnet.xml", + "lib/wp8/xunit.execution.dotnet.dll", + "lib/wp8/xunit.execution.dotnet.pdb", + "lib/wp8/xunit.execution.dotnet.xml", + "lib/wpa81/xunit.execution.dotnet.dll", + "lib/wpa81/xunit.execution.dotnet.pdb", + "lib/wpa81/xunit.execution.dotnet.xml", + "lib/xamarinios/xunit.execution.dotnet.dll", + "lib/xamarinios/xunit.execution.dotnet.pdb", + "lib/xamarinios/xunit.execution.dotnet.xml", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.execution.nuspec" ] }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "serviceable": true, - "sha512": "P3Q9YspdSUzoJQS6iT5mF3jt+s0u9u/G3K6s0Ns7NbAwQPktjwuO7CgJk38fop4yYDVdsVEwbZF2jfNMhJ7hkQ==", + "sha512": "9t2jrzI6N5ueydH5omBi95hiBOuNXpI6sS2kQJO56+bUavVpSD6/aD0C4+Nqbiql8Zvu0yx2GO+2IAd0JQcjIA==", "files": [ "lib/dotnet/Xunit.NetCore.Extensions.dll", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg.sha512", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg.sha512", "xunit.netcore.extensions.nuspec" ] } }, "projectFileDependencyGroups": { "": [ + "Microsoft.DotNet.xunit.performance >= 1.0.0-*", "System.Collections >= 4.0.10", "System.Console >= 4.0.0-beta-*", "System.Diagnostics.Debug >= 4.0.10", @@ -1271,7 +1690,7 @@ "System.Threading.Overlapped >= 4.0.0", "System.Threading.Tasks >= 4.0.10", "System.Threading.ThreadPool >= 4.0.10-beta-*", - "xunit >= 2.1.0-beta3-*", + "xunit >= 2.1.0-rc1-*", "xunit.netcore.extensions >= 1.0.0-prerelease-*" ], "DNXCore,Version=v5.0": [] diff --git a/src/System.Runtime.Extensions/tests/Performance/Perf.Environment.cs b/src/System.Runtime.Extensions/tests/Performance/Perf.Environment.cs new file mode 100644 index 0000000000..298c43398c --- /dev/null +++ b/src/System.Runtime.Extensions/tests/Performance/Perf.Environment.cs @@ -0,0 +1,68 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.Xunit.Performance; +using System.Runtime.InteropServices; + +namespace System.Runtime.Extensions.Tests +{ + public class Perf_Environment + { + [Benchmark] + public void GetEnvironmentVariable() + { + string env = PerfUtils.CreateString(15); + try + { + // setup the environment variable so we can read it + Environment.SetEnvironmentVariable(env, "value"); + + // read the valid environment variable for the test + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + Environment.GetEnvironmentVariable(env); Environment.GetEnvironmentVariable(env); Environment.GetEnvironmentVariable(env); + Environment.GetEnvironmentVariable(env); Environment.GetEnvironmentVariable(env); Environment.GetEnvironmentVariable(env); + Environment.GetEnvironmentVariable(env); Environment.GetEnvironmentVariable(env); Environment.GetEnvironmentVariable(env); + } + } + } + finally + { + // clear the variable that we set + Environment.SetEnvironmentVariable(env, null); + } + } + + [Benchmark] + public void ExpandEnvironmentVariables() + { + string env = PerfUtils.CreateString(15); + string inputEnv = "%" + env + "%"; + try + { + // setup the environment variable so we can read it + Environment.SetEnvironmentVariable(env, "value"); + + // read the valid environment variable + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + Environment.ExpandEnvironmentVariables(inputEnv); Environment.ExpandEnvironmentVariables(inputEnv); + Environment.ExpandEnvironmentVariables(inputEnv); Environment.ExpandEnvironmentVariables(inputEnv); + Environment.ExpandEnvironmentVariables(inputEnv); Environment.ExpandEnvironmentVariables(inputEnv); + Environment.ExpandEnvironmentVariables(inputEnv); Environment.ExpandEnvironmentVariables(inputEnv); + Environment.ExpandEnvironmentVariables(inputEnv); Environment.ExpandEnvironmentVariables(inputEnv); + } + } + } + finally + { + // clear the variable that we set + Environment.SetEnvironmentVariable(env, null); + } + } + } +} diff --git a/src/System.Runtime.Extensions/tests/Performance/Perf.Path.cs b/src/System.Runtime.Extensions/tests/Performance/Perf.Path.cs new file mode 100644 index 0000000000..b7a0746507 --- /dev/null +++ b/src/System.Runtime.Extensions/tests/Performance/Perf.Path.cs @@ -0,0 +1,60 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System.IO; +using Microsoft.Xunit.Performance; + +namespace System.Runtime.Extensions.Tests +{ + public class Perf_Path + { + [Benchmark] + public void Combine() + { + foreach (var iteration in Benchmark.Iterations) + { + // Setup + string testPath1 = PerfUtils.GetTestFilePath(); + string testPath2 = PerfUtils.CreateString(10); + + // Actual perf testing + using (iteration.StartMeasurement()) + { + Path.Combine(testPath1, testPath2); Path.Combine(testPath1, testPath2); Path.Combine(testPath1, testPath2); + Path.Combine(testPath1, testPath2); Path.Combine(testPath1, testPath2); Path.Combine(testPath1, testPath2); + Path.Combine(testPath1, testPath2); Path.Combine(testPath1, testPath2); Path.Combine(testPath1, testPath2); + } + } + } + + [Benchmark] + public void GetFileName() + { + string testPath = PerfUtils.GetTestFilePath(); + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + Path.GetFileName(testPath); Path.GetFileName(testPath); Path.GetFileName(testPath); + Path.GetFileName(testPath); Path.GetFileName(testPath); Path.GetFileName(testPath); + Path.GetFileName(testPath); Path.GetFileName(testPath); Path.GetFileName(testPath); + } + } + } + + [Benchmark] + public void GetDirectoryName() + { + string testPath = PerfUtils.GetTestFilePath(); + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + Path.GetDirectoryName(testPath); Path.GetDirectoryName(testPath); Path.GetDirectoryName(testPath); + Path.GetDirectoryName(testPath); Path.GetDirectoryName(testPath); Path.GetDirectoryName(testPath); + Path.GetDirectoryName(testPath); Path.GetDirectoryName(testPath); Path.GetDirectoryName(testPath); + } + } + } + } +} diff --git a/src/System.Runtime.Extensions/tests/Performance/Perf.Random.cs b/src/System.Runtime.Extensions/tests/Performance/Perf.Random.cs new file mode 100644 index 0000000000..9c58a42fa8 --- /dev/null +++ b/src/System.Runtime.Extensions/tests/Performance/Perf.Random.cs @@ -0,0 +1,53 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System.IO; +using Microsoft.Xunit.Performance; + +namespace System.Runtime.Extensions.Tests +{ + public class Perf_Random + { + [Benchmark] + public void ctor() + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + new Random(); new Random(); new Random(); + new Random(); new Random(); new Random(); + new Random(); new Random(); new Random(); + } + } + + [Benchmark] + public void Next_int() + { + Random rand = new Random(123456); + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + rand.Next(10000); rand.Next(10000); rand.Next(10000); + rand.Next(10000); rand.Next(10000); rand.Next(10000); + rand.Next(10000); rand.Next(10000); rand.Next(10000); + } + } + } + + [Benchmark] + public void Next_int_int() + { + Random rand = new Random(123456); + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + rand.Next(100, 10000); rand.Next(100, 10000); rand.Next(100, 10000); + rand.Next(100, 10000); rand.Next(100, 10000); rand.Next(100, 10000); + rand.Next(100, 10000); rand.Next(100, 10000); rand.Next(100, 10000); + } + } + } + } +} diff --git a/src/System.Runtime.Extensions/tests/System.Runtime.Extensions.Tests.csproj b/src/System.Runtime.Extensions/tests/System.Runtime.Extensions.Tests.csproj index 4b490995d7..5fa51579c7 100644 --- a/src/System.Runtime.Extensions/tests/System.Runtime.Extensions.Tests.csproj +++ b/src/System.Runtime.Extensions/tests/System.Runtime.Extensions.Tests.csproj @@ -11,6 +11,11 @@ <RestorePackages>true</RestorePackages> <AllowUnsafeBlocks>true</AllowUnsafeBlocks> </PropertyGroup> + <!-- Performance tests require v5.0 portable tools --> + <PropertyGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <TargetFrameworkVersion>v5.0</TargetFrameworkVersion> + <TargetFrameworkProfile /> + </PropertyGroup> <!-- Default configurations to help VS understand the configurations --> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> </PropertyGroup> @@ -55,6 +60,15 @@ <Compile Include="System\Random.cs" /> <Compile Include="System\StringComparer.cs" /> </ItemGroup> + <!-- Performance Tests --> + <ItemGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <Compile Include="Performance\Perf.Environment.cs" /> + <Compile Include="Performance\Perf.Path.cs" /> + <Compile Include="Performance\Perf.Random.cs" /> + <Compile Include="$(CommonTestPath)\Performance\PerfUtils.cs"> + <Link>Common\Performance\PerfUtils.cs</Link> + </Compile> + </ItemGroup> <ItemGroup> <None Include="project.json" /> </ItemGroup> diff --git a/src/System.Runtime.Extensions/tests/project.json b/src/System.Runtime.Extensions/tests/project.json index 7dd267d86b..fb4ca0514c 100644 --- a/src/System.Runtime.Extensions/tests/project.json +++ b/src/System.Runtime.Extensions/tests/project.json @@ -1,5 +1,6 @@ { "dependencies": { + "Microsoft.DotNet.xunit.performance": "1.0.0-*", "System.Console": "4.0.0-beta-*", "System.IO.FileSystem": "4.0.0", "System.Globalization": "4.0.10", @@ -9,7 +10,7 @@ "System.Runtime.InteropServices.RuntimeInformation": "4.0.0-beta-*", "System.Threading": "4.0.10", "System.Threading.Tasks": "4.0.10", - "xunit": "2.1.0-beta3-*", + "xunit": "2.1.0-rc1-*", "xunit.netcore.extensions": "1.0.0-prerelease-*" }, "frameworks": { diff --git a/src/System.Runtime.Extensions/tests/project.lock.json b/src/System.Runtime.Extensions/tests/project.lock.json index 13a48165c0..558d6a5605 100644 --- a/src/System.Runtime.Extensions/tests/project.lock.json +++ b/src/System.Runtime.Extensions/tests/project.lock.json @@ -3,6 +3,36 @@ "version": 1, "targets": { "DNXCore,Version=v5.0": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.Diagnostics.Debug": "4.0.10", + "System.Diagnostics.Tracing": "4.0.20", + "System.Globalization": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem": "4.0.0", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.10", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Text.Encoding": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Tasks": "4.0.10", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "2.1.0-rc1-build3168", + "xunit.extensibility.execution": "2.1.0-rc1-build3168" + }, + "compile": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + }, + "runtime": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + } + }, "System.Collections/4.0.10": { "type": "package", "dependencies": { @@ -15,7 +45,7 @@ "lib/DNXCore50/System.Collections.dll": {} } }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.IO": "4.0.0", @@ -37,6 +67,18 @@ "lib/DNXCore50/System.Diagnostics.Debug.dll": {} } }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Diagnostics.Tracing.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Diagnostics.Tracing.dll": {} + } + }, "System.Globalization/4.0.10": { "type": "package", "dependencies": { @@ -115,6 +157,25 @@ "lib/dotnet/System.Linq.dll": {} } }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Linq.Expressions.dll": {} + } + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.ObjectModel.dll": {} + } + }, "System.Private.Uri/4.0.0": { "type": "package", "compile": { @@ -138,6 +199,19 @@ "lib/DNXCore50/System.Reflection.dll": {} } }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Reflection.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Reflection.Extensions.dll": {} + } + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "dependencies": { @@ -215,7 +289,7 @@ "lib/DNXCore50/System.Runtime.InteropServices.dll": {} } }, - "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23311": { + "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.Resources.ResourceManager": "4.0.0", @@ -253,6 +327,15 @@ "lib/DNXCore50/System.Text.Encoding.Extensions.dll": {} } }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Text.RegularExpressions.dll": {} + } + }, "System.Threading/4.0.10": { "type": "package", "dependencies": { @@ -291,11 +374,11 @@ "lib/DNXCore50/System.Threading.Tasks.dll": {} } }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.assert": "[2.1.0-beta3-build3029]", - "xunit.core": "[2.1.0-beta3-build3029]" + "xunit.assert": "[2.1.0-rc1-build3168]", + "xunit.core": "[2.1.0-rc1-build3168]" } }, "xunit.abstractions/2.0.0": { @@ -307,49 +390,86 @@ "lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll": {} } }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", + "dependencies": { + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.ObjectModel": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.RegularExpressions": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} } }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]", - "xunit.extensibility.execution": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]", + "xunit.extensibility.execution": "[2.1.0-rc1-build3168]" } }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { "xunit.abstractions": "[2.0.0]" }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {} + "lib/dotnet/xunit.core.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll": {} + "lib/dotnet/xunit.core.dll": {}, + "lib/dotnet/xunit.runner.tdnet.dll": {}, + "lib/dotnet/xunit.runner.utility.desktop.dll": {} } }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.0", + "System.Linq": "4.0.0", + "System.Linq.Expressions": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.Encoding": "4.0.0", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]" }, "compile": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} }, "runtime": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} } }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "dependencies": { "System.Diagnostics.Debug": "4.0.10", @@ -377,6 +497,25 @@ } }, "libraries": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "sha512": "NCrgkMUcuMy3T5PY9kcBFpRyN/HrUyHsSxvdyq426iTZj2pG+6odaztW5BrQov3gPEXM5cPx4+64djl4sC8/nw==", + "files": [ + "lib/dotnet/xunit.performance.core.dll", + "lib/dotnet/xunit.performance.core.pdb", + "lib/dotnet/xunit.performance.core.XML", + "lib/dotnet/xunit.performance.execution.dotnet.dll", + "lib/dotnet/xunit.performance.execution.dotnet.pdb", + "lib/net46/xunit.performance.core.dll", + "lib/net46/xunit.performance.core.pdb", + "lib/net46/xunit.performance.core.XML", + "lib/net46/xunit.performance.execution.desktop.dll", + "lib/net46/xunit.performance.execution.desktop.pdb", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg.sha512", + "Microsoft.DotNet.xunit.performance.nuspec" + ] + }, "System.Collections/4.0.10": { "type": "package", "serviceable": true, @@ -411,10 +550,10 @@ "System.Collections.nuspec" ] }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "aCYId/+628/CuOEBKx7sGxQ9fpqvLDqkOMuc0rqWRUCAIgNLtLd5htaQo58aXjzrP8D4/X35xVC+PQoHHis4Mg==", + "sha512": "pYDflUHKD2oIllR+HsbgfkbwNsjivEgYsFjM3eZWS6KVqa5vYVMl93OvC+WfB0Va3Q9gAZYzxXQJUv6gWoJGLw==", "files": [ "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", @@ -428,8 +567,8 @@ "ref/xamarinios10/_._", "ref/xamarinmac20/_._", "runtime.json", - "System.Console.4.0.0-beta-23311.nupkg", - "System.Console.4.0.0-beta-23311.nupkg.sha512", + "System.Console.4.0.0-beta-23316.nupkg", + "System.Console.4.0.0-beta-23316.nupkg.sha512", "System.Console.nuspec" ] }, @@ -467,6 +606,40 @@ "System.Diagnostics.Debug.nuspec" ] }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "serviceable": true, + "sha512": "gn/wexGHc35Fv++5L1gYHMY5g25COfiZ0PGrL+3PfwzoJd4X2LbTAm/U8d385SI6BKQBI/z4dQfvneS9J27+Tw==", + "files": [ + "lib/DNXCore50/System.Diagnostics.Tracing.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Diagnostics.Tracing.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Diagnostics.Tracing.xml", + "ref/dotnet/es/System.Diagnostics.Tracing.xml", + "ref/dotnet/fr/System.Diagnostics.Tracing.xml", + "ref/dotnet/it/System.Diagnostics.Tracing.xml", + "ref/dotnet/ja/System.Diagnostics.Tracing.xml", + "ref/dotnet/ko/System.Diagnostics.Tracing.xml", + "ref/dotnet/ru/System.Diagnostics.Tracing.xml", + "ref/dotnet/System.Diagnostics.Tracing.dll", + "ref/dotnet/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hans/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hant/System.Diagnostics.Tracing.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Diagnostics.Tracing.dll", + "System.Diagnostics.Tracing.4.0.20.nupkg", + "System.Diagnostics.Tracing.4.0.20.nupkg.sha512", + "System.Diagnostics.Tracing.nuspec" + ] + }, "System.Globalization/4.0.10": { "type": "package", "sha512": "kzRtbbCNAxdafFBDogcM36ehA3th8c1PGiz8QRkZn8O5yMBorDHSK8/TGJPYOaCS5zdsGk0u9qXHnW91nqy7fw==", @@ -632,6 +805,102 @@ "System.Linq.nuspec" ] }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "sha512": "wlfVllrKi+evu4Hi8yoJP1dSOVXbvsy7Hs1+oz4Cykfdf6MQTPlD3LI4WKWhprn8FpU5MS3spPSbcMX5sAoJSw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Linq.Expressions.xml", + "ref/dotnet/es/System.Linq.Expressions.xml", + "ref/dotnet/fr/System.Linq.Expressions.xml", + "ref/dotnet/it/System.Linq.Expressions.xml", + "ref/dotnet/ja/System.Linq.Expressions.xml", + "ref/dotnet/ko/System.Linq.Expressions.xml", + "ref/dotnet/ru/System.Linq.Expressions.xml", + "ref/dotnet/System.Linq.Expressions.dll", + "ref/dotnet/System.Linq.Expressions.xml", + "ref/dotnet/zh-hans/System.Linq.Expressions.xml", + "ref/dotnet/zh-hant/System.Linq.Expressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Linq.Expressions.xml", + "ref/netcore50/es/System.Linq.Expressions.xml", + "ref/netcore50/fr/System.Linq.Expressions.xml", + "ref/netcore50/it/System.Linq.Expressions.xml", + "ref/netcore50/ja/System.Linq.Expressions.xml", + "ref/netcore50/ko/System.Linq.Expressions.xml", + "ref/netcore50/ru/System.Linq.Expressions.xml", + "ref/netcore50/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.xml", + "ref/netcore50/zh-hans/System.Linq.Expressions.xml", + "ref/netcore50/zh-hant/System.Linq.Expressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Linq.Expressions.4.0.0.nupkg", + "System.Linq.Expressions.4.0.0.nupkg.sha512", + "System.Linq.Expressions.nuspec" + ] + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "sha512": "+3j/n+5SlF7PKb0/s5kdord+5RyW3uUscB+0WPuYvfAvEgyx6yPdPXU9tXdDZImRohMuWnQTAG2rFojFPfoGbA==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.ObjectModel.xml", + "ref/dotnet/es/System.ObjectModel.xml", + "ref/dotnet/fr/System.ObjectModel.xml", + "ref/dotnet/it/System.ObjectModel.xml", + "ref/dotnet/ja/System.ObjectModel.xml", + "ref/dotnet/ko/System.ObjectModel.xml", + "ref/dotnet/ru/System.ObjectModel.xml", + "ref/dotnet/System.ObjectModel.dll", + "ref/dotnet/System.ObjectModel.xml", + "ref/dotnet/zh-hans/System.ObjectModel.xml", + "ref/dotnet/zh-hant/System.ObjectModel.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.ObjectModel.xml", + "ref/netcore50/es/System.ObjectModel.xml", + "ref/netcore50/fr/System.ObjectModel.xml", + "ref/netcore50/it/System.ObjectModel.xml", + "ref/netcore50/ja/System.ObjectModel.xml", + "ref/netcore50/ko/System.ObjectModel.xml", + "ref/netcore50/ru/System.ObjectModel.xml", + "ref/netcore50/System.ObjectModel.dll", + "ref/netcore50/System.ObjectModel.xml", + "ref/netcore50/zh-hans/System.ObjectModel.xml", + "ref/netcore50/zh-hant/System.ObjectModel.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.ObjectModel.4.0.0.nupkg", + "System.ObjectModel.4.0.0.nupkg.sha512", + "System.ObjectModel.nuspec" + ] + }, "System.Private.Uri/4.0.0": { "type": "package", "serviceable": true, @@ -680,6 +949,40 @@ "System.Reflection.nuspec" ] }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "dbYaZWCyFAu1TGYUqR2n+Q+1casSHPR2vVW0WVNkXpZbrd2BXcZ7cpvpu9C98CTHtNmyfMWCLpCclDqly23t6A==", + "files": [ + "lib/DNXCore50/System.Reflection.Extensions.dll", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Extensions.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "ref/dotnet/de/System.Reflection.Extensions.xml", + "ref/dotnet/es/System.Reflection.Extensions.xml", + "ref/dotnet/fr/System.Reflection.Extensions.xml", + "ref/dotnet/it/System.Reflection.Extensions.xml", + "ref/dotnet/ja/System.Reflection.Extensions.xml", + "ref/dotnet/ko/System.Reflection.Extensions.xml", + "ref/dotnet/ru/System.Reflection.Extensions.xml", + "ref/dotnet/System.Reflection.Extensions.dll", + "ref/dotnet/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hans/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hant/System.Reflection.Extensions.xml", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Extensions.dll", + "ref/netcore50/System.Reflection.Extensions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "runtimes/win8-aot/lib/netcore50/System.Reflection.Extensions.dll", + "System.Reflection.Extensions.4.0.0.nupkg", + "System.Reflection.Extensions.4.0.0.nupkg.sha512", + "System.Reflection.Extensions.nuspec" + ] + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "serviceable": true, @@ -884,10 +1187,10 @@ "System.Runtime.InteropServices.nuspec" ] }, - "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23311": { + "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "76bBVSdeG3enYyNmibt8x85V2fHK8mRPlpz5cPdtl0QPj2A3Hyar+g+W5t9XSw5jPLwRB4tZn8a18bPRcCEiow==", + "sha512": "3iuy8asS4InpTBRCWcSx6/gzPJWnwXQitPa83mMBBrdNoXm05YpTVVR/XYeCMOMFLRlprzl9Mw9FbOHiQpsQyw==", "files": [ "lib/dotnet/System.Runtime.InteropServices.RuntimeInformation.dll", "lib/MonoAndroid10/_._", @@ -899,8 +1202,8 @@ "ref/MonoTouch10/_._", "ref/xamarinios10/_._", "ref/xamarinmac20/_._", - "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23311.nupkg", - "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23311.nupkg.sha512", + "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23316.nupkg", + "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23316.nupkg.sha512", "System.Runtime.InteropServices.RuntimeInformation.nuspec" ] }, @@ -970,6 +1273,54 @@ "System.Text.Encoding.Extensions.nuspec" ] }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "sha512": "D2CHm8LBIymJK9+1E3sn4cUEzMd6B+quQUrCGUluv9QFBNOdL3XqNu548QKeNplEXFOmF5aKXMxXbTrjbEUNMw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Text.RegularExpressions.xml", + "ref/dotnet/es/System.Text.RegularExpressions.xml", + "ref/dotnet/fr/System.Text.RegularExpressions.xml", + "ref/dotnet/it/System.Text.RegularExpressions.xml", + "ref/dotnet/ja/System.Text.RegularExpressions.xml", + "ref/dotnet/ko/System.Text.RegularExpressions.xml", + "ref/dotnet/ru/System.Text.RegularExpressions.xml", + "ref/dotnet/System.Text.RegularExpressions.dll", + "ref/dotnet/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hans/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hant/System.Text.RegularExpressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Text.RegularExpressions.xml", + "ref/netcore50/es/System.Text.RegularExpressions.xml", + "ref/netcore50/fr/System.Text.RegularExpressions.xml", + "ref/netcore50/it/System.Text.RegularExpressions.xml", + "ref/netcore50/ja/System.Text.RegularExpressions.xml", + "ref/netcore50/ko/System.Text.RegularExpressions.xml", + "ref/netcore50/ru/System.Text.RegularExpressions.xml", + "ref/netcore50/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Text.RegularExpressions.4.0.0.nupkg", + "System.Text.RegularExpressions.4.0.0.nupkg.sha512", + "System.Text.RegularExpressions.nuspec" + ] + }, "System.Threading/4.0.10": { "type": "package", "serviceable": true, @@ -1063,12 +1414,12 @@ "System.Threading.Tasks.nuspec" ] }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", - "sha512": "NMFXV0ePe/GrfhMSPGAlWmiUZCzjaatpdAGcavf2B6vYTRyMTpyJT01LI6jemMV/VSDXLrtHp0Ov9xZyR1cLLg==", + "sha512": "dVnDKBCIpLE5GaxLALnbnobqtDyTTDKJSRbqhLGrx0Ptc/n3VQRUby/CDx6v+y7xNVPqtqj0XMeDO1DVT8E3tA==", "files": [ - "xunit.2.1.0-beta3-build3029.nupkg", - "xunit.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.2.1.0-rc1-build3168.nupkg", + "xunit.2.1.0-rc1-build3168.nupkg.sha512", "xunit.nuspec" ] }, @@ -1085,105 +1436,116 @@ "xunit.abstractions.nuspec" ] }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", - "sha512": "AMS7Fv77DayXVRCBMmVEDwOXPcbxk8dCBA/iACsve+6+UQqopMtNyAynyIcXPFRK/peeitUKID4ChOXWisJmUw==", + "sha512": "lsTK4OaNGt5IOoKO3ZQ0gSFngjWSHZ5xNurNtLd0MxZv5onv66xlNmWBYCVNt4sZLknQ+RfiqYm1EZ9ZrA0SDw==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.xml", - "xunit.assert.2.1.0-beta3-build3029.nupkg", - "xunit.assert.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.assert.dll", + "lib/dotnet/xunit.assert.pdb", + "lib/dotnet/xunit.assert.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.xml", + "xunit.assert.2.1.0-rc1-build3168.nupkg", + "xunit.assert.2.1.0-rc1-build3168.nupkg.sha512", "xunit.assert.nuspec" ] }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "uDUBbwZSRx226BMwj6VylzXQPVpEIelNIulT+LxbSEH52y2a4btR9d5ptQmkSVjmJXP5/hGCc4cu1DSCu0pgUA==", + "sha512": "IcQo+pNEDYBC9HJfzY08k0NhLZMX8WXudrlhcrIAzkT2szhrLbGhUi1k6vU5n9crsVv+IxosvIH28kYf6/Z32w==", "files": [ - "build/_Desktop/xunit.execution.desktop.dll", - "build/monoandroid/xunit.core.props", - "build/monoandroid/xunit.execution.MonoAndroid.dll", - "build/monotouch/xunit.core.props", - "build/monotouch/xunit.execution.MonoTouch.dll", - "build/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.targets", - "build/portable-win81+wpa81/xunit.execution.universal.dll", - "build/portable-win81+wpa81/xunit.execution.universal.pri", - "build/wp8/xunit.core.props", - "build/wp8/xunit.core.targets", - "build/wp8/xunit.execution.wp8.dll", - "build/Xamarin.iOS/xunit.core.props", - "build/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "xunit.core.2.1.0-beta3-build3029.nupkg", - "xunit.core.2.1.0-beta3-build3029.nupkg.sha512", + "build/_desktop/xunit.execution.desktop.dll", + "build/dnx451/_._", + "build/monoandroid/_._", + "build/monotouch/_._", + "build/net45/_._", + "build/portable-net45+win8+wp8+wpa81/xunit.core.props", + "build/win8/_._", + "build/win81/xunit.core.props", + "build/wp8/_._", + "build/wpa81/xunit.core.props", + "build/xamarinios/_._", + "xunit.core.2.1.0-rc1-build3168.nupkg", + "xunit.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.core.nuspec" ] }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "lsPro5U3NLasHI/RwqjKzXiRlh9N0IOlR3cluwXYVtihXbGtySeSnU/Fh5MTcWYxh+MVpoNop5zDD0/A2nrHsA==", + "sha512": "8KZaq1mdeaiZxo1ScsGzhkeQRwLLS6+WIno+9gtnYccWmTjCJ/XSYz2fAAlB5mUeyw0vqqrFc+TfNZELs5QiZQ==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll.tdnet", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.xml", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.core.dll", + "lib/dotnet/xunit.core.dll.tdnet", + "lib/dotnet/xunit.core.pdb", + "lib/dotnet/xunit.core.xml", + "lib/dotnet/xunit.runner.tdnet.dll", + "lib/dotnet/xunit.runner.utility.desktop.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll.tdnet", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.tdnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.utility.desktop.dll", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.core.nuspec" ] }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", - "sha512": "WuUYamK4RHrHxihvNuX7NkryMhQrpH1+ziJ/mPIQbm18zevSgre8BwUuVZvmLZa8uVob3xS4dvAah2+HCgLiXg==", + "sha512": "1w0u3eB7i25hca60r/53oSVb0blMOEm2eVqvwTg9jhMSe/A9raj6UZAVzUnFtA3xLssP4K1udOGTC1qrZ9/VoA==", "files": [ - "lib/dnx451/xunit.execution.dnx.dll", - "lib/dnx451/xunit.execution.dnx.pdb", - "lib/dnx451/xunit.execution.dnx.xml", - "lib/dnxcore50/xunit.execution.dnx.dll", - "lib/dnxcore50/xunit.execution.dnx.pdb", - "lib/dnxcore50/xunit.execution.dnx.xml", - "lib/monoandroid/xunit.execution.MonoAndroid.dll", - "lib/monoandroid/xunit.execution.MonoAndroid.pdb", - "lib/monoandroid/xunit.execution.MonoAndroid.xml", - "lib/monotouch/xunit.execution.MonoTouch.dll", - "lib/monotouch/xunit.execution.MonoTouch.pdb", - "lib/monotouch/xunit.execution.MonoTouch.xml", - "lib/net45/xunit.execution.desktop.dll", - "lib/net45/xunit.execution.desktop.pdb", - "lib/net45/xunit.execution.desktop.xml", - "lib/portable-wpa81+win81/xunit.execution.universal.dll", - "lib/portable-wpa81+win81/xunit.execution.universal.pdb", - "lib/portable-wpa81+win81/xunit.execution.universal.pri", - "lib/portable-wpa81+win81/xunit.execution.universal.xml", - "lib/wp8/xunit.execution.wp8.dll", - "lib/wp8/xunit.execution.wp8.pdb", - "lib/wp8/xunit.execution.wp8.xml", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.pdb", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.xml", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dnx451/xunit.execution.dotnet.dll", + "lib/dnx451/xunit.execution.dotnet.pdb", + "lib/dnx451/xunit.execution.dotnet.xml", + "lib/dotnet/xunit.execution.dotnet.dll", + "lib/dotnet/xunit.execution.dotnet.pdb", + "lib/dotnet/xunit.execution.dotnet.xml", + "lib/monoandroid/xunit.execution.dotnet.dll", + "lib/monoandroid/xunit.execution.dotnet.pdb", + "lib/monoandroid/xunit.execution.dotnet.xml", + "lib/monotouch/xunit.execution.dotnet.dll", + "lib/monotouch/xunit.execution.dotnet.pdb", + "lib/monotouch/xunit.execution.dotnet.xml", + "lib/net35/xunit.execution.desktop.dll", + "lib/net35/xunit.execution.desktop.pdb", + "lib/net35/xunit.execution.desktop.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.xml", + "lib/win8/xunit.execution.dotnet.dll", + "lib/win8/xunit.execution.dotnet.pdb", + "lib/win8/xunit.execution.dotnet.xml", + "lib/wp8/xunit.execution.dotnet.dll", + "lib/wp8/xunit.execution.dotnet.pdb", + "lib/wp8/xunit.execution.dotnet.xml", + "lib/wpa81/xunit.execution.dotnet.dll", + "lib/wpa81/xunit.execution.dotnet.pdb", + "lib/wpa81/xunit.execution.dotnet.xml", + "lib/xamarinios/xunit.execution.dotnet.dll", + "lib/xamarinios/xunit.execution.dotnet.pdb", + "lib/xamarinios/xunit.execution.dotnet.xml", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.execution.nuspec" ] }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "serviceable": true, - "sha512": "P3Q9YspdSUzoJQS6iT5mF3jt+s0u9u/G3K6s0Ns7NbAwQPktjwuO7CgJk38fop4yYDVdsVEwbZF2jfNMhJ7hkQ==", + "sha512": "9t2jrzI6N5ueydH5omBi95hiBOuNXpI6sS2kQJO56+bUavVpSD6/aD0C4+Nqbiql8Zvu0yx2GO+2IAd0JQcjIA==", "files": [ "lib/dotnet/Xunit.NetCore.Extensions.dll", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg.sha512", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg.sha512", "xunit.netcore.extensions.nuspec" ] } }, "projectFileDependencyGroups": { "": [ + "Microsoft.DotNet.xunit.performance >= 1.0.0-*", "System.Console >= 4.0.0-beta-*", "System.IO.FileSystem >= 4.0.0", "System.Globalization >= 4.0.10", @@ -1193,7 +1555,7 @@ "System.Runtime.InteropServices.RuntimeInformation >= 4.0.0-beta-*", "System.Threading >= 4.0.10", "System.Threading.Tasks >= 4.0.10", - "xunit >= 2.1.0-beta3-*", + "xunit >= 2.1.0-rc1-*", "xunit.netcore.extensions >= 1.0.0-prerelease-*" ], "DNXCore,Version=v5.0": [] diff --git a/src/System.Runtime/tests/Performance/Perf.Boolean.cs b/src/System.Runtime/tests/Performance/Perf.Boolean.cs new file mode 100644 index 0000000000..e90450c1cb --- /dev/null +++ b/src/System.Runtime/tests/Performance/Perf.Boolean.cs @@ -0,0 +1,36 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Xunit; +using Microsoft.Xunit.Performance; + +namespace System.Runtime.Tests +{ + public class Perf_Boolean + { + [Benchmark] + public void Parse_str() + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + Boolean.Parse("True"); Boolean.Parse("True"); Boolean.Parse("True"); + Boolean.Parse("True"); Boolean.Parse("True"); Boolean.Parse("True"); + Boolean.Parse("True"); Boolean.Parse("True"); Boolean.Parse("True"); + } + } + + [Benchmark] + public void ToString_() + { + Boolean boo = true; + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + boo.ToString(); boo.ToString(); boo.ToString(); + boo.ToString(); boo.ToString(); boo.ToString(); + boo.ToString(); boo.ToString(); boo.ToString(); + } + } + } +} diff --git a/src/System.Runtime/tests/Performance/Perf.DateTime.cs b/src/System.Runtime/tests/Performance/Perf.DateTime.cs new file mode 100644 index 0000000000..307ec238ee --- /dev/null +++ b/src/System.Runtime/tests/Performance/Perf.DateTime.cs @@ -0,0 +1,51 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.Xunit.Performance; + +namespace System.Runtime.Tests +{ + public class Perf_DateTime + { + [Benchmark] + public void GetNow() + { + DateTime dt; + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + dt = DateTime.Now; dt = DateTime.Now; dt = DateTime.Now; + dt = DateTime.Now; dt = DateTime.Now; dt = DateTime.Now; + dt = DateTime.Now; dt = DateTime.Now; dt = DateTime.Now; + } + } + + [Benchmark] + public void ToString_str() + { + DateTime dt = DateTime.Now; + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + dt.ToString("g"); dt.ToString("g"); dt.ToString("g"); + dt.ToString("g"); dt.ToString("g"); dt.ToString("g"); + dt.ToString("g"); dt.ToString("g"); dt.ToString("g"); + } + } + + [Benchmark] + public void op_Subtraction() + { + TimeSpan result; + DateTime date1 = new DateTime(1996, 6, 3, 22, 15, 0); + DateTime date2 = new DateTime(1996, 12, 6, 13, 2, 0); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + result = date1 - date2; result = date1 - date2; result = date1 - date2; + result = date1 - date2; result = date1 - date2; result = date1 - date2; + result = date1 - date2; result = date1 - date2; result = date1 - date2; + } + } + } +} diff --git a/src/System.Runtime/tests/Performance/Perf.Enum.cs b/src/System.Runtime/tests/Performance/Perf.Enum.cs new file mode 100644 index 0000000000..eda62f6339 --- /dev/null +++ b/src/System.Runtime/tests/Performance/Perf.Enum.cs @@ -0,0 +1,28 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.Xunit.Performance; + +namespace System.Runtime.Tests +{ + public class Perf_Enum + { + private enum testEnum + { + Red = 1, + Blue = 2 + } + + [Benchmark] + public void Parse() + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + Enum.Parse(typeof(testEnum), "Red"); Enum.Parse(typeof(testEnum), "Red"); Enum.Parse(typeof(testEnum), "Red"); + Enum.Parse(typeof(testEnum), "Red"); Enum.Parse(typeof(testEnum), "Red"); Enum.Parse(typeof(testEnum), "Red"); + Enum.Parse(typeof(testEnum), "Red"); Enum.Parse(typeof(testEnum), "Red"); Enum.Parse(typeof(testEnum), "Red"); + } + } + } +} diff --git a/src/System.Runtime/tests/Performance/Perf.Guid.cs b/src/System.Runtime/tests/Performance/Perf.Guid.cs new file mode 100644 index 0000000000..ca04a78b10 --- /dev/null +++ b/src/System.Runtime/tests/Performance/Perf.Guid.cs @@ -0,0 +1,37 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.Xunit.Performance; +using System.Text; + +namespace System.Runtime.Tests +{ + public class Perf_Guid + { + [Benchmark] + public void NewGuid() + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + Guid.NewGuid(); Guid.NewGuid(); Guid.NewGuid(); + Guid.NewGuid(); Guid.NewGuid(); Guid.NewGuid(); + Guid.NewGuid(); Guid.NewGuid(); Guid.NewGuid(); + } + } + + [Benchmark] + public void ctor_str() + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + new Guid("a8a110d5-fc49-43c5-bf46-802db8f843ff"); new Guid("a8a110d5-fc49-43c5-bf46-802db8f843ff"); + new Guid("a8a110d5-fc49-43c5-bf46-802db8f843ff"); new Guid("a8a110d5-fc49-43c5-bf46-802db8f843ff"); + new Guid("a8a110d5-fc49-43c5-bf46-802db8f843ff"); new Guid("a8a110d5-fc49-43c5-bf46-802db8f843ff"); + new Guid("a8a110d5-fc49-43c5-bf46-802db8f843ff"); new Guid("a8a110d5-fc49-43c5-bf46-802db8f843ff"); + new Guid("a8a110d5-fc49-43c5-bf46-802db8f843ff"); + } + } + } +} diff --git a/src/System.Runtime/tests/Performance/Perf.Int32.cs b/src/System.Runtime/tests/Performance/Perf.Int32.cs new file mode 100644 index 0000000000..0a9a593206 --- /dev/null +++ b/src/System.Runtime/tests/Performance/Perf.Int32.cs @@ -0,0 +1,37 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Xunit; +using Microsoft.Xunit.Performance; + +namespace System.Runtime.Tests +{ + public class Perf_Int32 + { + [Benchmark] + public void ToString_() + { + Int32 i32 = 32; + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + i32.ToString(); i32.ToString(); i32.ToString(); + i32.ToString(); i32.ToString(); i32.ToString(); + i32.ToString(); i32.ToString(); i32.ToString(); + } + } + + [Benchmark] + public void Parse_str() + { + string builtString = "1111111"; + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + Int32.Parse(builtString); Int32.Parse(builtString); Int32.Parse(builtString); + Int32.Parse(builtString); Int32.Parse(builtString); Int32.Parse(builtString); + Int32.Parse(builtString); Int32.Parse(builtString); Int32.Parse(builtString); + } + } + } +} diff --git a/src/System.Runtime/tests/Performance/Perf.IntPtr.cs b/src/System.Runtime/tests/Performance/Perf.IntPtr.cs new file mode 100644 index 0000000000..256d5753ba --- /dev/null +++ b/src/System.Runtime/tests/Performance/Perf.IntPtr.cs @@ -0,0 +1,37 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.Xunit.Performance; + +namespace System.Runtime.Tests +{ + public class Perf_IntPtr + { + [Benchmark] + public void ctor_int32() + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + new IntPtr(0); new IntPtr(0); new IntPtr(0); + new IntPtr(0); new IntPtr(0); new IntPtr(0); + new IntPtr(0); new IntPtr(0); new IntPtr(0); + } + } + + [Benchmark] + public void op_Equality_IntPtr_IntPtr() + { + bool res; + IntPtr ptr1 = new IntPtr(0); + IntPtr ptr2 = new IntPtr(0); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + res = ptr1 == ptr2; res = ptr1 == ptr2; res = ptr1 == ptr2; + res = ptr1 == ptr2; res = ptr1 == ptr2; res = ptr1 == ptr2; + res = ptr1 == ptr2; res = ptr1 == ptr2; res = ptr1 == ptr2; + } + } + } +} diff --git a/src/System.Runtime/tests/Performance/Perf.Object.cs b/src/System.Runtime/tests/Performance/Perf.Object.cs new file mode 100644 index 0000000000..bb1079beba --- /dev/null +++ b/src/System.Runtime/tests/Performance/Perf.Object.cs @@ -0,0 +1,35 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.Xunit.Performance; + +namespace System.Runtime.Tests +{ + public class Perf_Object + { + [Benchmark] + public void ctor() + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + new Object(); new Object(); new Object(); + new Object(); new Object(); new Object(); + new Object(); new Object(); new Object(); + } + } + + [Benchmark] + public void GetType_() + { + Object obj = new Object(); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + obj.GetType(); obj.GetType(); obj.GetType(); + obj.GetType(); obj.GetType(); obj.GetType(); + obj.GetType(); obj.GetType(); obj.GetType(); + } + } + } +} diff --git a/src/System.Runtime/tests/Performance/Perf.String.cs b/src/System.Runtime/tests/Performance/Perf.String.cs new file mode 100644 index 0000000000..56e6fcf950 --- /dev/null +++ b/src/System.Runtime/tests/Performance/Perf.String.cs @@ -0,0 +1,240 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System.Text; +using System.Collections.Generic; +using Xunit; +using Microsoft.Xunit.Performance; + +namespace System.Runtime.Tests +{ + public class Perf_String + { + public static IEnumerable<object[]> TestStringSizes() + { + yield return new object[] { 10 }; + yield return new object[] { 100 }; + yield return new object[] { 1000 }; + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void GetChars(int size) + { + string testString = PerfUtils.CreateString(size); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + testString.ToCharArray(); + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void Concat_str_str(int size) + { + string testString1 = PerfUtils.CreateString(size); + string testString2 = PerfUtils.CreateString(size); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + string.Concat(testString1, testString2); + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void Concat_str_str_str(int size) + { + string testString1 = PerfUtils.CreateString(size); + string testString2 = PerfUtils.CreateString(size); + string testString3 = PerfUtils.CreateString(size); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + string.Concat(testString1, testString2, testString3); + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void Concat_str_str_str_str(int size) + { + string testString1 = PerfUtils.CreateString(size); + string testString2 = PerfUtils.CreateString(size); + string testString3 = PerfUtils.CreateString(size); + string testString4 = PerfUtils.CreateString(size); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + string.Concat(testString1, testString2, testString3, testString4); + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void Contains(int size) + { + string testString = PerfUtils.CreateString(size); + string subString = testString.Substring(testString.Length / 2, testString.Length / 4); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + testString.Contains(subString); + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void Equals(int size) + { + string testString1 = PerfUtils.CreateString(size); + string testString2 = new string(testString1.ToCharArray()); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + testString1.Equals(testString2); + } + + [Benchmark] + [InlineData(1)] + [InlineData(2)] + [InlineData(3)] + [InlineData(10)] + [InlineData(100)] + public void Format(int numberOfObjects) + { + // Setup the format string and the list of objects to format + StringBuilder formatter = new StringBuilder(); + List<string> objects = new List<string>(); + for (int i = 0; i < numberOfObjects; i++) + { + formatter.Append("%s, "); + objects.Add(PerfUtils.CreateString(10)); + } + string format = formatter.ToString(); + string[] objectArr = objects.ToArray(); + + // Perform the actual formatting + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + string.Format(format, objectArr); + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void GetLength(int size) + { + int result; + string testString = PerfUtils.CreateString(size); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + result = testString.Length; result = testString.Length; result = testString.Length; + result = testString.Length; result = testString.Length; result = testString.Length; + result = testString.Length; result = testString.Length; result = testString.Length; + } + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void op_Equality(int size) + { + bool result; + string testString1 = PerfUtils.CreateString(size); + string testString2 = PerfUtils.CreateString(size); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + result = testString1 == testString2; result = testString1 == testString2; + result = testString1 == testString2; result = testString1 == testString2; + result = testString1 == testString2; result = testString1 == testString2; + } + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void Replace(int size) + { + string testString = PerfUtils.CreateString(size); + string existingValue = testString.Substring(testString.Length / 2, 1); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + testString.Replace(existingValue, "1"); + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void Split(int size) + { + string testString = PerfUtils.CreateString(size); + string existingValue = testString.Substring(testString.Length / 2, 1); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + testString.Split(existingValue); + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void StartsWith(int size) + { + string testString = PerfUtils.CreateString(size); + string subString = testString.Substring(0, testString.Length / 4); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + testString.StartsWith(subString); + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void Substring_int(int size) + { + int startIndex = size / 2; + string testString = PerfUtils.CreateString(size); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + testString.Substring(startIndex); + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void Substring_int_int(int size) + { + int startIndex = size / 2; + int length = size / 4; + string testString = PerfUtils.CreateString(size); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + testString.Substring(startIndex, length); + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void ToLower(int size) + { + string testString = PerfUtils.CreateString(size); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + testString.ToLower(); + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void ToUpper(int size) + { + string testString = PerfUtils.CreateString(size); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + testString.ToUpper(); + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void Trim_WithWhitespace(int size) + { + string testString = " " + PerfUtils.CreateString(size) + " "; + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + testString.Trim(); + } + + [Benchmark] + [MemberData("TestStringSizes")] + public void Trim_NothingToDo(int size) + { + string testString = PerfUtils.CreateString(size); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + testString.Trim(); + } + } +} diff --git a/src/System.Runtime/tests/Performance/Perf.StringBuilder.cs b/src/System.Runtime/tests/Performance/Perf.StringBuilder.cs new file mode 100644 index 0000000000..a64a02c169 --- /dev/null +++ b/src/System.Runtime/tests/Performance/Perf.StringBuilder.cs @@ -0,0 +1,42 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System.Text; +using Xunit; +using Microsoft.Xunit.Performance; + +namespace System.Runtime.Tests +{ + public class Perf_StringBuilder + { + [Benchmark] + public void ctor() + { + StringBuilder builder; + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + builder = new StringBuilder(); builder = new StringBuilder(); builder = new StringBuilder(); + builder = new StringBuilder(); builder = new StringBuilder(); builder = new StringBuilder(); + builder = new StringBuilder(); builder = new StringBuilder(); builder = new StringBuilder(); + } + } + + [Benchmark] + [InlineData(0)] + [InlineData(200)] + public void Append(int length) + { + foreach (var iteration in Benchmark.Iterations) + { + // Setup - Create a string of the specified length + string builtString = PerfUtils.CreateString(length); + StringBuilder empty = new StringBuilder(); + + // Actual perf testing + using (iteration.StartMeasurement()) + empty.Append(builtString); // Appends a string of length "length" to an empty StringBuilder object + } + } + } +} diff --git a/src/System.Runtime/tests/Performance/Perf.TimeSpan.cs b/src/System.Runtime/tests/Performance/Perf.TimeSpan.cs new file mode 100644 index 0000000000..3dbf8c67ef --- /dev/null +++ b/src/System.Runtime/tests/Performance/Perf.TimeSpan.cs @@ -0,0 +1,34 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.Xunit.Performance; + +namespace System.Runtime.Tests +{ + public class Perf_TimeSpan + { + [Benchmark] + public void ctor_int_int_int() + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + new TimeSpan(7, 8, 10); new TimeSpan(7, 8, 10); new TimeSpan(7, 8, 10); + new TimeSpan(7, 8, 10); new TimeSpan(7, 8, 10); new TimeSpan(7, 8, 10); + new TimeSpan(7, 8, 10); new TimeSpan(7, 8, 10); new TimeSpan(7, 8, 10); + } + } + + [Benchmark] + public void FromSeconds() + { + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + TimeSpan.FromSeconds(50); TimeSpan.FromSeconds(50); TimeSpan.FromSeconds(50); + TimeSpan.FromSeconds(50); TimeSpan.FromSeconds(50); TimeSpan.FromSeconds(50); + TimeSpan.FromSeconds(50); TimeSpan.FromSeconds(50); TimeSpan.FromSeconds(50); + } + } + } +} diff --git a/src/System.Runtime/tests/Performance/Perf.Type.cs b/src/System.Runtime/tests/Performance/Perf.Type.cs new file mode 100644 index 0000000000..cd178d4fbb --- /dev/null +++ b/src/System.Runtime/tests/Performance/Perf.Type.cs @@ -0,0 +1,38 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.Xunit.Performance; + +namespace System.Runtime.Tests +{ + public class Perf_Type + { + [Benchmark] + public void GetTypeFromHandle() + { + RuntimeTypeHandle type1 = typeof(int).TypeHandle; + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + Type.GetTypeFromHandle(type1); Type.GetTypeFromHandle(type1); Type.GetTypeFromHandle(type1); + Type.GetTypeFromHandle(type1); Type.GetTypeFromHandle(type1); Type.GetTypeFromHandle(type1); + Type.GetTypeFromHandle(type1); Type.GetTypeFromHandle(type1); Type.GetTypeFromHandle(type1); + } + } + + [Benchmark] + public void op_Equality() + { + bool result; + Type type1 = typeof(int); + Type type2 = typeof(string); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + result = type1 == type2; result = type1 == type2; result = type1 == type2; + result = type1 == type2; result = type1 == type2; result = type1 == type2; + result = type1 == type2; result = type1 == type2; result = type1 == type2; + } + } + } +} diff --git a/src/System.Runtime/tests/Performance/Perf.UInt32.cs b/src/System.Runtime/tests/Performance/Perf.UInt32.cs new file mode 100644 index 0000000000..d6e8428c87 --- /dev/null +++ b/src/System.Runtime/tests/Performance/Perf.UInt32.cs @@ -0,0 +1,23 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.Xunit.Performance; + +namespace System.Runtime.Tests +{ + public class Perf_UInt32 + { + [Benchmark] + public void ToString_() + { + UInt32 i = new UInt32(); + foreach (var iteration in Benchmark.Iterations) + using (iteration.StartMeasurement()) + { + i.ToString(); i.ToString(); i.ToString(); + i.ToString(); i.ToString(); i.ToString(); + i.ToString(); i.ToString(); i.ToString(); + } + } + } +} diff --git a/src/System.Runtime/tests/System.Runtime.Tests.csproj b/src/System.Runtime/tests/System.Runtime.Tests.csproj index fc466c73fa..e9fc539b1b 100644 --- a/src/System.Runtime/tests/System.Runtime.Tests.csproj +++ b/src/System.Runtime/tests/System.Runtime.Tests.csproj @@ -12,6 +12,11 @@ <RestorePackages>true</RestorePackages> <NoWarn>1718</NoWarn> </PropertyGroup> + <!-- Performance tests require v5.0 portable tools --> + <PropertyGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <TargetFrameworkVersion>v5.0</TargetFrameworkVersion> + <TargetFrameworkProfile /> + </PropertyGroup> <!-- Default configurations to help VS understand the configurations --> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> </PropertyGroup> @@ -89,6 +94,24 @@ <Compile Include="System\Version.cs" /> <Compile Include="System\WeakReference.cs" /> </ItemGroup> + <!-- Performance Tests --> + <ItemGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <Compile Include="Performance\Perf.Boolean.cs" /> + <Compile Include="Performance\Perf.Enum.cs" /> + <Compile Include="Performance\Perf.Guid.cs" /> + <Compile Include="Performance\Perf.Object.cs" /> + <Compile Include="Performance\Perf.String.cs" /> + <Compile Include="Performance\Perf.TimeSpan.cs" /> + <Compile Include="Performance\Perf.Type.cs" /> + <Compile Include="Performance\Perf.UInt32.cs" /> + <Compile Include="Performance\Perf.DateTime.cs" /> + <Compile Include="Performance\Perf.Int32.cs" /> + <Compile Include="Performance\Perf.IntPtr.cs" /> + <Compile Include="Performance\Perf.StringBuilder.cs" /> + <Compile Include="$(CommonTestPath)\Performance\PerfUtils.cs"> + <Link>Common\Performance\PerfUtils.cs</Link> + </Compile> + </ItemGroup> <ItemGroup> <None Include="project.json" /> </ItemGroup> diff --git a/src/System.Runtime/tests/project.json b/src/System.Runtime/tests/project.json index bc079ff8c3..ae615392f0 100644 --- a/src/System.Runtime/tests/project.json +++ b/src/System.Runtime/tests/project.json @@ -1,5 +1,6 @@ { "dependencies": { + "Microsoft.DotNet.xunit.performance": "1.0.0-*", "System.Console": "4.0.0-beta-*", "System.Globalization": "4.0.10", "System.Reflection": "4.0.10", @@ -9,7 +10,7 @@ "System.Runtime.InteropServices.RuntimeInformation": "4.0.0-beta-*", "System.Threading": "4.0.10", "System.Threading.Tasks": "4.0.10", - "xunit": "2.1.0-beta3-*", + "xunit": "2.1.0-rc1-*", "xunit.netcore.extensions": "1.0.0-prerelease-*" }, "frameworks": { diff --git a/src/System.Runtime/tests/project.lock.json b/src/System.Runtime/tests/project.lock.json index a2fee34c07..99596a5aa1 100644 --- a/src/System.Runtime/tests/project.lock.json +++ b/src/System.Runtime/tests/project.lock.json @@ -3,6 +3,36 @@ "version": 1, "targets": { "DNXCore,Version=v5.0": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.Diagnostics.Debug": "4.0.10", + "System.Diagnostics.Tracing": "4.0.20", + "System.Globalization": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem": "4.0.0", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.10", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Text.Encoding": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Tasks": "4.0.10", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "2.1.0-rc1-build3168", + "xunit.extensibility.execution": "2.1.0-rc1-build3168" + }, + "compile": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + }, + "runtime": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + } + }, "System.Collections/4.0.10": { "type": "package", "dependencies": { @@ -15,7 +45,7 @@ "lib/DNXCore50/System.Collections.dll": {} } }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.IO": "4.0.0", @@ -37,6 +67,18 @@ "lib/DNXCore50/System.Diagnostics.Debug.dll": {} } }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Diagnostics.Tracing.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Diagnostics.Tracing.dll": {} + } + }, "System.Globalization/4.0.10": { "type": "package", "dependencies": { @@ -63,6 +105,42 @@ "lib/DNXCore50/System.IO.dll": {} } }, + "System.IO.FileSystem/4.0.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Resources.ResourceManager": "4.0.0", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Runtime.Handles": "4.0.0", + "System.Runtime.InteropServices": "4.0.20", + "System.Text.Encoding": "4.0.10", + "System.Text.Encoding.Extensions": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Overlapped": "4.0.0", + "System.Threading.Tasks": "4.0.10" + }, + "compile": { + "ref/dotnet/System.IO.FileSystem.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.IO.FileSystem.dll": {} + } + }, + "System.IO.FileSystem.Primitives/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.20" + }, + "compile": { + "ref/dotnet/System.IO.FileSystem.Primitives.dll": {} + }, + "runtime": { + "lib/dotnet/System.IO.FileSystem.Primitives.dll": {} + } + }, "System.Linq/4.0.0": { "type": "package", "dependencies": { @@ -79,6 +157,25 @@ "lib/dotnet/System.Linq.dll": {} } }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Linq.Expressions.dll": {} + } + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.ObjectModel.dll": {} + } + }, "System.Private.Uri/4.0.0": { "type": "package", "compile": { @@ -102,6 +199,19 @@ "lib/DNXCore50/System.Reflection.dll": {} } }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Reflection.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Reflection.Extensions.dll": {} + } + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "dependencies": { @@ -179,7 +289,7 @@ "lib/DNXCore50/System.Runtime.InteropServices.dll": {} } }, - "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23311": { + "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.Resources.ResourceManager": "4.0.0", @@ -204,6 +314,28 @@ "lib/DNXCore50/System.Text.Encoding.dll": {} } }, + "System.Text.Encoding.Extensions/4.0.10": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0", + "System.Text.Encoding": "4.0.10" + }, + "compile": { + "ref/dotnet/System.Text.Encoding.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Text.Encoding.Extensions.dll": {} + } + }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Text.RegularExpressions.dll": {} + } + }, "System.Threading/4.0.10": { "type": "package", "dependencies": { @@ -217,6 +349,19 @@ "lib/DNXCore50/System.Threading.dll": {} } }, + "System.Threading.Overlapped/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0", + "System.Runtime.Handles": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Threading.Overlapped.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Threading.Overlapped.dll": {} + } + }, "System.Threading.Tasks/4.0.10": { "type": "package", "dependencies": { @@ -229,11 +374,11 @@ "lib/DNXCore50/System.Threading.Tasks.dll": {} } }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.assert": "[2.1.0-beta3-build3029]", - "xunit.core": "[2.1.0-beta3-build3029]" + "xunit.assert": "[2.1.0-rc1-build3168]", + "xunit.core": "[2.1.0-rc1-build3168]" } }, "xunit.abstractions/2.0.0": { @@ -245,49 +390,86 @@ "lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll": {} } }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", + "dependencies": { + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.ObjectModel": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.RegularExpressions": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} } }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]", - "xunit.extensibility.execution": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]", + "xunit.extensibility.execution": "[2.1.0-rc1-build3168]" } }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { "xunit.abstractions": "[2.0.0]" }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {} + "lib/dotnet/xunit.core.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll": {} + "lib/dotnet/xunit.core.dll": {}, + "lib/dotnet/xunit.runner.tdnet.dll": {}, + "lib/dotnet/xunit.runner.utility.desktop.dll": {} } }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.0", + "System.Linq": "4.0.0", + "System.Linq.Expressions": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.Encoding": "4.0.0", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]" }, "compile": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} }, "runtime": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} } }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "dependencies": { "System.Diagnostics.Debug": "4.0.10", @@ -315,6 +497,25 @@ } }, "libraries": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "sha512": "NCrgkMUcuMy3T5PY9kcBFpRyN/HrUyHsSxvdyq426iTZj2pG+6odaztW5BrQov3gPEXM5cPx4+64djl4sC8/nw==", + "files": [ + "lib/dotnet/xunit.performance.core.dll", + "lib/dotnet/xunit.performance.core.pdb", + "lib/dotnet/xunit.performance.core.XML", + "lib/dotnet/xunit.performance.execution.dotnet.dll", + "lib/dotnet/xunit.performance.execution.dotnet.pdb", + "lib/net46/xunit.performance.core.dll", + "lib/net46/xunit.performance.core.pdb", + "lib/net46/xunit.performance.core.XML", + "lib/net46/xunit.performance.execution.desktop.dll", + "lib/net46/xunit.performance.execution.desktop.pdb", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg.sha512", + "Microsoft.DotNet.xunit.performance.nuspec" + ] + }, "System.Collections/4.0.10": { "type": "package", "serviceable": true, @@ -349,10 +550,10 @@ "System.Collections.nuspec" ] }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "aCYId/+628/CuOEBKx7sGxQ9fpqvLDqkOMuc0rqWRUCAIgNLtLd5htaQo58aXjzrP8D4/X35xVC+PQoHHis4Mg==", + "sha512": "pYDflUHKD2oIllR+HsbgfkbwNsjivEgYsFjM3eZWS6KVqa5vYVMl93OvC+WfB0Va3Q9gAZYzxXQJUv6gWoJGLw==", "files": [ "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", @@ -366,8 +567,8 @@ "ref/xamarinios10/_._", "ref/xamarinmac20/_._", "runtime.json", - "System.Console.4.0.0-beta-23311.nupkg", - "System.Console.4.0.0-beta-23311.nupkg.sha512", + "System.Console.4.0.0-beta-23316.nupkg", + "System.Console.4.0.0-beta-23316.nupkg.sha512", "System.Console.nuspec" ] }, @@ -405,6 +606,40 @@ "System.Diagnostics.Debug.nuspec" ] }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "serviceable": true, + "sha512": "gn/wexGHc35Fv++5L1gYHMY5g25COfiZ0PGrL+3PfwzoJd4X2LbTAm/U8d385SI6BKQBI/z4dQfvneS9J27+Tw==", + "files": [ + "lib/DNXCore50/System.Diagnostics.Tracing.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Diagnostics.Tracing.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Diagnostics.Tracing.xml", + "ref/dotnet/es/System.Diagnostics.Tracing.xml", + "ref/dotnet/fr/System.Diagnostics.Tracing.xml", + "ref/dotnet/it/System.Diagnostics.Tracing.xml", + "ref/dotnet/ja/System.Diagnostics.Tracing.xml", + "ref/dotnet/ko/System.Diagnostics.Tracing.xml", + "ref/dotnet/ru/System.Diagnostics.Tracing.xml", + "ref/dotnet/System.Diagnostics.Tracing.dll", + "ref/dotnet/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hans/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hant/System.Diagnostics.Tracing.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Diagnostics.Tracing.dll", + "System.Diagnostics.Tracing.4.0.20.nupkg", + "System.Diagnostics.Tracing.4.0.20.nupkg.sha512", + "System.Diagnostics.Tracing.nuspec" + ] + }, "System.Globalization/4.0.10": { "type": "package", "sha512": "kzRtbbCNAxdafFBDogcM36ehA3th8c1PGiz8QRkZn8O5yMBorDHSK8/TGJPYOaCS5zdsGk0u9qXHnW91nqy7fw==", @@ -472,6 +707,71 @@ "System.IO.nuspec" ] }, + "System.IO.FileSystem/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "eo05SPWfG+54UA0wxgRIYOuOslq+2QrJLXZaJDDsfLXG15OLguaItW39NYZTqUb4DeGOkU4R0wpOLOW4ynMUDQ==", + "files": [ + "lib/DNXCore50/System.IO.FileSystem.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.dll", + "lib/netcore50/System.IO.FileSystem.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.IO.FileSystem.xml", + "ref/dotnet/es/System.IO.FileSystem.xml", + "ref/dotnet/fr/System.IO.FileSystem.xml", + "ref/dotnet/it/System.IO.FileSystem.xml", + "ref/dotnet/ja/System.IO.FileSystem.xml", + "ref/dotnet/ko/System.IO.FileSystem.xml", + "ref/dotnet/ru/System.IO.FileSystem.xml", + "ref/dotnet/System.IO.FileSystem.dll", + "ref/dotnet/System.IO.FileSystem.xml", + "ref/dotnet/zh-hans/System.IO.FileSystem.xml", + "ref/dotnet/zh-hant/System.IO.FileSystem.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.IO.FileSystem.4.0.0.nupkg", + "System.IO.FileSystem.4.0.0.nupkg.sha512", + "System.IO.FileSystem.nuspec" + ] + }, + "System.IO.FileSystem.Primitives/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "7pJUvYi/Yq3A5nagqCCiOw3+aJp3xXc/Cjr8dnJDnER3/6kX3LEencfqmXUcPl9+7OvRNyPMNhqsLAcMK6K/KA==", + "files": [ + "lib/dotnet/System.IO.FileSystem.Primitives.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/es/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/fr/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/it/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ja/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ko/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ru/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/System.IO.FileSystem.Primitives.dll", + "ref/dotnet/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/zh-hans/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/zh-hant/System.IO.FileSystem.Primitives.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.Primitives.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.IO.FileSystem.Primitives.4.0.0.nupkg", + "System.IO.FileSystem.Primitives.4.0.0.nupkg.sha512", + "System.IO.FileSystem.Primitives.nuspec" + ] + }, "System.Linq/4.0.0": { "type": "package", "serviceable": true, @@ -505,6 +805,102 @@ "System.Linq.nuspec" ] }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "sha512": "wlfVllrKi+evu4Hi8yoJP1dSOVXbvsy7Hs1+oz4Cykfdf6MQTPlD3LI4WKWhprn8FpU5MS3spPSbcMX5sAoJSw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Linq.Expressions.xml", + "ref/dotnet/es/System.Linq.Expressions.xml", + "ref/dotnet/fr/System.Linq.Expressions.xml", + "ref/dotnet/it/System.Linq.Expressions.xml", + "ref/dotnet/ja/System.Linq.Expressions.xml", + "ref/dotnet/ko/System.Linq.Expressions.xml", + "ref/dotnet/ru/System.Linq.Expressions.xml", + "ref/dotnet/System.Linq.Expressions.dll", + "ref/dotnet/System.Linq.Expressions.xml", + "ref/dotnet/zh-hans/System.Linq.Expressions.xml", + "ref/dotnet/zh-hant/System.Linq.Expressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Linq.Expressions.xml", + "ref/netcore50/es/System.Linq.Expressions.xml", + "ref/netcore50/fr/System.Linq.Expressions.xml", + "ref/netcore50/it/System.Linq.Expressions.xml", + "ref/netcore50/ja/System.Linq.Expressions.xml", + "ref/netcore50/ko/System.Linq.Expressions.xml", + "ref/netcore50/ru/System.Linq.Expressions.xml", + "ref/netcore50/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.xml", + "ref/netcore50/zh-hans/System.Linq.Expressions.xml", + "ref/netcore50/zh-hant/System.Linq.Expressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Linq.Expressions.4.0.0.nupkg", + "System.Linq.Expressions.4.0.0.nupkg.sha512", + "System.Linq.Expressions.nuspec" + ] + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "sha512": "+3j/n+5SlF7PKb0/s5kdord+5RyW3uUscB+0WPuYvfAvEgyx6yPdPXU9tXdDZImRohMuWnQTAG2rFojFPfoGbA==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.ObjectModel.xml", + "ref/dotnet/es/System.ObjectModel.xml", + "ref/dotnet/fr/System.ObjectModel.xml", + "ref/dotnet/it/System.ObjectModel.xml", + "ref/dotnet/ja/System.ObjectModel.xml", + "ref/dotnet/ko/System.ObjectModel.xml", + "ref/dotnet/ru/System.ObjectModel.xml", + "ref/dotnet/System.ObjectModel.dll", + "ref/dotnet/System.ObjectModel.xml", + "ref/dotnet/zh-hans/System.ObjectModel.xml", + "ref/dotnet/zh-hant/System.ObjectModel.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.ObjectModel.xml", + "ref/netcore50/es/System.ObjectModel.xml", + "ref/netcore50/fr/System.ObjectModel.xml", + "ref/netcore50/it/System.ObjectModel.xml", + "ref/netcore50/ja/System.ObjectModel.xml", + "ref/netcore50/ko/System.ObjectModel.xml", + "ref/netcore50/ru/System.ObjectModel.xml", + "ref/netcore50/System.ObjectModel.dll", + "ref/netcore50/System.ObjectModel.xml", + "ref/netcore50/zh-hans/System.ObjectModel.xml", + "ref/netcore50/zh-hant/System.ObjectModel.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.ObjectModel.4.0.0.nupkg", + "System.ObjectModel.4.0.0.nupkg.sha512", + "System.ObjectModel.nuspec" + ] + }, "System.Private.Uri/4.0.0": { "type": "package", "serviceable": true, @@ -553,6 +949,40 @@ "System.Reflection.nuspec" ] }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "dbYaZWCyFAu1TGYUqR2n+Q+1casSHPR2vVW0WVNkXpZbrd2BXcZ7cpvpu9C98CTHtNmyfMWCLpCclDqly23t6A==", + "files": [ + "lib/DNXCore50/System.Reflection.Extensions.dll", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Extensions.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "ref/dotnet/de/System.Reflection.Extensions.xml", + "ref/dotnet/es/System.Reflection.Extensions.xml", + "ref/dotnet/fr/System.Reflection.Extensions.xml", + "ref/dotnet/it/System.Reflection.Extensions.xml", + "ref/dotnet/ja/System.Reflection.Extensions.xml", + "ref/dotnet/ko/System.Reflection.Extensions.xml", + "ref/dotnet/ru/System.Reflection.Extensions.xml", + "ref/dotnet/System.Reflection.Extensions.dll", + "ref/dotnet/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hans/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hant/System.Reflection.Extensions.xml", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Extensions.dll", + "ref/netcore50/System.Reflection.Extensions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "runtimes/win8-aot/lib/netcore50/System.Reflection.Extensions.dll", + "System.Reflection.Extensions.4.0.0.nupkg", + "System.Reflection.Extensions.4.0.0.nupkg.sha512", + "System.Reflection.Extensions.nuspec" + ] + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "serviceable": true, @@ -757,10 +1187,10 @@ "System.Runtime.InteropServices.nuspec" ] }, - "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23311": { + "System.Runtime.InteropServices.RuntimeInformation/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "76bBVSdeG3enYyNmibt8x85V2fHK8mRPlpz5cPdtl0QPj2A3Hyar+g+W5t9XSw5jPLwRB4tZn8a18bPRcCEiow==", + "sha512": "3iuy8asS4InpTBRCWcSx6/gzPJWnwXQitPa83mMBBrdNoXm05YpTVVR/XYeCMOMFLRlprzl9Mw9FbOHiQpsQyw==", "files": [ "lib/dotnet/System.Runtime.InteropServices.RuntimeInformation.dll", "lib/MonoAndroid10/_._", @@ -772,8 +1202,8 @@ "ref/MonoTouch10/_._", "ref/xamarinios10/_._", "ref/xamarinmac20/_._", - "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23311.nupkg", - "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23311.nupkg.sha512", + "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23316.nupkg", + "System.Runtime.InteropServices.RuntimeInformation.4.0.0-beta-23316.nupkg.sha512", "System.Runtime.InteropServices.RuntimeInformation.nuspec" ] }, @@ -810,6 +1240,87 @@ "System.Text.Encoding.nuspec" ] }, + "System.Text.Encoding.Extensions/4.0.10": { + "type": "package", + "sha512": "TZvlwXMxKo3bSRIcsWZLCIzIhLbvlz+mGeKYRZv/zUiSoQzGOwkYeBu6hOw2XPQgKqT0F4Rv8zqKdvmp2fWKYg==", + "files": [ + "lib/DNXCore50/System.Text.Encoding.Extensions.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Text.Encoding.Extensions.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Text.Encoding.Extensions.xml", + "ref/dotnet/es/System.Text.Encoding.Extensions.xml", + "ref/dotnet/fr/System.Text.Encoding.Extensions.xml", + "ref/dotnet/it/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ja/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ko/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ru/System.Text.Encoding.Extensions.xml", + "ref/dotnet/System.Text.Encoding.Extensions.dll", + "ref/dotnet/System.Text.Encoding.Extensions.xml", + "ref/dotnet/zh-hans/System.Text.Encoding.Extensions.xml", + "ref/dotnet/zh-hant/System.Text.Encoding.Extensions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Text.Encoding.Extensions.dll", + "System.Text.Encoding.Extensions.4.0.10.nupkg", + "System.Text.Encoding.Extensions.4.0.10.nupkg.sha512", + "System.Text.Encoding.Extensions.nuspec" + ] + }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "sha512": "D2CHm8LBIymJK9+1E3sn4cUEzMd6B+quQUrCGUluv9QFBNOdL3XqNu548QKeNplEXFOmF5aKXMxXbTrjbEUNMw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Text.RegularExpressions.xml", + "ref/dotnet/es/System.Text.RegularExpressions.xml", + "ref/dotnet/fr/System.Text.RegularExpressions.xml", + "ref/dotnet/it/System.Text.RegularExpressions.xml", + "ref/dotnet/ja/System.Text.RegularExpressions.xml", + "ref/dotnet/ko/System.Text.RegularExpressions.xml", + "ref/dotnet/ru/System.Text.RegularExpressions.xml", + "ref/dotnet/System.Text.RegularExpressions.dll", + "ref/dotnet/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hans/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hant/System.Text.RegularExpressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Text.RegularExpressions.xml", + "ref/netcore50/es/System.Text.RegularExpressions.xml", + "ref/netcore50/fr/System.Text.RegularExpressions.xml", + "ref/netcore50/it/System.Text.RegularExpressions.xml", + "ref/netcore50/ja/System.Text.RegularExpressions.xml", + "ref/netcore50/ko/System.Text.RegularExpressions.xml", + "ref/netcore50/ru/System.Text.RegularExpressions.xml", + "ref/netcore50/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Text.RegularExpressions.4.0.0.nupkg", + "System.Text.RegularExpressions.4.0.0.nupkg.sha512", + "System.Text.RegularExpressions.nuspec" + ] + }, "System.Threading/4.0.10": { "type": "package", "serviceable": true, @@ -844,6 +1355,31 @@ "System.Threading.nuspec" ] }, + "System.Threading.Overlapped/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "X5LuQFhM5FTqaez3eXKJ9CbfSGZ7wj6j4hSVtxct3zmwQXLqG95qoWdvILcgN7xtrDOBIFtpiyDg0vmoI0jE2A==", + "files": [ + "lib/DNXCore50/System.Threading.Overlapped.dll", + "lib/net46/System.Threading.Overlapped.dll", + "lib/netcore50/System.Threading.Overlapped.dll", + "ref/dotnet/de/System.Threading.Overlapped.xml", + "ref/dotnet/es/System.Threading.Overlapped.xml", + "ref/dotnet/fr/System.Threading.Overlapped.xml", + "ref/dotnet/it/System.Threading.Overlapped.xml", + "ref/dotnet/ja/System.Threading.Overlapped.xml", + "ref/dotnet/ko/System.Threading.Overlapped.xml", + "ref/dotnet/ru/System.Threading.Overlapped.xml", + "ref/dotnet/System.Threading.Overlapped.dll", + "ref/dotnet/System.Threading.Overlapped.xml", + "ref/dotnet/zh-hans/System.Threading.Overlapped.xml", + "ref/dotnet/zh-hant/System.Threading.Overlapped.xml", + "ref/net46/System.Threading.Overlapped.dll", + "System.Threading.Overlapped.4.0.0.nupkg", + "System.Threading.Overlapped.4.0.0.nupkg.sha512", + "System.Threading.Overlapped.nuspec" + ] + }, "System.Threading.Tasks/4.0.10": { "type": "package", "serviceable": true, @@ -878,12 +1414,12 @@ "System.Threading.Tasks.nuspec" ] }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", - "sha512": "NMFXV0ePe/GrfhMSPGAlWmiUZCzjaatpdAGcavf2B6vYTRyMTpyJT01LI6jemMV/VSDXLrtHp0Ov9xZyR1cLLg==", + "sha512": "dVnDKBCIpLE5GaxLALnbnobqtDyTTDKJSRbqhLGrx0Ptc/n3VQRUby/CDx6v+y7xNVPqtqj0XMeDO1DVT8E3tA==", "files": [ - "xunit.2.1.0-beta3-build3029.nupkg", - "xunit.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.2.1.0-rc1-build3168.nupkg", + "xunit.2.1.0-rc1-build3168.nupkg.sha512", "xunit.nuspec" ] }, @@ -900,105 +1436,116 @@ "xunit.abstractions.nuspec" ] }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", - "sha512": "AMS7Fv77DayXVRCBMmVEDwOXPcbxk8dCBA/iACsve+6+UQqopMtNyAynyIcXPFRK/peeitUKID4ChOXWisJmUw==", + "sha512": "lsTK4OaNGt5IOoKO3ZQ0gSFngjWSHZ5xNurNtLd0MxZv5onv66xlNmWBYCVNt4sZLknQ+RfiqYm1EZ9ZrA0SDw==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.xml", - "xunit.assert.2.1.0-beta3-build3029.nupkg", - "xunit.assert.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.assert.dll", + "lib/dotnet/xunit.assert.pdb", + "lib/dotnet/xunit.assert.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.xml", + "xunit.assert.2.1.0-rc1-build3168.nupkg", + "xunit.assert.2.1.0-rc1-build3168.nupkg.sha512", "xunit.assert.nuspec" ] }, - "xunit.core/2.1.0-beta3-build3029": { - "type": "package", - "sha512": "uDUBbwZSRx226BMwj6VylzXQPVpEIelNIulT+LxbSEH52y2a4btR9d5ptQmkSVjmJXP5/hGCc4cu1DSCu0pgUA==", - "files": [ - "build/_Desktop/xunit.execution.desktop.dll", - "build/monoandroid/xunit.core.props", - "build/monoandroid/xunit.execution.MonoAndroid.dll", - "build/monotouch/xunit.core.props", - "build/monotouch/xunit.execution.MonoTouch.dll", - "build/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.targets", - "build/portable-win81+wpa81/xunit.execution.universal.dll", - "build/portable-win81+wpa81/xunit.execution.universal.pri", - "build/wp8/xunit.core.props", - "build/wp8/xunit.core.targets", - "build/wp8/xunit.execution.wp8.dll", - "build/Xamarin.iOS/xunit.core.props", - "build/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "xunit.core.2.1.0-beta3-build3029.nupkg", - "xunit.core.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.core/2.1.0-rc1-build3168": { + "type": "package", + "sha512": "IcQo+pNEDYBC9HJfzY08k0NhLZMX8WXudrlhcrIAzkT2szhrLbGhUi1k6vU5n9crsVv+IxosvIH28kYf6/Z32w==", + "files": [ + "build/_desktop/xunit.execution.desktop.dll", + "build/dnx451/_._", + "build/monoandroid/_._", + "build/monotouch/_._", + "build/net45/_._", + "build/portable-net45+win8+wp8+wpa81/xunit.core.props", + "build/win8/_._", + "build/win81/xunit.core.props", + "build/wp8/_._", + "build/wpa81/xunit.core.props", + "build/xamarinios/_._", + "xunit.core.2.1.0-rc1-build3168.nupkg", + "xunit.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.core.nuspec" ] }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "lsPro5U3NLasHI/RwqjKzXiRlh9N0IOlR3cluwXYVtihXbGtySeSnU/Fh5MTcWYxh+MVpoNop5zDD0/A2nrHsA==", + "sha512": "8KZaq1mdeaiZxo1ScsGzhkeQRwLLS6+WIno+9gtnYccWmTjCJ/XSYz2fAAlB5mUeyw0vqqrFc+TfNZELs5QiZQ==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll.tdnet", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.xml", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.core.dll", + "lib/dotnet/xunit.core.dll.tdnet", + "lib/dotnet/xunit.core.pdb", + "lib/dotnet/xunit.core.xml", + "lib/dotnet/xunit.runner.tdnet.dll", + "lib/dotnet/xunit.runner.utility.desktop.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll.tdnet", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.tdnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.utility.desktop.dll", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.core.nuspec" ] }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { - "type": "package", - "sha512": "WuUYamK4RHrHxihvNuX7NkryMhQrpH1+ziJ/mPIQbm18zevSgre8BwUuVZvmLZa8uVob3xS4dvAah2+HCgLiXg==", - "files": [ - "lib/dnx451/xunit.execution.dnx.dll", - "lib/dnx451/xunit.execution.dnx.pdb", - "lib/dnx451/xunit.execution.dnx.xml", - "lib/dnxcore50/xunit.execution.dnx.dll", - "lib/dnxcore50/xunit.execution.dnx.pdb", - "lib/dnxcore50/xunit.execution.dnx.xml", - "lib/monoandroid/xunit.execution.MonoAndroid.dll", - "lib/monoandroid/xunit.execution.MonoAndroid.pdb", - "lib/monoandroid/xunit.execution.MonoAndroid.xml", - "lib/monotouch/xunit.execution.MonoTouch.dll", - "lib/monotouch/xunit.execution.MonoTouch.pdb", - "lib/monotouch/xunit.execution.MonoTouch.xml", - "lib/net45/xunit.execution.desktop.dll", - "lib/net45/xunit.execution.desktop.pdb", - "lib/net45/xunit.execution.desktop.xml", - "lib/portable-wpa81+win81/xunit.execution.universal.dll", - "lib/portable-wpa81+win81/xunit.execution.universal.pdb", - "lib/portable-wpa81+win81/xunit.execution.universal.pri", - "lib/portable-wpa81+win81/xunit.execution.universal.xml", - "lib/wp8/xunit.execution.wp8.dll", - "lib/wp8/xunit.execution.wp8.pdb", - "lib/wp8/xunit.execution.wp8.xml", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.pdb", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.xml", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.extensibility.execution/2.1.0-rc1-build3168": { + "type": "package", + "sha512": "1w0u3eB7i25hca60r/53oSVb0blMOEm2eVqvwTg9jhMSe/A9raj6UZAVzUnFtA3xLssP4K1udOGTC1qrZ9/VoA==", + "files": [ + "lib/dnx451/xunit.execution.dotnet.dll", + "lib/dnx451/xunit.execution.dotnet.pdb", + "lib/dnx451/xunit.execution.dotnet.xml", + "lib/dotnet/xunit.execution.dotnet.dll", + "lib/dotnet/xunit.execution.dotnet.pdb", + "lib/dotnet/xunit.execution.dotnet.xml", + "lib/monoandroid/xunit.execution.dotnet.dll", + "lib/monoandroid/xunit.execution.dotnet.pdb", + "lib/monoandroid/xunit.execution.dotnet.xml", + "lib/monotouch/xunit.execution.dotnet.dll", + "lib/monotouch/xunit.execution.dotnet.pdb", + "lib/monotouch/xunit.execution.dotnet.xml", + "lib/net35/xunit.execution.desktop.dll", + "lib/net35/xunit.execution.desktop.pdb", + "lib/net35/xunit.execution.desktop.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.xml", + "lib/win8/xunit.execution.dotnet.dll", + "lib/win8/xunit.execution.dotnet.pdb", + "lib/win8/xunit.execution.dotnet.xml", + "lib/wp8/xunit.execution.dotnet.dll", + "lib/wp8/xunit.execution.dotnet.pdb", + "lib/wp8/xunit.execution.dotnet.xml", + "lib/wpa81/xunit.execution.dotnet.dll", + "lib/wpa81/xunit.execution.dotnet.pdb", + "lib/wpa81/xunit.execution.dotnet.xml", + "lib/xamarinios/xunit.execution.dotnet.dll", + "lib/xamarinios/xunit.execution.dotnet.pdb", + "lib/xamarinios/xunit.execution.dotnet.xml", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.execution.nuspec" ] }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "serviceable": true, - "sha512": "P3Q9YspdSUzoJQS6iT5mF3jt+s0u9u/G3K6s0Ns7NbAwQPktjwuO7CgJk38fop4yYDVdsVEwbZF2jfNMhJ7hkQ==", + "sha512": "9t2jrzI6N5ueydH5omBi95hiBOuNXpI6sS2kQJO56+bUavVpSD6/aD0C4+Nqbiql8Zvu0yx2GO+2IAd0JQcjIA==", "files": [ "lib/dotnet/Xunit.NetCore.Extensions.dll", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg.sha512", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg.sha512", "xunit.netcore.extensions.nuspec" ] } }, "projectFileDependencyGroups": { "": [ + "Microsoft.DotNet.xunit.performance >= 1.0.0-*", "System.Console >= 4.0.0-beta-*", "System.Globalization >= 4.0.10", "System.Reflection >= 4.0.10", @@ -1008,7 +1555,7 @@ "System.Runtime.InteropServices.RuntimeInformation >= 4.0.0-beta-*", "System.Threading >= 4.0.10", "System.Threading.Tasks >= 4.0.10", - "xunit >= 2.1.0-beta3-*", + "xunit >= 2.1.0-rc1-*", "xunit.netcore.extensions >= 1.0.0-prerelease-*" ], "DNXCore,Version=v5.0": [] diff --git a/src/System.Text.Encoding/tests/Performance/Perf.Encoding.cs b/src/System.Text.Encoding/tests/Performance/Perf.Encoding.cs new file mode 100644 index 0000000000..a9bf4ee9ab --- /dev/null +++ b/src/System.Text.Encoding/tests/Performance/Perf.Encoding.cs @@ -0,0 +1,30 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System.Text; +using Xunit; +using Microsoft.Xunit.Performance; + +namespace System.Runtime.Tests +{ + public class Perf_Encoding + { + [Benchmark] + [InlineData(10000)] + [InlineData(1000000)] + public void GetBytes_str(int size) + { + Encoding enc = Encoding.UTF8; + string toEncode = PerfUtils.CreateString(size); + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + enc.GetBytes(toEncode); enc.GetBytes(toEncode); enc.GetBytes(toEncode); + enc.GetBytes(toEncode); enc.GetBytes(toEncode); enc.GetBytes(toEncode); + enc.GetBytes(toEncode); enc.GetBytes(toEncode); enc.GetBytes(toEncode); + } + } + } + } +} diff --git a/src/System.Text.Encoding/tests/System.Text.Encoding.Tests.csproj b/src/System.Text.Encoding/tests/System.Text.Encoding.Tests.csproj index e150ef7fe2..487d320aea 100644 --- a/src/System.Text.Encoding/tests/System.Text.Encoding.Tests.csproj +++ b/src/System.Text.Encoding/tests/System.Text.Encoding.Tests.csproj @@ -9,7 +9,12 @@ <AssemblyName>System.Text.Encoding.Tests</AssemblyName> <RootNamespace>System.Text.Encoding.Tests</RootNamespace> </PropertyGroup> - <!-- Default configurations to help VS understand the configurations --> + <!-- Performance tests require v5.0 portable tools --> + <PropertyGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <TargetFrameworkVersion>v5.0</TargetFrameworkVersion> + <TargetFrameworkProfile /> + </PropertyGroup> + <!-- Default configurations to help VS understand the configurations --> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> @@ -117,8 +122,15 @@ <Compile Include="UTF8Encoding\UTF8EncodingGetString.cs" /> <Compile Include="$(CommonTestPath)\System\RandomDataGenerator.cs" /> </ItemGroup> + <!-- Performance Tests --> + <ItemGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <Compile Include="Performance\Perf.Encoding.cs" /> + <Compile Include="$(CommonTestPath)\Performance\PerfUtils.cs"> + <Link>Common\Performance\PerfUtils.cs</Link> + </Compile> + </ItemGroup> <ItemGroup> <None Include="project.json" /> </ItemGroup> <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> -</Project> +</Project>
\ No newline at end of file diff --git a/src/System.Text.Encoding/tests/project.json b/src/System.Text.Encoding/tests/project.json index 6f9ba3a156..1103736ee7 100644 --- a/src/System.Text.Encoding/tests/project.json +++ b/src/System.Text.Encoding/tests/project.json @@ -1,5 +1,6 @@ { "dependencies": { + "Microsoft.DotNet.xunit.performance": "1.0.0-*", "System.Globalization": "4.0.10", "System.Collections": "4.0.10", "System.Threading.Tasks": "4.0.10", @@ -7,7 +8,7 @@ "System.Runtime.Extensions": "4.0.10", "System.Text.Encoding": "4.0.10", "System.Text.Encoding.Extensions": "4.0.10", - "xunit": "2.1.0-beta3-*", + "xunit": "2.1.0-rc1-*", "xunit.netcore.extensions": "1.0.0-prerelease-*" }, "frameworks": { diff --git a/src/System.Text.Encoding/tests/project.lock.json b/src/System.Text.Encoding/tests/project.lock.json index bcc250e939..ae8632c398 100644 --- a/src/System.Text.Encoding/tests/project.lock.json +++ b/src/System.Text.Encoding/tests/project.lock.json @@ -3,6 +3,36 @@ "version": 1, "targets": { "DNXCore,Version=v5.0": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.Diagnostics.Debug": "4.0.10", + "System.Diagnostics.Tracing": "4.0.20", + "System.Globalization": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem": "4.0.0", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.10", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Text.Encoding": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Tasks": "4.0.10", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "2.1.0-rc1-build3168", + "xunit.extensibility.execution": "2.1.0-rc1-build3168" + }, + "compile": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + }, + "runtime": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + } + }, "System.Collections/4.0.10": { "type": "package", "dependencies": { @@ -27,6 +57,18 @@ "lib/DNXCore50/System.Diagnostics.Debug.dll": {} } }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Diagnostics.Tracing.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Diagnostics.Tracing.dll": {} + } + }, "System.Globalization/4.0.10": { "type": "package", "dependencies": { @@ -53,6 +95,42 @@ "lib/DNXCore50/System.IO.dll": {} } }, + "System.IO.FileSystem/4.0.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Resources.ResourceManager": "4.0.0", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Runtime.Handles": "4.0.0", + "System.Runtime.InteropServices": "4.0.20", + "System.Text.Encoding": "4.0.10", + "System.Text.Encoding.Extensions": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Overlapped": "4.0.0", + "System.Threading.Tasks": "4.0.10" + }, + "compile": { + "ref/dotnet/System.IO.FileSystem.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.IO.FileSystem.dll": {} + } + }, + "System.IO.FileSystem.Primitives/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.20" + }, + "compile": { + "ref/dotnet/System.IO.FileSystem.Primitives.dll": {} + }, + "runtime": { + "lib/dotnet/System.IO.FileSystem.Primitives.dll": {} + } + }, "System.Linq/4.0.0": { "type": "package", "dependencies": { @@ -69,6 +147,25 @@ "lib/dotnet/System.Linq.dll": {} } }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Linq.Expressions.dll": {} + } + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.ObjectModel.dll": {} + } + }, "System.Private.Uri/4.0.0": { "type": "package", "compile": { @@ -92,6 +189,19 @@ "lib/DNXCore50/System.Reflection.dll": {} } }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Reflection.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Reflection.Extensions.dll": {} + } + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "dependencies": { @@ -207,6 +317,15 @@ "lib/DNXCore50/System.Text.Encoding.Extensions.dll": {} } }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Text.RegularExpressions.dll": {} + } + }, "System.Threading/4.0.10": { "type": "package", "dependencies": { @@ -220,6 +339,19 @@ "lib/DNXCore50/System.Threading.dll": {} } }, + "System.Threading.Overlapped/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0", + "System.Runtime.Handles": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Threading.Overlapped.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Threading.Overlapped.dll": {} + } + }, "System.Threading.Tasks/4.0.10": { "type": "package", "dependencies": { @@ -232,11 +364,11 @@ "lib/DNXCore50/System.Threading.Tasks.dll": {} } }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.assert": "[2.1.0-beta3-build3029]", - "xunit.core": "[2.1.0-beta3-build3029]" + "xunit.assert": "[2.1.0-rc1-build3168]", + "xunit.core": "[2.1.0-rc1-build3168]" } }, "xunit.abstractions/2.0.0": { @@ -248,49 +380,86 @@ "lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll": {} } }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", + "dependencies": { + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.ObjectModel": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.RegularExpressions": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} } }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]", - "xunit.extensibility.execution": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]", + "xunit.extensibility.execution": "[2.1.0-rc1-build3168]" } }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { "xunit.abstractions": "[2.0.0]" }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {} + "lib/dotnet/xunit.core.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll": {} + "lib/dotnet/xunit.core.dll": {}, + "lib/dotnet/xunit.runner.tdnet.dll": {}, + "lib/dotnet/xunit.runner.utility.desktop.dll": {} } }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.0", + "System.Linq": "4.0.0", + "System.Linq.Expressions": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.Encoding": "4.0.0", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]" }, "compile": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} }, "runtime": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} } }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "dependencies": { "System.Diagnostics.Debug": "4.0.10", @@ -318,6 +487,25 @@ } }, "libraries": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "sha512": "NCrgkMUcuMy3T5PY9kcBFpRyN/HrUyHsSxvdyq426iTZj2pG+6odaztW5BrQov3gPEXM5cPx4+64djl4sC8/nw==", + "files": [ + "lib/dotnet/xunit.performance.core.dll", + "lib/dotnet/xunit.performance.core.pdb", + "lib/dotnet/xunit.performance.core.XML", + "lib/dotnet/xunit.performance.execution.dotnet.dll", + "lib/dotnet/xunit.performance.execution.dotnet.pdb", + "lib/net46/xunit.performance.core.dll", + "lib/net46/xunit.performance.core.pdb", + "lib/net46/xunit.performance.core.XML", + "lib/net46/xunit.performance.execution.desktop.dll", + "lib/net46/xunit.performance.execution.desktop.pdb", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg.sha512", + "Microsoft.DotNet.xunit.performance.nuspec" + ] + }, "System.Collections/4.0.10": { "type": "package", "serviceable": true, @@ -386,6 +574,40 @@ "System.Diagnostics.Debug.nuspec" ] }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "serviceable": true, + "sha512": "gn/wexGHc35Fv++5L1gYHMY5g25COfiZ0PGrL+3PfwzoJd4X2LbTAm/U8d385SI6BKQBI/z4dQfvneS9J27+Tw==", + "files": [ + "lib/DNXCore50/System.Diagnostics.Tracing.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Diagnostics.Tracing.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Diagnostics.Tracing.xml", + "ref/dotnet/es/System.Diagnostics.Tracing.xml", + "ref/dotnet/fr/System.Diagnostics.Tracing.xml", + "ref/dotnet/it/System.Diagnostics.Tracing.xml", + "ref/dotnet/ja/System.Diagnostics.Tracing.xml", + "ref/dotnet/ko/System.Diagnostics.Tracing.xml", + "ref/dotnet/ru/System.Diagnostics.Tracing.xml", + "ref/dotnet/System.Diagnostics.Tracing.dll", + "ref/dotnet/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hans/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hant/System.Diagnostics.Tracing.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Diagnostics.Tracing.dll", + "System.Diagnostics.Tracing.4.0.20.nupkg", + "System.Diagnostics.Tracing.4.0.20.nupkg.sha512", + "System.Diagnostics.Tracing.nuspec" + ] + }, "System.Globalization/4.0.10": { "type": "package", "sha512": "kzRtbbCNAxdafFBDogcM36ehA3th8c1PGiz8QRkZn8O5yMBorDHSK8/TGJPYOaCS5zdsGk0u9qXHnW91nqy7fw==", @@ -453,6 +675,71 @@ "System.IO.nuspec" ] }, + "System.IO.FileSystem/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "eo05SPWfG+54UA0wxgRIYOuOslq+2QrJLXZaJDDsfLXG15OLguaItW39NYZTqUb4DeGOkU4R0wpOLOW4ynMUDQ==", + "files": [ + "lib/DNXCore50/System.IO.FileSystem.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.dll", + "lib/netcore50/System.IO.FileSystem.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.IO.FileSystem.xml", + "ref/dotnet/es/System.IO.FileSystem.xml", + "ref/dotnet/fr/System.IO.FileSystem.xml", + "ref/dotnet/it/System.IO.FileSystem.xml", + "ref/dotnet/ja/System.IO.FileSystem.xml", + "ref/dotnet/ko/System.IO.FileSystem.xml", + "ref/dotnet/ru/System.IO.FileSystem.xml", + "ref/dotnet/System.IO.FileSystem.dll", + "ref/dotnet/System.IO.FileSystem.xml", + "ref/dotnet/zh-hans/System.IO.FileSystem.xml", + "ref/dotnet/zh-hant/System.IO.FileSystem.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.IO.FileSystem.4.0.0.nupkg", + "System.IO.FileSystem.4.0.0.nupkg.sha512", + "System.IO.FileSystem.nuspec" + ] + }, + "System.IO.FileSystem.Primitives/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "7pJUvYi/Yq3A5nagqCCiOw3+aJp3xXc/Cjr8dnJDnER3/6kX3LEencfqmXUcPl9+7OvRNyPMNhqsLAcMK6K/KA==", + "files": [ + "lib/dotnet/System.IO.FileSystem.Primitives.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/es/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/fr/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/it/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ja/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ko/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ru/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/System.IO.FileSystem.Primitives.dll", + "ref/dotnet/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/zh-hans/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/zh-hant/System.IO.FileSystem.Primitives.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.Primitives.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.IO.FileSystem.Primitives.4.0.0.nupkg", + "System.IO.FileSystem.Primitives.4.0.0.nupkg.sha512", + "System.IO.FileSystem.Primitives.nuspec" + ] + }, "System.Linq/4.0.0": { "type": "package", "serviceable": true, @@ -486,6 +773,102 @@ "System.Linq.nuspec" ] }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "sha512": "wlfVllrKi+evu4Hi8yoJP1dSOVXbvsy7Hs1+oz4Cykfdf6MQTPlD3LI4WKWhprn8FpU5MS3spPSbcMX5sAoJSw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Linq.Expressions.xml", + "ref/dotnet/es/System.Linq.Expressions.xml", + "ref/dotnet/fr/System.Linq.Expressions.xml", + "ref/dotnet/it/System.Linq.Expressions.xml", + "ref/dotnet/ja/System.Linq.Expressions.xml", + "ref/dotnet/ko/System.Linq.Expressions.xml", + "ref/dotnet/ru/System.Linq.Expressions.xml", + "ref/dotnet/System.Linq.Expressions.dll", + "ref/dotnet/System.Linq.Expressions.xml", + "ref/dotnet/zh-hans/System.Linq.Expressions.xml", + "ref/dotnet/zh-hant/System.Linq.Expressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Linq.Expressions.xml", + "ref/netcore50/es/System.Linq.Expressions.xml", + "ref/netcore50/fr/System.Linq.Expressions.xml", + "ref/netcore50/it/System.Linq.Expressions.xml", + "ref/netcore50/ja/System.Linq.Expressions.xml", + "ref/netcore50/ko/System.Linq.Expressions.xml", + "ref/netcore50/ru/System.Linq.Expressions.xml", + "ref/netcore50/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.xml", + "ref/netcore50/zh-hans/System.Linq.Expressions.xml", + "ref/netcore50/zh-hant/System.Linq.Expressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Linq.Expressions.4.0.0.nupkg", + "System.Linq.Expressions.4.0.0.nupkg.sha512", + "System.Linq.Expressions.nuspec" + ] + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "sha512": "+3j/n+5SlF7PKb0/s5kdord+5RyW3uUscB+0WPuYvfAvEgyx6yPdPXU9tXdDZImRohMuWnQTAG2rFojFPfoGbA==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.ObjectModel.xml", + "ref/dotnet/es/System.ObjectModel.xml", + "ref/dotnet/fr/System.ObjectModel.xml", + "ref/dotnet/it/System.ObjectModel.xml", + "ref/dotnet/ja/System.ObjectModel.xml", + "ref/dotnet/ko/System.ObjectModel.xml", + "ref/dotnet/ru/System.ObjectModel.xml", + "ref/dotnet/System.ObjectModel.dll", + "ref/dotnet/System.ObjectModel.xml", + "ref/dotnet/zh-hans/System.ObjectModel.xml", + "ref/dotnet/zh-hant/System.ObjectModel.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.ObjectModel.xml", + "ref/netcore50/es/System.ObjectModel.xml", + "ref/netcore50/fr/System.ObjectModel.xml", + "ref/netcore50/it/System.ObjectModel.xml", + "ref/netcore50/ja/System.ObjectModel.xml", + "ref/netcore50/ko/System.ObjectModel.xml", + "ref/netcore50/ru/System.ObjectModel.xml", + "ref/netcore50/System.ObjectModel.dll", + "ref/netcore50/System.ObjectModel.xml", + "ref/netcore50/zh-hans/System.ObjectModel.xml", + "ref/netcore50/zh-hant/System.ObjectModel.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.ObjectModel.4.0.0.nupkg", + "System.ObjectModel.4.0.0.nupkg.sha512", + "System.ObjectModel.nuspec" + ] + }, "System.Private.Uri/4.0.0": { "type": "package", "serviceable": true, @@ -534,6 +917,40 @@ "System.Reflection.nuspec" ] }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "dbYaZWCyFAu1TGYUqR2n+Q+1casSHPR2vVW0WVNkXpZbrd2BXcZ7cpvpu9C98CTHtNmyfMWCLpCclDqly23t6A==", + "files": [ + "lib/DNXCore50/System.Reflection.Extensions.dll", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Extensions.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "ref/dotnet/de/System.Reflection.Extensions.xml", + "ref/dotnet/es/System.Reflection.Extensions.xml", + "ref/dotnet/fr/System.Reflection.Extensions.xml", + "ref/dotnet/it/System.Reflection.Extensions.xml", + "ref/dotnet/ja/System.Reflection.Extensions.xml", + "ref/dotnet/ko/System.Reflection.Extensions.xml", + "ref/dotnet/ru/System.Reflection.Extensions.xml", + "ref/dotnet/System.Reflection.Extensions.dll", + "ref/dotnet/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hans/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hant/System.Reflection.Extensions.xml", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Extensions.dll", + "ref/netcore50/System.Reflection.Extensions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "runtimes/win8-aot/lib/netcore50/System.Reflection.Extensions.dll", + "System.Reflection.Extensions.4.0.0.nupkg", + "System.Reflection.Extensions.4.0.0.nupkg.sha512", + "System.Reflection.Extensions.nuspec" + ] + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "serviceable": true, @@ -824,6 +1241,54 @@ "System.Text.Encoding.Extensions.nuspec" ] }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "sha512": "D2CHm8LBIymJK9+1E3sn4cUEzMd6B+quQUrCGUluv9QFBNOdL3XqNu548QKeNplEXFOmF5aKXMxXbTrjbEUNMw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Text.RegularExpressions.xml", + "ref/dotnet/es/System.Text.RegularExpressions.xml", + "ref/dotnet/fr/System.Text.RegularExpressions.xml", + "ref/dotnet/it/System.Text.RegularExpressions.xml", + "ref/dotnet/ja/System.Text.RegularExpressions.xml", + "ref/dotnet/ko/System.Text.RegularExpressions.xml", + "ref/dotnet/ru/System.Text.RegularExpressions.xml", + "ref/dotnet/System.Text.RegularExpressions.dll", + "ref/dotnet/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hans/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hant/System.Text.RegularExpressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Text.RegularExpressions.xml", + "ref/netcore50/es/System.Text.RegularExpressions.xml", + "ref/netcore50/fr/System.Text.RegularExpressions.xml", + "ref/netcore50/it/System.Text.RegularExpressions.xml", + "ref/netcore50/ja/System.Text.RegularExpressions.xml", + "ref/netcore50/ko/System.Text.RegularExpressions.xml", + "ref/netcore50/ru/System.Text.RegularExpressions.xml", + "ref/netcore50/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Text.RegularExpressions.4.0.0.nupkg", + "System.Text.RegularExpressions.4.0.0.nupkg.sha512", + "System.Text.RegularExpressions.nuspec" + ] + }, "System.Threading/4.0.10": { "type": "package", "serviceable": true, @@ -858,6 +1323,31 @@ "System.Threading.nuspec" ] }, + "System.Threading.Overlapped/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "X5LuQFhM5FTqaez3eXKJ9CbfSGZ7wj6j4hSVtxct3zmwQXLqG95qoWdvILcgN7xtrDOBIFtpiyDg0vmoI0jE2A==", + "files": [ + "lib/DNXCore50/System.Threading.Overlapped.dll", + "lib/net46/System.Threading.Overlapped.dll", + "lib/netcore50/System.Threading.Overlapped.dll", + "ref/dotnet/de/System.Threading.Overlapped.xml", + "ref/dotnet/es/System.Threading.Overlapped.xml", + "ref/dotnet/fr/System.Threading.Overlapped.xml", + "ref/dotnet/it/System.Threading.Overlapped.xml", + "ref/dotnet/ja/System.Threading.Overlapped.xml", + "ref/dotnet/ko/System.Threading.Overlapped.xml", + "ref/dotnet/ru/System.Threading.Overlapped.xml", + "ref/dotnet/System.Threading.Overlapped.dll", + "ref/dotnet/System.Threading.Overlapped.xml", + "ref/dotnet/zh-hans/System.Threading.Overlapped.xml", + "ref/dotnet/zh-hant/System.Threading.Overlapped.xml", + "ref/net46/System.Threading.Overlapped.dll", + "System.Threading.Overlapped.4.0.0.nupkg", + "System.Threading.Overlapped.4.0.0.nupkg.sha512", + "System.Threading.Overlapped.nuspec" + ] + }, "System.Threading.Tasks/4.0.10": { "type": "package", "serviceable": true, @@ -892,12 +1382,12 @@ "System.Threading.Tasks.nuspec" ] }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", - "sha512": "NMFXV0ePe/GrfhMSPGAlWmiUZCzjaatpdAGcavf2B6vYTRyMTpyJT01LI6jemMV/VSDXLrtHp0Ov9xZyR1cLLg==", + "sha512": "dVnDKBCIpLE5GaxLALnbnobqtDyTTDKJSRbqhLGrx0Ptc/n3VQRUby/CDx6v+y7xNVPqtqj0XMeDO1DVT8E3tA==", "files": [ - "xunit.2.1.0-beta3-build3029.nupkg", - "xunit.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.2.1.0-rc1-build3168.nupkg", + "xunit.2.1.0-rc1-build3168.nupkg.sha512", "xunit.nuspec" ] }, @@ -914,105 +1404,116 @@ "xunit.abstractions.nuspec" ] }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", - "sha512": "AMS7Fv77DayXVRCBMmVEDwOXPcbxk8dCBA/iACsve+6+UQqopMtNyAynyIcXPFRK/peeitUKID4ChOXWisJmUw==", + "sha512": "lsTK4OaNGt5IOoKO3ZQ0gSFngjWSHZ5xNurNtLd0MxZv5onv66xlNmWBYCVNt4sZLknQ+RfiqYm1EZ9ZrA0SDw==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.xml", - "xunit.assert.2.1.0-beta3-build3029.nupkg", - "xunit.assert.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.assert.dll", + "lib/dotnet/xunit.assert.pdb", + "lib/dotnet/xunit.assert.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.xml", + "xunit.assert.2.1.0-rc1-build3168.nupkg", + "xunit.assert.2.1.0-rc1-build3168.nupkg.sha512", "xunit.assert.nuspec" ] }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "uDUBbwZSRx226BMwj6VylzXQPVpEIelNIulT+LxbSEH52y2a4btR9d5ptQmkSVjmJXP5/hGCc4cu1DSCu0pgUA==", + "sha512": "IcQo+pNEDYBC9HJfzY08k0NhLZMX8WXudrlhcrIAzkT2szhrLbGhUi1k6vU5n9crsVv+IxosvIH28kYf6/Z32w==", "files": [ - "build/_Desktop/xunit.execution.desktop.dll", - "build/monoandroid/xunit.core.props", - "build/monoandroid/xunit.execution.MonoAndroid.dll", - "build/monotouch/xunit.core.props", - "build/monotouch/xunit.execution.MonoTouch.dll", - "build/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.targets", - "build/portable-win81+wpa81/xunit.execution.universal.dll", - "build/portable-win81+wpa81/xunit.execution.universal.pri", - "build/wp8/xunit.core.props", - "build/wp8/xunit.core.targets", - "build/wp8/xunit.execution.wp8.dll", - "build/Xamarin.iOS/xunit.core.props", - "build/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "xunit.core.2.1.0-beta3-build3029.nupkg", - "xunit.core.2.1.0-beta3-build3029.nupkg.sha512", + "build/_desktop/xunit.execution.desktop.dll", + "build/dnx451/_._", + "build/monoandroid/_._", + "build/monotouch/_._", + "build/net45/_._", + "build/portable-net45+win8+wp8+wpa81/xunit.core.props", + "build/win8/_._", + "build/win81/xunit.core.props", + "build/wp8/_._", + "build/wpa81/xunit.core.props", + "build/xamarinios/_._", + "xunit.core.2.1.0-rc1-build3168.nupkg", + "xunit.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.core.nuspec" ] }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "lsPro5U3NLasHI/RwqjKzXiRlh9N0IOlR3cluwXYVtihXbGtySeSnU/Fh5MTcWYxh+MVpoNop5zDD0/A2nrHsA==", + "sha512": "8KZaq1mdeaiZxo1ScsGzhkeQRwLLS6+WIno+9gtnYccWmTjCJ/XSYz2fAAlB5mUeyw0vqqrFc+TfNZELs5QiZQ==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll.tdnet", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.xml", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.core.dll", + "lib/dotnet/xunit.core.dll.tdnet", + "lib/dotnet/xunit.core.pdb", + "lib/dotnet/xunit.core.xml", + "lib/dotnet/xunit.runner.tdnet.dll", + "lib/dotnet/xunit.runner.utility.desktop.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll.tdnet", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.tdnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.utility.desktop.dll", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.core.nuspec" ] }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", - "sha512": "WuUYamK4RHrHxihvNuX7NkryMhQrpH1+ziJ/mPIQbm18zevSgre8BwUuVZvmLZa8uVob3xS4dvAah2+HCgLiXg==", + "sha512": "1w0u3eB7i25hca60r/53oSVb0blMOEm2eVqvwTg9jhMSe/A9raj6UZAVzUnFtA3xLssP4K1udOGTC1qrZ9/VoA==", "files": [ - "lib/dnx451/xunit.execution.dnx.dll", - "lib/dnx451/xunit.execution.dnx.pdb", - "lib/dnx451/xunit.execution.dnx.xml", - "lib/dnxcore50/xunit.execution.dnx.dll", - "lib/dnxcore50/xunit.execution.dnx.pdb", - "lib/dnxcore50/xunit.execution.dnx.xml", - "lib/monoandroid/xunit.execution.MonoAndroid.dll", - "lib/monoandroid/xunit.execution.MonoAndroid.pdb", - "lib/monoandroid/xunit.execution.MonoAndroid.xml", - "lib/monotouch/xunit.execution.MonoTouch.dll", - "lib/monotouch/xunit.execution.MonoTouch.pdb", - "lib/monotouch/xunit.execution.MonoTouch.xml", - "lib/net45/xunit.execution.desktop.dll", - "lib/net45/xunit.execution.desktop.pdb", - "lib/net45/xunit.execution.desktop.xml", - "lib/portable-wpa81+win81/xunit.execution.universal.dll", - "lib/portable-wpa81+win81/xunit.execution.universal.pdb", - "lib/portable-wpa81+win81/xunit.execution.universal.pri", - "lib/portable-wpa81+win81/xunit.execution.universal.xml", - "lib/wp8/xunit.execution.wp8.dll", - "lib/wp8/xunit.execution.wp8.pdb", - "lib/wp8/xunit.execution.wp8.xml", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.pdb", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.xml", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dnx451/xunit.execution.dotnet.dll", + "lib/dnx451/xunit.execution.dotnet.pdb", + "lib/dnx451/xunit.execution.dotnet.xml", + "lib/dotnet/xunit.execution.dotnet.dll", + "lib/dotnet/xunit.execution.dotnet.pdb", + "lib/dotnet/xunit.execution.dotnet.xml", + "lib/monoandroid/xunit.execution.dotnet.dll", + "lib/monoandroid/xunit.execution.dotnet.pdb", + "lib/monoandroid/xunit.execution.dotnet.xml", + "lib/monotouch/xunit.execution.dotnet.dll", + "lib/monotouch/xunit.execution.dotnet.pdb", + "lib/monotouch/xunit.execution.dotnet.xml", + "lib/net35/xunit.execution.desktop.dll", + "lib/net35/xunit.execution.desktop.pdb", + "lib/net35/xunit.execution.desktop.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.xml", + "lib/win8/xunit.execution.dotnet.dll", + "lib/win8/xunit.execution.dotnet.pdb", + "lib/win8/xunit.execution.dotnet.xml", + "lib/wp8/xunit.execution.dotnet.dll", + "lib/wp8/xunit.execution.dotnet.pdb", + "lib/wp8/xunit.execution.dotnet.xml", + "lib/wpa81/xunit.execution.dotnet.dll", + "lib/wpa81/xunit.execution.dotnet.pdb", + "lib/wpa81/xunit.execution.dotnet.xml", + "lib/xamarinios/xunit.execution.dotnet.dll", + "lib/xamarinios/xunit.execution.dotnet.pdb", + "lib/xamarinios/xunit.execution.dotnet.xml", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.execution.nuspec" ] }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "serviceable": true, - "sha512": "P3Q9YspdSUzoJQS6iT5mF3jt+s0u9u/G3K6s0Ns7NbAwQPktjwuO7CgJk38fop4yYDVdsVEwbZF2jfNMhJ7hkQ==", + "sha512": "9t2jrzI6N5ueydH5omBi95hiBOuNXpI6sS2kQJO56+bUavVpSD6/aD0C4+Nqbiql8Zvu0yx2GO+2IAd0JQcjIA==", "files": [ "lib/dotnet/Xunit.NetCore.Extensions.dll", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg.sha512", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg.sha512", "xunit.netcore.extensions.nuspec" ] } }, "projectFileDependencyGroups": { "": [ + "Microsoft.DotNet.xunit.performance >= 1.0.0-*", "System.Globalization >= 4.0.10", "System.Collections >= 4.0.10", "System.Threading.Tasks >= 4.0.10", @@ -1020,7 +1521,7 @@ "System.Runtime.Extensions >= 4.0.10", "System.Text.Encoding >= 4.0.10", "System.Text.Encoding.Extensions >= 4.0.10", - "xunit >= 2.1.0-beta3-*", + "xunit >= 2.1.0-rc1-*", "xunit.netcore.extensions >= 1.0.0-prerelease-*" ], "DNXCore,Version=v5.0": [] diff --git a/src/System.Threading/tests/Performance/Perf.EventWaitHandle.cs b/src/System.Threading/tests/Performance/Perf.EventWaitHandle.cs new file mode 100644 index 0000000000..f4d626c628 --- /dev/null +++ b/src/System.Threading/tests/Performance/Perf.EventWaitHandle.cs @@ -0,0 +1,27 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System.IO; +using Microsoft.Xunit.Performance; + +namespace System.Threading.Tests +{ + public class Perf_EventWaitHandle + { + [Benchmark] + public void Set_Reset() + { + foreach (var iteration in Benchmark.Iterations) + { + using (EventWaitHandle are = new EventWaitHandle(false, EventResetMode.AutoReset)) + using (iteration.StartMeasurement()) + { + are.Set(); are.Reset(); are.Set(); are.Reset(); + are.Set(); are.Reset(); are.Set(); are.Reset(); + are.Set(); are.Reset(); are.Set(); are.Reset(); + are.Set(); are.Reset(); are.Set(); are.Reset(); + } + } + } + } +} diff --git a/src/System.Threading/tests/System.Threading.Tests.csproj b/src/System.Threading/tests/System.Threading.Tests.csproj index 738f7c092c..f7e4bb6092 100644 --- a/src/System.Threading/tests/System.Threading.Tests.csproj +++ b/src/System.Threading/tests/System.Threading.Tests.csproj @@ -8,6 +8,11 @@ <AssemblyName>System.Threading.Tests</AssemblyName> <ProjectGuid>{33F5A50E-B823-4FDD-8571-365C909ACEAE}</ProjectGuid> </PropertyGroup> + <!-- Performance tests require v5.0 portable tools --> + <PropertyGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <TargetFrameworkVersion>v5.0</TargetFrameworkVersion> + <TargetFrameworkProfile /> + </PropertyGroup> <!-- Default configurations to help VS understand the configurations --> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' " /> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' " /> @@ -35,6 +40,13 @@ <Link>Common\System\Diagnostics\Tracing\TestEventListener.cs</Link> </Compile> </ItemGroup> + <!-- Performance Tests --> + <ItemGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <Compile Include="Performance\Perf.EventWaitHandle.cs" /> + <Compile Include="$(CommonTestPath)\Performance\PerfUtils.cs"> + <Link>Common\Performance\PerfUtils.cs</Link> + </Compile> + </ItemGroup> <ItemGroup> <None Include="project.json" /> </ItemGroup> diff --git a/src/System.Threading/tests/project.json b/src/System.Threading/tests/project.json index b37fb5e083..29e7b6a06a 100644 --- a/src/System.Threading/tests/project.json +++ b/src/System.Threading/tests/project.json @@ -1,5 +1,6 @@ { "dependencies": { + "Microsoft.DotNet.xunit.performance": "1.0.0-*", "System.Collections": "4.0.10", "System.Console": "4.0.0-beta-*", "System.Diagnostics.Debug": "4.0.10", @@ -11,7 +12,7 @@ "System.Runtime.InteropServices": "4.0.20", "System.Threading": "4.0.10", "System.Threading.Tasks": "4.0.10", - "xunit": "2.1.0-beta3-*", + "xunit": "2.1.0-rc1-*", "xunit.netcore.extensions": "1.0.0-prerelease-*" }, "frameworks": { diff --git a/src/System.Threading/tests/project.lock.json b/src/System.Threading/tests/project.lock.json index 1d74eb586c..9a1dcd0866 100644 --- a/src/System.Threading/tests/project.lock.json +++ b/src/System.Threading/tests/project.lock.json @@ -3,6 +3,36 @@ "version": 1, "targets": { "DNXCore,Version=v5.0": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.Diagnostics.Debug": "4.0.10", + "System.Diagnostics.Tracing": "4.0.20", + "System.Globalization": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem": "4.0.0", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.10", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Text.Encoding": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Tasks": "4.0.10", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "2.1.0-rc1-build3168", + "xunit.extensibility.execution": "2.1.0-rc1-build3168" + }, + "compile": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + }, + "runtime": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + } + }, "System.Collections/4.0.10": { "type": "package", "dependencies": { @@ -15,7 +45,7 @@ "lib/DNXCore50/System.Collections.dll": {} } }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "dependencies": { "System.IO": "4.0.0", @@ -75,6 +105,42 @@ "lib/DNXCore50/System.IO.dll": {} } }, + "System.IO.FileSystem/4.0.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Resources.ResourceManager": "4.0.0", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Runtime.Handles": "4.0.0", + "System.Runtime.InteropServices": "4.0.20", + "System.Text.Encoding": "4.0.10", + "System.Text.Encoding.Extensions": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Overlapped": "4.0.0", + "System.Threading.Tasks": "4.0.10" + }, + "compile": { + "ref/dotnet/System.IO.FileSystem.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.IO.FileSystem.dll": {} + } + }, + "System.IO.FileSystem.Primitives/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.20" + }, + "compile": { + "ref/dotnet/System.IO.FileSystem.Primitives.dll": {} + }, + "runtime": { + "lib/dotnet/System.IO.FileSystem.Primitives.dll": {} + } + }, "System.Linq/4.0.0": { "type": "package", "dependencies": { @@ -91,6 +157,25 @@ "lib/dotnet/System.Linq.dll": {} } }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Linq.Expressions.dll": {} + } + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.ObjectModel.dll": {} + } + }, "System.Private.Uri/4.0.0": { "type": "package", "compile": { @@ -114,6 +199,19 @@ "lib/DNXCore50/System.Reflection.dll": {} } }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Reflection.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Reflection.Extensions.dll": {} + } + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "dependencies": { @@ -216,6 +314,28 @@ "lib/DNXCore50/System.Text.Encoding.dll": {} } }, + "System.Text.Encoding.Extensions/4.0.10": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0", + "System.Text.Encoding": "4.0.10" + }, + "compile": { + "ref/dotnet/System.Text.Encoding.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Text.Encoding.Extensions.dll": {} + } + }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Text.RegularExpressions.dll": {} + } + }, "System.Threading/4.0.10": { "type": "package", "dependencies": { @@ -229,6 +349,19 @@ "lib/DNXCore50/System.Threading.dll": {} } }, + "System.Threading.Overlapped/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0", + "System.Runtime.Handles": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Threading.Overlapped.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Threading.Overlapped.dll": {} + } + }, "System.Threading.Tasks/4.0.10": { "type": "package", "dependencies": { @@ -241,11 +374,11 @@ "lib/DNXCore50/System.Threading.Tasks.dll": {} } }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.assert": "[2.1.0-beta3-build3029]", - "xunit.core": "[2.1.0-beta3-build3029]" + "xunit.assert": "[2.1.0-rc1-build3168]", + "xunit.core": "[2.1.0-rc1-build3168]" } }, "xunit.abstractions/2.0.0": { @@ -257,49 +390,86 @@ "lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll": {} } }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", + "dependencies": { + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.ObjectModel": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.RegularExpressions": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} } }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]", - "xunit.extensibility.execution": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]", + "xunit.extensibility.execution": "[2.1.0-rc1-build3168]" } }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { "xunit.abstractions": "[2.0.0]" }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {} + "lib/dotnet/xunit.core.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll": {} + "lib/dotnet/xunit.core.dll": {}, + "lib/dotnet/xunit.runner.tdnet.dll": {}, + "lib/dotnet/xunit.runner.utility.desktop.dll": {} } }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.0", + "System.Linq": "4.0.0", + "System.Linq.Expressions": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.Encoding": "4.0.0", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]" }, "compile": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} }, "runtime": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} } }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "dependencies": { "System.Diagnostics.Debug": "4.0.10", @@ -327,6 +497,25 @@ } }, "libraries": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "sha512": "NCrgkMUcuMy3T5PY9kcBFpRyN/HrUyHsSxvdyq426iTZj2pG+6odaztW5BrQov3gPEXM5cPx4+64djl4sC8/nw==", + "files": [ + "lib/dotnet/xunit.performance.core.dll", + "lib/dotnet/xunit.performance.core.pdb", + "lib/dotnet/xunit.performance.core.XML", + "lib/dotnet/xunit.performance.execution.dotnet.dll", + "lib/dotnet/xunit.performance.execution.dotnet.pdb", + "lib/net46/xunit.performance.core.dll", + "lib/net46/xunit.performance.core.pdb", + "lib/net46/xunit.performance.core.XML", + "lib/net46/xunit.performance.execution.desktop.dll", + "lib/net46/xunit.performance.execution.desktop.pdb", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg.sha512", + "Microsoft.DotNet.xunit.performance.nuspec" + ] + }, "System.Collections/4.0.10": { "type": "package", "serviceable": true, @@ -361,10 +550,10 @@ "System.Collections.nuspec" ] }, - "System.Console/4.0.0-beta-23311": { + "System.Console/4.0.0-beta-23316": { "type": "package", "serviceable": true, - "sha512": "aCYId/+628/CuOEBKx7sGxQ9fpqvLDqkOMuc0rqWRUCAIgNLtLd5htaQo58aXjzrP8D4/X35xVC+PQoHHis4Mg==", + "sha512": "pYDflUHKD2oIllR+HsbgfkbwNsjivEgYsFjM3eZWS6KVqa5vYVMl93OvC+WfB0Va3Q9gAZYzxXQJUv6gWoJGLw==", "files": [ "lib/MonoAndroid10/_._", "lib/MonoTouch10/_._", @@ -378,8 +567,8 @@ "ref/xamarinios10/_._", "ref/xamarinmac20/_._", "runtime.json", - "System.Console.4.0.0-beta-23311.nupkg", - "System.Console.4.0.0-beta-23311.nupkg.sha512", + "System.Console.4.0.0-beta-23316.nupkg", + "System.Console.4.0.0-beta-23316.nupkg.sha512", "System.Console.nuspec" ] }, @@ -518,6 +707,71 @@ "System.IO.nuspec" ] }, + "System.IO.FileSystem/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "eo05SPWfG+54UA0wxgRIYOuOslq+2QrJLXZaJDDsfLXG15OLguaItW39NYZTqUb4DeGOkU4R0wpOLOW4ynMUDQ==", + "files": [ + "lib/DNXCore50/System.IO.FileSystem.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.dll", + "lib/netcore50/System.IO.FileSystem.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.IO.FileSystem.xml", + "ref/dotnet/es/System.IO.FileSystem.xml", + "ref/dotnet/fr/System.IO.FileSystem.xml", + "ref/dotnet/it/System.IO.FileSystem.xml", + "ref/dotnet/ja/System.IO.FileSystem.xml", + "ref/dotnet/ko/System.IO.FileSystem.xml", + "ref/dotnet/ru/System.IO.FileSystem.xml", + "ref/dotnet/System.IO.FileSystem.dll", + "ref/dotnet/System.IO.FileSystem.xml", + "ref/dotnet/zh-hans/System.IO.FileSystem.xml", + "ref/dotnet/zh-hant/System.IO.FileSystem.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.IO.FileSystem.4.0.0.nupkg", + "System.IO.FileSystem.4.0.0.nupkg.sha512", + "System.IO.FileSystem.nuspec" + ] + }, + "System.IO.FileSystem.Primitives/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "7pJUvYi/Yq3A5nagqCCiOw3+aJp3xXc/Cjr8dnJDnER3/6kX3LEencfqmXUcPl9+7OvRNyPMNhqsLAcMK6K/KA==", + "files": [ + "lib/dotnet/System.IO.FileSystem.Primitives.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/es/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/fr/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/it/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ja/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ko/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/ru/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/System.IO.FileSystem.Primitives.dll", + "ref/dotnet/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/zh-hans/System.IO.FileSystem.Primitives.xml", + "ref/dotnet/zh-hant/System.IO.FileSystem.Primitives.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.Primitives.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.IO.FileSystem.Primitives.4.0.0.nupkg", + "System.IO.FileSystem.Primitives.4.0.0.nupkg.sha512", + "System.IO.FileSystem.Primitives.nuspec" + ] + }, "System.Linq/4.0.0": { "type": "package", "serviceable": true, @@ -551,6 +805,102 @@ "System.Linq.nuspec" ] }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "sha512": "wlfVllrKi+evu4Hi8yoJP1dSOVXbvsy7Hs1+oz4Cykfdf6MQTPlD3LI4WKWhprn8FpU5MS3spPSbcMX5sAoJSw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Linq.Expressions.xml", + "ref/dotnet/es/System.Linq.Expressions.xml", + "ref/dotnet/fr/System.Linq.Expressions.xml", + "ref/dotnet/it/System.Linq.Expressions.xml", + "ref/dotnet/ja/System.Linq.Expressions.xml", + "ref/dotnet/ko/System.Linq.Expressions.xml", + "ref/dotnet/ru/System.Linq.Expressions.xml", + "ref/dotnet/System.Linq.Expressions.dll", + "ref/dotnet/System.Linq.Expressions.xml", + "ref/dotnet/zh-hans/System.Linq.Expressions.xml", + "ref/dotnet/zh-hant/System.Linq.Expressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Linq.Expressions.xml", + "ref/netcore50/es/System.Linq.Expressions.xml", + "ref/netcore50/fr/System.Linq.Expressions.xml", + "ref/netcore50/it/System.Linq.Expressions.xml", + "ref/netcore50/ja/System.Linq.Expressions.xml", + "ref/netcore50/ko/System.Linq.Expressions.xml", + "ref/netcore50/ru/System.Linq.Expressions.xml", + "ref/netcore50/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.xml", + "ref/netcore50/zh-hans/System.Linq.Expressions.xml", + "ref/netcore50/zh-hant/System.Linq.Expressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Linq.Expressions.4.0.0.nupkg", + "System.Linq.Expressions.4.0.0.nupkg.sha512", + "System.Linq.Expressions.nuspec" + ] + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "sha512": "+3j/n+5SlF7PKb0/s5kdord+5RyW3uUscB+0WPuYvfAvEgyx6yPdPXU9tXdDZImRohMuWnQTAG2rFojFPfoGbA==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.ObjectModel.xml", + "ref/dotnet/es/System.ObjectModel.xml", + "ref/dotnet/fr/System.ObjectModel.xml", + "ref/dotnet/it/System.ObjectModel.xml", + "ref/dotnet/ja/System.ObjectModel.xml", + "ref/dotnet/ko/System.ObjectModel.xml", + "ref/dotnet/ru/System.ObjectModel.xml", + "ref/dotnet/System.ObjectModel.dll", + "ref/dotnet/System.ObjectModel.xml", + "ref/dotnet/zh-hans/System.ObjectModel.xml", + "ref/dotnet/zh-hant/System.ObjectModel.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.ObjectModel.xml", + "ref/netcore50/es/System.ObjectModel.xml", + "ref/netcore50/fr/System.ObjectModel.xml", + "ref/netcore50/it/System.ObjectModel.xml", + "ref/netcore50/ja/System.ObjectModel.xml", + "ref/netcore50/ko/System.ObjectModel.xml", + "ref/netcore50/ru/System.ObjectModel.xml", + "ref/netcore50/System.ObjectModel.dll", + "ref/netcore50/System.ObjectModel.xml", + "ref/netcore50/zh-hans/System.ObjectModel.xml", + "ref/netcore50/zh-hant/System.ObjectModel.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.ObjectModel.4.0.0.nupkg", + "System.ObjectModel.4.0.0.nupkg.sha512", + "System.ObjectModel.nuspec" + ] + }, "System.Private.Uri/4.0.0": { "type": "package", "serviceable": true, @@ -599,6 +949,40 @@ "System.Reflection.nuspec" ] }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "dbYaZWCyFAu1TGYUqR2n+Q+1casSHPR2vVW0WVNkXpZbrd2BXcZ7cpvpu9C98CTHtNmyfMWCLpCclDqly23t6A==", + "files": [ + "lib/DNXCore50/System.Reflection.Extensions.dll", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Extensions.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "ref/dotnet/de/System.Reflection.Extensions.xml", + "ref/dotnet/es/System.Reflection.Extensions.xml", + "ref/dotnet/fr/System.Reflection.Extensions.xml", + "ref/dotnet/it/System.Reflection.Extensions.xml", + "ref/dotnet/ja/System.Reflection.Extensions.xml", + "ref/dotnet/ko/System.Reflection.Extensions.xml", + "ref/dotnet/ru/System.Reflection.Extensions.xml", + "ref/dotnet/System.Reflection.Extensions.dll", + "ref/dotnet/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hans/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hant/System.Reflection.Extensions.xml", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Extensions.dll", + "ref/netcore50/System.Reflection.Extensions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "runtimes/win8-aot/lib/netcore50/System.Reflection.Extensions.dll", + "System.Reflection.Extensions.4.0.0.nupkg", + "System.Reflection.Extensions.4.0.0.nupkg.sha512", + "System.Reflection.Extensions.nuspec" + ] + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "serviceable": true, @@ -856,6 +1240,87 @@ "System.Text.Encoding.nuspec" ] }, + "System.Text.Encoding.Extensions/4.0.10": { + "type": "package", + "sha512": "TZvlwXMxKo3bSRIcsWZLCIzIhLbvlz+mGeKYRZv/zUiSoQzGOwkYeBu6hOw2XPQgKqT0F4Rv8zqKdvmp2fWKYg==", + "files": [ + "lib/DNXCore50/System.Text.Encoding.Extensions.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Text.Encoding.Extensions.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Text.Encoding.Extensions.xml", + "ref/dotnet/es/System.Text.Encoding.Extensions.xml", + "ref/dotnet/fr/System.Text.Encoding.Extensions.xml", + "ref/dotnet/it/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ja/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ko/System.Text.Encoding.Extensions.xml", + "ref/dotnet/ru/System.Text.Encoding.Extensions.xml", + "ref/dotnet/System.Text.Encoding.Extensions.dll", + "ref/dotnet/System.Text.Encoding.Extensions.xml", + "ref/dotnet/zh-hans/System.Text.Encoding.Extensions.xml", + "ref/dotnet/zh-hant/System.Text.Encoding.Extensions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Text.Encoding.Extensions.dll", + "System.Text.Encoding.Extensions.4.0.10.nupkg", + "System.Text.Encoding.Extensions.4.0.10.nupkg.sha512", + "System.Text.Encoding.Extensions.nuspec" + ] + }, + "System.Text.RegularExpressions/4.0.0": { + "type": "package", + "sha512": "D2CHm8LBIymJK9+1E3sn4cUEzMd6B+quQUrCGUluv9QFBNOdL3XqNu548QKeNplEXFOmF5aKXMxXbTrjbEUNMw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Text.RegularExpressions.xml", + "ref/dotnet/es/System.Text.RegularExpressions.xml", + "ref/dotnet/fr/System.Text.RegularExpressions.xml", + "ref/dotnet/it/System.Text.RegularExpressions.xml", + "ref/dotnet/ja/System.Text.RegularExpressions.xml", + "ref/dotnet/ko/System.Text.RegularExpressions.xml", + "ref/dotnet/ru/System.Text.RegularExpressions.xml", + "ref/dotnet/System.Text.RegularExpressions.dll", + "ref/dotnet/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hans/System.Text.RegularExpressions.xml", + "ref/dotnet/zh-hant/System.Text.RegularExpressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Text.RegularExpressions.xml", + "ref/netcore50/es/System.Text.RegularExpressions.xml", + "ref/netcore50/fr/System.Text.RegularExpressions.xml", + "ref/netcore50/it/System.Text.RegularExpressions.xml", + "ref/netcore50/ja/System.Text.RegularExpressions.xml", + "ref/netcore50/ko/System.Text.RegularExpressions.xml", + "ref/netcore50/ru/System.Text.RegularExpressions.xml", + "ref/netcore50/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Text.RegularExpressions.4.0.0.nupkg", + "System.Text.RegularExpressions.4.0.0.nupkg.sha512", + "System.Text.RegularExpressions.nuspec" + ] + }, "System.Threading/4.0.10": { "type": "package", "serviceable": true, @@ -890,6 +1355,31 @@ "System.Threading.nuspec" ] }, + "System.Threading.Overlapped/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "X5LuQFhM5FTqaez3eXKJ9CbfSGZ7wj6j4hSVtxct3zmwQXLqG95qoWdvILcgN7xtrDOBIFtpiyDg0vmoI0jE2A==", + "files": [ + "lib/DNXCore50/System.Threading.Overlapped.dll", + "lib/net46/System.Threading.Overlapped.dll", + "lib/netcore50/System.Threading.Overlapped.dll", + "ref/dotnet/de/System.Threading.Overlapped.xml", + "ref/dotnet/es/System.Threading.Overlapped.xml", + "ref/dotnet/fr/System.Threading.Overlapped.xml", + "ref/dotnet/it/System.Threading.Overlapped.xml", + "ref/dotnet/ja/System.Threading.Overlapped.xml", + "ref/dotnet/ko/System.Threading.Overlapped.xml", + "ref/dotnet/ru/System.Threading.Overlapped.xml", + "ref/dotnet/System.Threading.Overlapped.dll", + "ref/dotnet/System.Threading.Overlapped.xml", + "ref/dotnet/zh-hans/System.Threading.Overlapped.xml", + "ref/dotnet/zh-hant/System.Threading.Overlapped.xml", + "ref/net46/System.Threading.Overlapped.dll", + "System.Threading.Overlapped.4.0.0.nupkg", + "System.Threading.Overlapped.4.0.0.nupkg.sha512", + "System.Threading.Overlapped.nuspec" + ] + }, "System.Threading.Tasks/4.0.10": { "type": "package", "serviceable": true, @@ -924,12 +1414,12 @@ "System.Threading.Tasks.nuspec" ] }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", - "sha512": "NMFXV0ePe/GrfhMSPGAlWmiUZCzjaatpdAGcavf2B6vYTRyMTpyJT01LI6jemMV/VSDXLrtHp0Ov9xZyR1cLLg==", + "sha512": "dVnDKBCIpLE5GaxLALnbnobqtDyTTDKJSRbqhLGrx0Ptc/n3VQRUby/CDx6v+y7xNVPqtqj0XMeDO1DVT8E3tA==", "files": [ - "xunit.2.1.0-beta3-build3029.nupkg", - "xunit.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.2.1.0-rc1-build3168.nupkg", + "xunit.2.1.0-rc1-build3168.nupkg.sha512", "xunit.nuspec" ] }, @@ -946,105 +1436,116 @@ "xunit.abstractions.nuspec" ] }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", - "sha512": "AMS7Fv77DayXVRCBMmVEDwOXPcbxk8dCBA/iACsve+6+UQqopMtNyAynyIcXPFRK/peeitUKID4ChOXWisJmUw==", + "sha512": "lsTK4OaNGt5IOoKO3ZQ0gSFngjWSHZ5xNurNtLd0MxZv5onv66xlNmWBYCVNt4sZLknQ+RfiqYm1EZ9ZrA0SDw==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.xml", - "xunit.assert.2.1.0-beta3-build3029.nupkg", - "xunit.assert.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.assert.dll", + "lib/dotnet/xunit.assert.pdb", + "lib/dotnet/xunit.assert.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.xml", + "xunit.assert.2.1.0-rc1-build3168.nupkg", + "xunit.assert.2.1.0-rc1-build3168.nupkg.sha512", "xunit.assert.nuspec" ] }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "uDUBbwZSRx226BMwj6VylzXQPVpEIelNIulT+LxbSEH52y2a4btR9d5ptQmkSVjmJXP5/hGCc4cu1DSCu0pgUA==", + "sha512": "IcQo+pNEDYBC9HJfzY08k0NhLZMX8WXudrlhcrIAzkT2szhrLbGhUi1k6vU5n9crsVv+IxosvIH28kYf6/Z32w==", "files": [ - "build/_Desktop/xunit.execution.desktop.dll", - "build/monoandroid/xunit.core.props", - "build/monoandroid/xunit.execution.MonoAndroid.dll", - "build/monotouch/xunit.core.props", - "build/monotouch/xunit.execution.MonoTouch.dll", - "build/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.targets", - "build/portable-win81+wpa81/xunit.execution.universal.dll", - "build/portable-win81+wpa81/xunit.execution.universal.pri", - "build/wp8/xunit.core.props", - "build/wp8/xunit.core.targets", - "build/wp8/xunit.execution.wp8.dll", - "build/Xamarin.iOS/xunit.core.props", - "build/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "xunit.core.2.1.0-beta3-build3029.nupkg", - "xunit.core.2.1.0-beta3-build3029.nupkg.sha512", + "build/_desktop/xunit.execution.desktop.dll", + "build/dnx451/_._", + "build/monoandroid/_._", + "build/monotouch/_._", + "build/net45/_._", + "build/portable-net45+win8+wp8+wpa81/xunit.core.props", + "build/win8/_._", + "build/win81/xunit.core.props", + "build/wp8/_._", + "build/wpa81/xunit.core.props", + "build/xamarinios/_._", + "xunit.core.2.1.0-rc1-build3168.nupkg", + "xunit.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.core.nuspec" ] }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "lsPro5U3NLasHI/RwqjKzXiRlh9N0IOlR3cluwXYVtihXbGtySeSnU/Fh5MTcWYxh+MVpoNop5zDD0/A2nrHsA==", + "sha512": "8KZaq1mdeaiZxo1ScsGzhkeQRwLLS6+WIno+9gtnYccWmTjCJ/XSYz2fAAlB5mUeyw0vqqrFc+TfNZELs5QiZQ==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll.tdnet", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.xml", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.core.dll", + "lib/dotnet/xunit.core.dll.tdnet", + "lib/dotnet/xunit.core.pdb", + "lib/dotnet/xunit.core.xml", + "lib/dotnet/xunit.runner.tdnet.dll", + "lib/dotnet/xunit.runner.utility.desktop.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll.tdnet", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.tdnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.utility.desktop.dll", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.core.nuspec" ] }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", - "sha512": "WuUYamK4RHrHxihvNuX7NkryMhQrpH1+ziJ/mPIQbm18zevSgre8BwUuVZvmLZa8uVob3xS4dvAah2+HCgLiXg==", + "sha512": "1w0u3eB7i25hca60r/53oSVb0blMOEm2eVqvwTg9jhMSe/A9raj6UZAVzUnFtA3xLssP4K1udOGTC1qrZ9/VoA==", "files": [ - "lib/dnx451/xunit.execution.dnx.dll", - "lib/dnx451/xunit.execution.dnx.pdb", - "lib/dnx451/xunit.execution.dnx.xml", - "lib/dnxcore50/xunit.execution.dnx.dll", - "lib/dnxcore50/xunit.execution.dnx.pdb", - "lib/dnxcore50/xunit.execution.dnx.xml", - "lib/monoandroid/xunit.execution.MonoAndroid.dll", - "lib/monoandroid/xunit.execution.MonoAndroid.pdb", - "lib/monoandroid/xunit.execution.MonoAndroid.xml", - "lib/monotouch/xunit.execution.MonoTouch.dll", - "lib/monotouch/xunit.execution.MonoTouch.pdb", - "lib/monotouch/xunit.execution.MonoTouch.xml", - "lib/net45/xunit.execution.desktop.dll", - "lib/net45/xunit.execution.desktop.pdb", - "lib/net45/xunit.execution.desktop.xml", - "lib/portable-wpa81+win81/xunit.execution.universal.dll", - "lib/portable-wpa81+win81/xunit.execution.universal.pdb", - "lib/portable-wpa81+win81/xunit.execution.universal.pri", - "lib/portable-wpa81+win81/xunit.execution.universal.xml", - "lib/wp8/xunit.execution.wp8.dll", - "lib/wp8/xunit.execution.wp8.pdb", - "lib/wp8/xunit.execution.wp8.xml", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.pdb", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.xml", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dnx451/xunit.execution.dotnet.dll", + "lib/dnx451/xunit.execution.dotnet.pdb", + "lib/dnx451/xunit.execution.dotnet.xml", + "lib/dotnet/xunit.execution.dotnet.dll", + "lib/dotnet/xunit.execution.dotnet.pdb", + "lib/dotnet/xunit.execution.dotnet.xml", + "lib/monoandroid/xunit.execution.dotnet.dll", + "lib/monoandroid/xunit.execution.dotnet.pdb", + "lib/monoandroid/xunit.execution.dotnet.xml", + "lib/monotouch/xunit.execution.dotnet.dll", + "lib/monotouch/xunit.execution.dotnet.pdb", + "lib/monotouch/xunit.execution.dotnet.xml", + "lib/net35/xunit.execution.desktop.dll", + "lib/net35/xunit.execution.desktop.pdb", + "lib/net35/xunit.execution.desktop.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.xml", + "lib/win8/xunit.execution.dotnet.dll", + "lib/win8/xunit.execution.dotnet.pdb", + "lib/win8/xunit.execution.dotnet.xml", + "lib/wp8/xunit.execution.dotnet.dll", + "lib/wp8/xunit.execution.dotnet.pdb", + "lib/wp8/xunit.execution.dotnet.xml", + "lib/wpa81/xunit.execution.dotnet.dll", + "lib/wpa81/xunit.execution.dotnet.pdb", + "lib/wpa81/xunit.execution.dotnet.xml", + "lib/xamarinios/xunit.execution.dotnet.dll", + "lib/xamarinios/xunit.execution.dotnet.pdb", + "lib/xamarinios/xunit.execution.dotnet.xml", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.execution.nuspec" ] }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "serviceable": true, - "sha512": "P3Q9YspdSUzoJQS6iT5mF3jt+s0u9u/G3K6s0Ns7NbAwQPktjwuO7CgJk38fop4yYDVdsVEwbZF2jfNMhJ7hkQ==", + "sha512": "9t2jrzI6N5ueydH5omBi95hiBOuNXpI6sS2kQJO56+bUavVpSD6/aD0C4+Nqbiql8Zvu0yx2GO+2IAd0JQcjIA==", "files": [ "lib/dotnet/Xunit.NetCore.Extensions.dll", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg.sha512", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg.sha512", "xunit.netcore.extensions.nuspec" ] } }, "projectFileDependencyGroups": { "": [ + "Microsoft.DotNet.xunit.performance >= 1.0.0-*", "System.Collections >= 4.0.10", "System.Console >= 4.0.0-beta-*", "System.Diagnostics.Debug >= 4.0.10", @@ -1056,7 +1557,7 @@ "System.Runtime.InteropServices >= 4.0.20", "System.Threading >= 4.0.10", "System.Threading.Tasks >= 4.0.10", - "xunit >= 2.1.0-beta3-*", + "xunit >= 2.1.0-rc1-*", "xunit.netcore.extensions >= 1.0.0-prerelease-*" ], "DNXCore,Version=v5.0": [] diff --git a/src/System.Xml.XmlDocument/tests/Performance/Perf.XmlDocument.cs b/src/System.Xml.XmlDocument/tests/Performance/Perf.XmlDocument.cs new file mode 100644 index 0000000000..0978ac83ec --- /dev/null +++ b/src/System.Xml.XmlDocument/tests/Performance/Perf.XmlDocument.cs @@ -0,0 +1,60 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System; +using System.Xml; +using Microsoft.Xunit.Performance; + +namespace XmlDocumentTests.XmlDocumentTests +{ + public class Perf_XmlDocument + { + [Benchmark] + public void Create() + { + foreach (var iteration in Benchmark.Iterations) + { + using (iteration.StartMeasurement()) + { + new XmlDocument(); new XmlDocument(); new XmlDocument(); + new XmlDocument(); new XmlDocument(); new XmlDocument(); + new XmlDocument(); new XmlDocument(); new XmlDocument(); + } + } + } + + [Benchmark] + public void LoadXml() + { + foreach (var iteration in Benchmark.Iterations) + { + // Setup + var doc = new XmlDocument(); + + // Actual perf testing + using (iteration.StartMeasurement()) + doc.LoadXml("<elem1 child1='' child2='duu' child3='e1;e2;' child4='a1' child5='goody'> text node two e1; text node three </elem1>"); + } + } + + [Benchmark] + public void GetDocumentElement() + { + XmlNode element; + foreach (var iteration in Benchmark.Iterations) + { + // Setup + var doc = new XmlDocument(); + doc.LoadXml("<elem1 child1='' child2='duu' child3='e1;e2;' child4='a1' child5='goody'> text node two e1; text node three </elem1>"); + + // Actual perf testing + using (iteration.StartMeasurement()) + { + element = doc.DocumentElement; element = doc.DocumentElement; element = doc.DocumentElement; + element = doc.DocumentElement; element = doc.DocumentElement; element = doc.DocumentElement; + element = doc.DocumentElement; element = doc.DocumentElement; element = doc.DocumentElement; + } + } + } + } +} diff --git a/src/System.Xml.XmlDocument/tests/Performance/Perf.XmlNode.cs b/src/System.Xml.XmlDocument/tests/Performance/Perf.XmlNode.cs new file mode 100644 index 0000000000..980f91db95 --- /dev/null +++ b/src/System.Xml.XmlDocument/tests/Performance/Perf.XmlNode.cs @@ -0,0 +1,54 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System; +using System.Xml; +using Microsoft.Xunit.Performance; + +namespace XmlDocumentTests.XmlNodeTests +{ + public class Perf_XmlNode + { + [Benchmark] + public void GetAttributes() + { + XmlAttributeCollection attr; + foreach (var iteration in Benchmark.Iterations) + { + // Setup + XmlDocument doc = new XmlDocument(); + doc.LoadXml("<a attr1='test' attr2='test2' />"); + XmlNode node = doc.DocumentElement; + + // Actual perf testing + using (iteration.StartMeasurement()) + { + attr = node.Attributes; attr = node.Attributes; attr = node.Attributes; + attr = node.Attributes; attr = node.Attributes; attr = node.Attributes; + attr = node.Attributes; attr = node.Attributes; attr = node.Attributes; + } + } + } + + [Benchmark] + public void GetValue() + { + string value; + foreach (var iteration in Benchmark.Iterations) + { + // Setup + var doc = new XmlDocument(); + doc.LoadXml("<a attr1='test' attr2='test2' />"); + XmlNode node = doc.DocumentElement; + + // Actual perf testing + using (iteration.StartMeasurement()) + { + value = node.Value; value = node.Value; value = node.Value; + value = node.Value; value = node.Value; value = node.Value; + value = node.Value; value = node.Value; value = node.Value; + } + } + } + } +} diff --git a/src/System.Xml.XmlDocument/tests/Performance/Perf.XmlNodeList.cs b/src/System.Xml.XmlDocument/tests/Performance/Perf.XmlNodeList.cs new file mode 100644 index 0000000000..224cdba598 --- /dev/null +++ b/src/System.Xml.XmlDocument/tests/Performance/Perf.XmlNodeList.cs @@ -0,0 +1,49 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System; +using System.Xml; +using Microsoft.Xunit.Performance; + +namespace XmlDocumentTests.XmlNodeListTests +{ + public class Perf_XmlNodeList + { + [Benchmark] + public void Enumerator() + { + foreach (var iteration in Benchmark.Iterations) + { + // Setup + var doc = new XmlDocument(); + doc.LoadXml("<a><sub1/><sub1/><sub2/><sub1/><sub2/><sub1/><sub2/><sub1/><sub2/><sub1/><sub2/><sub2/></a>"); + XmlNodeList list = doc.DocumentElement.ChildNodes; + + // Actual perf testing + using (iteration.StartMeasurement()) + foreach (var element in list) { } + } + } + + [Benchmark] + public void GetCount() + { + int count; + foreach (var iteration in Benchmark.Iterations) + { + // Setup + var doc = new XmlDocument(); + doc.LoadXml("<a><sub1/><sub2/></a>"); + XmlNodeList list = doc.DocumentElement.ChildNodes; + + // Actual perf testing + using (iteration.StartMeasurement()) + { + count = list.Count; count = list.Count; count = list.Count; + count = list.Count; count = list.Count; count = list.Count; + count = list.Count; count = list.Count; count = list.Count; + } + } + } + } +} diff --git a/src/System.Xml.XmlDocument/tests/System.Xml.XmlDocument.Tests.csproj b/src/System.Xml.XmlDocument/tests/System.Xml.XmlDocument.Tests.csproj index 21979af33a..d2084731e8 100644 --- a/src/System.Xml.XmlDocument/tests/System.Xml.XmlDocument.Tests.csproj +++ b/src/System.Xml.XmlDocument/tests/System.Xml.XmlDocument.Tests.csproj @@ -10,6 +10,11 @@ <AssemblyName>System.Xml.XmlDocument.Tests</AssemblyName> <RootNamespace>System.Xml.XmlDocument.UnitTests</RootNamespace> </PropertyGroup> + <!-- Performance tests require v5.0 portable tools --> + <PropertyGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <TargetFrameworkVersion>v5.0</TargetFrameworkVersion> + <TargetFrameworkProfile /> + </PropertyGroup> <!-- Default configurations to help VS understand the configurations --> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> </PropertyGroup> @@ -100,6 +105,15 @@ <Compile Include="XmlProcessingInstructionTests\TargetTests.cs" /> <Compile Include="XmlTextTests\SplitTextTests.cs" /> </ItemGroup> + <!-- Performance Tests --> + <ItemGroup Condition="'$(RunPerfTestsForProject)' == 'true'"> + <Compile Include="Performance\Perf.XmlDocument.cs" /> + <Compile Include="Performance\Perf.XmlNode.cs" /> + <Compile Include="Performance\Perf.XmlNodeList.cs" /> + <Compile Include="$(CommonTestPath)\Performance\PerfUtils.cs"> + <Link>Common\Performance\PerfUtils.cs</Link> + </Compile> + </ItemGroup> <ItemGroup> <ProjectReference Include="..\src\System.Xml.XmlDocument.csproj"> <Project>{16EE5522-F387-4C9E-9EF2-B5134B043F37}</Project> diff --git a/src/System.Xml.XmlDocument/tests/project.json b/src/System.Xml.XmlDocument/tests/project.json index 86a56e693d..431d168329 100644 --- a/src/System.Xml.XmlDocument/tests/project.json +++ b/src/System.Xml.XmlDocument/tests/project.json @@ -1,9 +1,10 @@ { "dependencies": { + "Microsoft.DotNet.xunit.performance": "1.0.0-*", "System.Runtime": "4.0.20", "System.Threading.Tasks": "4.0.10", "System.Xml.ReaderWriter": "4.0.10", - "xunit": "2.1.0-beta3-*", + "xunit": "2.1.0-rc1-*", "xunit.netcore.extensions": "1.0.0-prerelease-*" }, "frameworks": { diff --git a/src/System.Xml.XmlDocument/tests/project.lock.json b/src/System.Xml.XmlDocument/tests/project.lock.json index afdf19f6b9..238ccaf569 100644 --- a/src/System.Xml.XmlDocument/tests/project.lock.json +++ b/src/System.Xml.XmlDocument/tests/project.lock.json @@ -3,6 +3,36 @@ "version": 1, "targets": { "DNXCore,Version=v5.0": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.10", + "System.Diagnostics.Debug": "4.0.10", + "System.Diagnostics.Tracing": "4.0.20", + "System.Globalization": "4.0.10", + "System.IO": "4.0.10", + "System.IO.FileSystem": "4.0.0", + "System.IO.FileSystem.Primitives": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.10", + "System.Runtime": "4.0.20", + "System.Runtime.Extensions": "4.0.10", + "System.Text.Encoding": "4.0.10", + "System.Threading": "4.0.10", + "System.Threading.Tasks": "4.0.10", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "2.1.0-rc1-build3168", + "xunit.extensibility.execution": "2.1.0-rc1-build3168" + }, + "compile": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + }, + "runtime": { + "lib/dotnet/xunit.performance.core.dll": {}, + "lib/dotnet/xunit.performance.execution.dotnet.dll": {} + } + }, "System.Collections/4.0.10": { "type": "package", "dependencies": { @@ -27,6 +57,18 @@ "lib/DNXCore50/System.Diagnostics.Debug.dll": {} } }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Diagnostics.Tracing.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Diagnostics.Tracing.dll": {} + } + }, "System.Globalization/4.0.10": { "type": "package", "dependencies": { @@ -105,6 +147,25 @@ "lib/dotnet/System.Linq.dll": {} } }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Linq.Expressions.dll": {} + } + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.ObjectModel.dll": {} + } + }, "System.Private.Uri/4.0.0": { "type": "package", "compile": { @@ -128,6 +189,19 @@ "lib/DNXCore50/System.Reflection.dll": {} } }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.0.0", + "System.Runtime": "4.0.0" + }, + "compile": { + "ref/dotnet/System.Reflection.Extensions.dll": {} + }, + "runtime": { + "lib/DNXCore50/System.Reflection.Extensions.dll": {} + } + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "dependencies": { @@ -323,11 +397,11 @@ "lib/dotnet/System.Xml.ReaderWriter.dll": {} } }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.assert": "[2.1.0-beta3-build3029]", - "xunit.core": "[2.1.0-beta3-build3029]" + "xunit.assert": "[2.1.0-rc1-build3168]", + "xunit.core": "[2.1.0-rc1-build3168]" } }, "xunit.abstractions/2.0.0": { @@ -339,49 +413,86 @@ "lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll": {} } }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", + "dependencies": { + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.ObjectModel": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.RegularExpressions": "4.0.0", + "System.Threading.Tasks": "4.0.0" + }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll": {} + "lib/dotnet/xunit.assert.dll": {} } }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]", - "xunit.extensibility.execution": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.Linq": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]", + "xunit.extensibility.execution": "[2.1.0-rc1-build3168]" } }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", "dependencies": { "xunit.abstractions": "[2.0.0]" }, "compile": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {} + "lib/dotnet/xunit.core.dll": {} }, "runtime": { - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll": {}, - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll": {} + "lib/dotnet/xunit.core.dll": {}, + "lib/dotnet/xunit.runner.tdnet.dll": {}, + "lib/dotnet/xunit.runner.utility.desktop.dll": {} } }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", "dependencies": { - "xunit.extensibility.core": "[2.1.0-beta3-build3029]" + "System.Collections": "4.0.0", + "System.Diagnostics.Debug": "4.0.0", + "System.Globalization": "4.0.0", + "System.IO": "4.0.0", + "System.Linq": "4.0.0", + "System.Linq.Expressions": "4.0.0", + "System.Reflection": "4.0.0", + "System.Reflection.Extensions": "4.0.0", + "System.Runtime": "4.0.0", + "System.Runtime.Extensions": "4.0.0", + "System.Text.Encoding": "4.0.0", + "System.Threading": "4.0.0", + "System.Threading.Tasks": "4.0.0", + "xunit.abstractions": "2.0.0", + "xunit.extensibility.core": "[2.1.0-rc1-build3168]" }, "compile": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} }, "runtime": { - "lib/dnxcore50/xunit.execution.dnx.dll": {} + "lib/dotnet/xunit.execution.dotnet.dll": {} } }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "dependencies": { "System.Diagnostics.Debug": "4.0.10", @@ -409,6 +520,25 @@ } }, "libraries": { + "Microsoft.DotNet.xunit.performance/1.0.0-alpha-build0014": { + "type": "package", + "sha512": "NCrgkMUcuMy3T5PY9kcBFpRyN/HrUyHsSxvdyq426iTZj2pG+6odaztW5BrQov3gPEXM5cPx4+64djl4sC8/nw==", + "files": [ + "lib/dotnet/xunit.performance.core.dll", + "lib/dotnet/xunit.performance.core.pdb", + "lib/dotnet/xunit.performance.core.XML", + "lib/dotnet/xunit.performance.execution.dotnet.dll", + "lib/dotnet/xunit.performance.execution.dotnet.pdb", + "lib/net46/xunit.performance.core.dll", + "lib/net46/xunit.performance.core.pdb", + "lib/net46/xunit.performance.core.XML", + "lib/net46/xunit.performance.execution.desktop.dll", + "lib/net46/xunit.performance.execution.desktop.pdb", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg", + "Microsoft.DotNet.xunit.performance.1.0.0-alpha-build0014.nupkg.sha512", + "Microsoft.DotNet.xunit.performance.nuspec" + ] + }, "System.Collections/4.0.10": { "type": "package", "serviceable": true, @@ -477,6 +607,40 @@ "System.Diagnostics.Debug.nuspec" ] }, + "System.Diagnostics.Tracing/4.0.20": { + "type": "package", + "serviceable": true, + "sha512": "gn/wexGHc35Fv++5L1gYHMY5g25COfiZ0PGrL+3PfwzoJd4X2LbTAm/U8d385SI6BKQBI/z4dQfvneS9J27+Tw==", + "files": [ + "lib/DNXCore50/System.Diagnostics.Tracing.dll", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/netcore50/System.Diagnostics.Tracing.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "ref/dotnet/de/System.Diagnostics.Tracing.xml", + "ref/dotnet/es/System.Diagnostics.Tracing.xml", + "ref/dotnet/fr/System.Diagnostics.Tracing.xml", + "ref/dotnet/it/System.Diagnostics.Tracing.xml", + "ref/dotnet/ja/System.Diagnostics.Tracing.xml", + "ref/dotnet/ko/System.Diagnostics.Tracing.xml", + "ref/dotnet/ru/System.Diagnostics.Tracing.xml", + "ref/dotnet/System.Diagnostics.Tracing.dll", + "ref/dotnet/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hans/System.Diagnostics.Tracing.xml", + "ref/dotnet/zh-hant/System.Diagnostics.Tracing.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "runtimes/win8-aot/lib/netcore50/System.Diagnostics.Tracing.dll", + "System.Diagnostics.Tracing.4.0.20.nupkg", + "System.Diagnostics.Tracing.4.0.20.nupkg.sha512", + "System.Diagnostics.Tracing.nuspec" + ] + }, "System.Globalization/4.0.10": { "type": "package", "sha512": "kzRtbbCNAxdafFBDogcM36ehA3th8c1PGiz8QRkZn8O5yMBorDHSK8/TGJPYOaCS5zdsGk0u9qXHnW91nqy7fw==", @@ -642,6 +806,102 @@ "System.Linq.nuspec" ] }, + "System.Linq.Expressions/4.0.0": { + "type": "package", + "sha512": "wlfVllrKi+evu4Hi8yoJP1dSOVXbvsy7Hs1+oz4Cykfdf6MQTPlD3LI4WKWhprn8FpU5MS3spPSbcMX5sAoJSw==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.Linq.Expressions.xml", + "ref/dotnet/es/System.Linq.Expressions.xml", + "ref/dotnet/fr/System.Linq.Expressions.xml", + "ref/dotnet/it/System.Linq.Expressions.xml", + "ref/dotnet/ja/System.Linq.Expressions.xml", + "ref/dotnet/ko/System.Linq.Expressions.xml", + "ref/dotnet/ru/System.Linq.Expressions.xml", + "ref/dotnet/System.Linq.Expressions.dll", + "ref/dotnet/System.Linq.Expressions.xml", + "ref/dotnet/zh-hans/System.Linq.Expressions.xml", + "ref/dotnet/zh-hant/System.Linq.Expressions.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.Linq.Expressions.xml", + "ref/netcore50/es/System.Linq.Expressions.xml", + "ref/netcore50/fr/System.Linq.Expressions.xml", + "ref/netcore50/it/System.Linq.Expressions.xml", + "ref/netcore50/ja/System.Linq.Expressions.xml", + "ref/netcore50/ko/System.Linq.Expressions.xml", + "ref/netcore50/ru/System.Linq.Expressions.xml", + "ref/netcore50/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.xml", + "ref/netcore50/zh-hans/System.Linq.Expressions.xml", + "ref/netcore50/zh-hant/System.Linq.Expressions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.Linq.Expressions.4.0.0.nupkg", + "System.Linq.Expressions.4.0.0.nupkg.sha512", + "System.Linq.Expressions.nuspec" + ] + }, + "System.ObjectModel/4.0.0": { + "type": "package", + "sha512": "+3j/n+5SlF7PKb0/s5kdord+5RyW3uUscB+0WPuYvfAvEgyx6yPdPXU9tXdDZImRohMuWnQTAG2rFojFPfoGbA==", + "files": [ + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "License.rtf", + "ref/dotnet/de/System.ObjectModel.xml", + "ref/dotnet/es/System.ObjectModel.xml", + "ref/dotnet/fr/System.ObjectModel.xml", + "ref/dotnet/it/System.ObjectModel.xml", + "ref/dotnet/ja/System.ObjectModel.xml", + "ref/dotnet/ko/System.ObjectModel.xml", + "ref/dotnet/ru/System.ObjectModel.xml", + "ref/dotnet/System.ObjectModel.dll", + "ref/dotnet/System.ObjectModel.xml", + "ref/dotnet/zh-hans/System.ObjectModel.xml", + "ref/dotnet/zh-hant/System.ObjectModel.xml", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/de/System.ObjectModel.xml", + "ref/netcore50/es/System.ObjectModel.xml", + "ref/netcore50/fr/System.ObjectModel.xml", + "ref/netcore50/it/System.ObjectModel.xml", + "ref/netcore50/ja/System.ObjectModel.xml", + "ref/netcore50/ko/System.ObjectModel.xml", + "ref/netcore50/ru/System.ObjectModel.xml", + "ref/netcore50/System.ObjectModel.dll", + "ref/netcore50/System.ObjectModel.xml", + "ref/netcore50/zh-hans/System.ObjectModel.xml", + "ref/netcore50/zh-hant/System.ObjectModel.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "System.ObjectModel.4.0.0.nupkg", + "System.ObjectModel.4.0.0.nupkg.sha512", + "System.ObjectModel.nuspec" + ] + }, "System.Private.Uri/4.0.0": { "type": "package", "serviceable": true, @@ -690,6 +950,40 @@ "System.Reflection.nuspec" ] }, + "System.Reflection.Extensions/4.0.0": { + "type": "package", + "serviceable": true, + "sha512": "dbYaZWCyFAu1TGYUqR2n+Q+1casSHPR2vVW0WVNkXpZbrd2BXcZ7cpvpu9C98CTHtNmyfMWCLpCclDqly23t6A==", + "files": [ + "lib/DNXCore50/System.Reflection.Extensions.dll", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Extensions.dll", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "ref/dotnet/de/System.Reflection.Extensions.xml", + "ref/dotnet/es/System.Reflection.Extensions.xml", + "ref/dotnet/fr/System.Reflection.Extensions.xml", + "ref/dotnet/it/System.Reflection.Extensions.xml", + "ref/dotnet/ja/System.Reflection.Extensions.xml", + "ref/dotnet/ko/System.Reflection.Extensions.xml", + "ref/dotnet/ru/System.Reflection.Extensions.xml", + "ref/dotnet/System.Reflection.Extensions.dll", + "ref/dotnet/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hans/System.Reflection.Extensions.xml", + "ref/dotnet/zh-hant/System.Reflection.Extensions.xml", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Extensions.dll", + "ref/netcore50/System.Reflection.Extensions.xml", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "runtimes/win8-aot/lib/netcore50/System.Reflection.Extensions.dll", + "System.Reflection.Extensions.4.0.0.nupkg", + "System.Reflection.Extensions.4.0.0.nupkg.sha512", + "System.Reflection.Extensions.nuspec" + ] + }, "System.Reflection.Primitives/4.0.0": { "type": "package", "serviceable": true, @@ -1137,12 +1431,12 @@ "System.Xml.ReaderWriter.nuspec" ] }, - "xunit/2.1.0-beta3-build3029": { + "xunit/2.1.0-rc1-build3168": { "type": "package", - "sha512": "NMFXV0ePe/GrfhMSPGAlWmiUZCzjaatpdAGcavf2B6vYTRyMTpyJT01LI6jemMV/VSDXLrtHp0Ov9xZyR1cLLg==", + "sha512": "dVnDKBCIpLE5GaxLALnbnobqtDyTTDKJSRbqhLGrx0Ptc/n3VQRUby/CDx6v+y7xNVPqtqj0XMeDO1DVT8E3tA==", "files": [ - "xunit.2.1.0-beta3-build3029.nupkg", - "xunit.2.1.0-beta3-build3029.nupkg.sha512", + "xunit.2.1.0-rc1-build3168.nupkg", + "xunit.2.1.0-rc1-build3168.nupkg.sha512", "xunit.nuspec" ] }, @@ -1159,109 +1453,120 @@ "xunit.abstractions.nuspec" ] }, - "xunit.assert/2.1.0-beta3-build3029": { + "xunit.assert/2.1.0-rc1-build3168": { "type": "package", - "sha512": "AMS7Fv77DayXVRCBMmVEDwOXPcbxk8dCBA/iACsve+6+UQqopMtNyAynyIcXPFRK/peeitUKID4ChOXWisJmUw==", + "sha512": "lsTK4OaNGt5IOoKO3ZQ0gSFngjWSHZ5xNurNtLd0MxZv5onv66xlNmWBYCVNt4sZLknQ+RfiqYm1EZ9ZrA0SDw==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.xml", - "xunit.assert.2.1.0-beta3-build3029.nupkg", - "xunit.assert.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.assert.dll", + "lib/dotnet/xunit.assert.pdb", + "lib/dotnet/xunit.assert.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.assert.xml", + "xunit.assert.2.1.0-rc1-build3168.nupkg", + "xunit.assert.2.1.0-rc1-build3168.nupkg.sha512", "xunit.assert.nuspec" ] }, - "xunit.core/2.1.0-beta3-build3029": { + "xunit.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "uDUBbwZSRx226BMwj6VylzXQPVpEIelNIulT+LxbSEH52y2a4btR9d5ptQmkSVjmJXP5/hGCc4cu1DSCu0pgUA==", + "sha512": "IcQo+pNEDYBC9HJfzY08k0NhLZMX8WXudrlhcrIAzkT2szhrLbGhUi1k6vU5n9crsVv+IxosvIH28kYf6/Z32w==", "files": [ - "build/_Desktop/xunit.execution.desktop.dll", - "build/monoandroid/xunit.core.props", - "build/monoandroid/xunit.execution.MonoAndroid.dll", - "build/monotouch/xunit.core.props", - "build/monotouch/xunit.execution.MonoTouch.dll", - "build/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.props", - "build/portable-win81+wpa81/xunit.core.targets", - "build/portable-win81+wpa81/xunit.execution.universal.dll", - "build/portable-win81+wpa81/xunit.execution.universal.pri", - "build/wp8/xunit.core.props", - "build/wp8/xunit.core.targets", - "build/wp8/xunit.execution.wp8.dll", - "build/Xamarin.iOS/xunit.core.props", - "build/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "xunit.core.2.1.0-beta3-build3029.nupkg", - "xunit.core.2.1.0-beta3-build3029.nupkg.sha512", + "build/_desktop/xunit.execution.desktop.dll", + "build/dnx451/_._", + "build/monoandroid/_._", + "build/monotouch/_._", + "build/net45/_._", + "build/portable-net45+win8+wp8+wpa81/xunit.core.props", + "build/win8/_._", + "build/win81/xunit.core.props", + "build/wp8/_._", + "build/wpa81/xunit.core.props", + "build/xamarinios/_._", + "xunit.core.2.1.0-rc1-build3168.nupkg", + "xunit.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.core.nuspec" ] }, - "xunit.extensibility.core/2.1.0-beta3-build3029": { + "xunit.extensibility.core/2.1.0-rc1-build3168": { "type": "package", - "sha512": "lsPro5U3NLasHI/RwqjKzXiRlh9N0IOlR3cluwXYVtihXbGtySeSnU/Fh5MTcWYxh+MVpoNop5zDD0/A2nrHsA==", + "sha512": "8KZaq1mdeaiZxo1ScsGzhkeQRwLLS6+WIno+9gtnYccWmTjCJ/XSYz2fAAlB5mUeyw0vqqrFc+TfNZELs5QiZQ==", "files": [ - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll.tdnet", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.pdb", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.xml", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll", - "lib/portable-net45+dnxcore50+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.core.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dotnet/xunit.core.dll", + "lib/dotnet/xunit.core.dll.tdnet", + "lib/dotnet/xunit.core.pdb", + "lib/dotnet/xunit.core.xml", + "lib/dotnet/xunit.runner.tdnet.dll", + "lib/dotnet/xunit.runner.utility.desktop.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.dll.tdnet", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.core.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.tdnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.runner.utility.desktop.dll", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.core.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.core.nuspec" ] }, - "xunit.extensibility.execution/2.1.0-beta3-build3029": { + "xunit.extensibility.execution/2.1.0-rc1-build3168": { "type": "package", - "sha512": "WuUYamK4RHrHxihvNuX7NkryMhQrpH1+ziJ/mPIQbm18zevSgre8BwUuVZvmLZa8uVob3xS4dvAah2+HCgLiXg==", + "sha512": "1w0u3eB7i25hca60r/53oSVb0blMOEm2eVqvwTg9jhMSe/A9raj6UZAVzUnFtA3xLssP4K1udOGTC1qrZ9/VoA==", "files": [ - "lib/dnx451/xunit.execution.dnx.dll", - "lib/dnx451/xunit.execution.dnx.pdb", - "lib/dnx451/xunit.execution.dnx.xml", - "lib/dnxcore50/xunit.execution.dnx.dll", - "lib/dnxcore50/xunit.execution.dnx.pdb", - "lib/dnxcore50/xunit.execution.dnx.xml", - "lib/monoandroid/xunit.execution.MonoAndroid.dll", - "lib/monoandroid/xunit.execution.MonoAndroid.pdb", - "lib/monoandroid/xunit.execution.MonoAndroid.xml", - "lib/monotouch/xunit.execution.MonoTouch.dll", - "lib/monotouch/xunit.execution.MonoTouch.pdb", - "lib/monotouch/xunit.execution.MonoTouch.xml", - "lib/net45/xunit.execution.desktop.dll", - "lib/net45/xunit.execution.desktop.pdb", - "lib/net45/xunit.execution.desktop.xml", - "lib/portable-wpa81+win81/xunit.execution.universal.dll", - "lib/portable-wpa81+win81/xunit.execution.universal.pdb", - "lib/portable-wpa81+win81/xunit.execution.universal.pri", - "lib/portable-wpa81+win81/xunit.execution.universal.xml", - "lib/wp8/xunit.execution.wp8.dll", - "lib/wp8/xunit.execution.wp8.pdb", - "lib/wp8/xunit.execution.wp8.xml", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.dll", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.pdb", - "lib/Xamarin.iOS/xunit.execution.iOS-Universal.xml", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg", - "xunit.extensibility.execution.2.1.0-beta3-build3029.nupkg.sha512", + "lib/dnx451/xunit.execution.dotnet.dll", + "lib/dnx451/xunit.execution.dotnet.pdb", + "lib/dnx451/xunit.execution.dotnet.xml", + "lib/dotnet/xunit.execution.dotnet.dll", + "lib/dotnet/xunit.execution.dotnet.pdb", + "lib/dotnet/xunit.execution.dotnet.xml", + "lib/monoandroid/xunit.execution.dotnet.dll", + "lib/monoandroid/xunit.execution.dotnet.pdb", + "lib/monoandroid/xunit.execution.dotnet.xml", + "lib/monotouch/xunit.execution.dotnet.dll", + "lib/monotouch/xunit.execution.dotnet.pdb", + "lib/monotouch/xunit.execution.dotnet.xml", + "lib/net35/xunit.execution.desktop.dll", + "lib/net35/xunit.execution.desktop.pdb", + "lib/net35/xunit.execution.desktop.xml", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.dll", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.pdb", + "lib/portable-net45+win8+wp8+wpa81/xunit.execution.dotnet.xml", + "lib/win8/xunit.execution.dotnet.dll", + "lib/win8/xunit.execution.dotnet.pdb", + "lib/win8/xunit.execution.dotnet.xml", + "lib/wp8/xunit.execution.dotnet.dll", + "lib/wp8/xunit.execution.dotnet.pdb", + "lib/wp8/xunit.execution.dotnet.xml", + "lib/wpa81/xunit.execution.dotnet.dll", + "lib/wpa81/xunit.execution.dotnet.pdb", + "lib/wpa81/xunit.execution.dotnet.xml", + "lib/xamarinios/xunit.execution.dotnet.dll", + "lib/xamarinios/xunit.execution.dotnet.pdb", + "lib/xamarinios/xunit.execution.dotnet.xml", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg", + "xunit.extensibility.execution.2.1.0-rc1-build3168.nupkg.sha512", "xunit.extensibility.execution.nuspec" ] }, - "xunit.netcore.extensions/1.0.0-prerelease-00085": { + "xunit.netcore.extensions/1.0.0-prerelease-00090": { "type": "package", "serviceable": true, - "sha512": "P3Q9YspdSUzoJQS6iT5mF3jt+s0u9u/G3K6s0Ns7NbAwQPktjwuO7CgJk38fop4yYDVdsVEwbZF2jfNMhJ7hkQ==", + "sha512": "9t2jrzI6N5ueydH5omBi95hiBOuNXpI6sS2kQJO56+bUavVpSD6/aD0C4+Nqbiql8Zvu0yx2GO+2IAd0JQcjIA==", "files": [ "lib/dotnet/Xunit.NetCore.Extensions.dll", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg", - "xunit.netcore.extensions.1.0.0-prerelease-00085.nupkg.sha512", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg", + "xunit.netcore.extensions.1.0.0-prerelease-00090.nupkg.sha512", "xunit.netcore.extensions.nuspec" ] } }, "projectFileDependencyGroups": { "": [ + "Microsoft.DotNet.xunit.performance >= 1.0.0-*", "System.Runtime >= 4.0.20", "System.Threading.Tasks >= 4.0.10", "System.Xml.ReaderWriter >= 4.0.10", - "xunit >= 2.1.0-beta3-*", + "xunit >= 2.1.0-rc1-*", "xunit.netcore.extensions >= 1.0.0-prerelease-*" ], "DNXCore,Version=v5.0": [] |