From 6aa297d7dcbcccc60b307fb6617920e5311ae5ee Mon Sep 17 00:00:00 2001
From: Medeni Baykal <433724+Haplois@users.noreply.github.com>
Date: Mon, 16 Nov 2020 11:36:46 +0100
Subject: [PATCH 1/3] Fixed assembly loading issue for netcoreapp on linux
(#2636)
* Fixed assembly loading issue for netcoreapp.
* Fixed assembly loading issue for netcoreapp on linux.
---
scripts/verify-nupkgs.ps1 | 2 +-
.../nuspec/Microsoft.TestPlatform.TestHost.NetCore.props | 7 +++++++
src/package/nuspec/TestPlatform.TestHost.nuspec | 2 ++
3 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/scripts/verify-nupkgs.ps1 b/scripts/verify-nupkgs.ps1
index 1a259031d7..89ebfbc28b 100644
--- a/scripts/verify-nupkgs.ps1
+++ b/scripts/verify-nupkgs.ps1
@@ -21,7 +21,7 @@ function Verify-Nuget-Packages($packageDirectory)
"Microsoft.TestPlatform.Extensions.TrxLogger" = 33;
"Microsoft.TestPlatform.ObjectModel" = 178;
"Microsoft.TestPlatform.Portable" = 566;
- "Microsoft.TestPlatform.TestHost" = 210;
+ "Microsoft.TestPlatform.TestHost" = 212;
"Microsoft.TestPlatform.TranslationLayer" = 121}
$nugetPackages = Get-ChildItem -Filter "*.nupkg" $packageDirectory | % { $_.FullName}
diff --git a/src/package/nuspec/Microsoft.TestPlatform.TestHost.NetCore.props b/src/package/nuspec/Microsoft.TestPlatform.TestHost.NetCore.props
index 32ff965b58..7dd28d882f 100644
--- a/src/package/nuspec/Microsoft.TestPlatform.TestHost.NetCore.props
+++ b/src/package/nuspec/Microsoft.TestPlatform.TestHost.NetCore.props
@@ -34,4 +34,11 @@
False
+
+
+ Microsoft.TestPlatform.PlatformAbstractions.dll
+ PreserveNewest
+ False
+
+
\ No newline at end of file
diff --git a/src/package/nuspec/TestPlatform.TestHost.nuspec b/src/package/nuspec/TestPlatform.TestHost.nuspec
index 4e74cb8f3c..9615cd4f8f 100644
--- a/src/package/nuspec/TestPlatform.TestHost.nuspec
+++ b/src/package/nuspec/TestPlatform.TestHost.nuspec
@@ -47,6 +47,7 @@
+
@@ -65,6 +66,7 @@
+
From a7046e3ac82fbd7064791cb4436d7b44b205774a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jakub=20Jare=C5=A1?=
Date: Mon, 16 Nov 2020 13:11:34 +0100
Subject: [PATCH 2/3] Use jsonSerializer2 for protocol version 3 (#2630)
* Use jsonSerializer2 for protocol version 3
* Use serializer tests for protocol 2 and 3, and throw on new protocol version
* Add version 0 for negotiation
* Downgrade to Protocol2 when used with older vstest.console
* Update defaults to protocol 4.
---
.../JsonDataSerializer.cs | 25 +++-
.../TestRequestSender.cs | 3 +-
.../EventHandlers/TestRequestHandler.cs | 35 ++++-
.../Constants.cs | 2 +-
.../VsTestConsoleRequestSender.cs | 2 +-
.../DesignMode/DesignModeClientTests.cs | 7 +-
.../TestResultSerializationTests.cs | 121 ++++++++++++------
.../VsTestConsoleRequestSenderTests.cs | 2 +-
8 files changed, 146 insertions(+), 51 deletions(-)
diff --git a/src/Microsoft.TestPlatform.CommunicationUtilities/JsonDataSerializer.cs b/src/Microsoft.TestPlatform.CommunicationUtilities/JsonDataSerializer.cs
index d0aa538ebe..5eea4ca571 100644
--- a/src/Microsoft.TestPlatform.CommunicationUtilities/JsonDataSerializer.cs
+++ b/src/Microsoft.TestPlatform.CommunicationUtilities/JsonDataSerializer.cs
@@ -3,6 +3,7 @@
namespace Microsoft.VisualStudio.TestPlatform.CommunicationUtilities
{
+ using System;
using System.IO;
using Microsoft.VisualStudio.TestPlatform.CommunicationUtilities.Interfaces;
@@ -210,7 +211,29 @@ private T Deserialize(JsonSerializer serializer, JToken jToken)
private JsonSerializer GetPayloadSerializer(int? version)
{
- return version == 2 ? payloadSerializer2 : payloadSerializer;
+ if (version == null)
+ {
+ version = 1;
+ }
+
+ switch (version)
+ {
+ // 0 is used during negotiation
+ case 0:
+ case 1:
+ // Protocol version 3 was accidentally used with serializer v1 and not
+ // serializer v2, we downgrade to protocol 2 when 3 would be negotiated
+ // unless this is disabled by VSTEST_DISABLE_PROTOCOL_3_VERSION_DOWNGRADE
+ // env variable.
+ case 3:
+ return payloadSerializer;
+ case 2:
+ case 4:
+ return payloadSerializer2;
+ default:
+ throw new NotSupportedException($"Protocol version {version} is not supported. " +
+ "Ensure it is compatible with the latest serializer or add a new one.");
+ }
}
}
}
diff --git a/src/Microsoft.TestPlatform.CommunicationUtilities/TestRequestSender.cs b/src/Microsoft.TestPlatform.CommunicationUtilities/TestRequestSender.cs
index 2edc603016..e0896ab338 100644
--- a/src/Microsoft.TestPlatform.CommunicationUtilities/TestRequestSender.cs
+++ b/src/Microsoft.TestPlatform.CommunicationUtilities/TestRequestSender.cs
@@ -52,7 +52,8 @@ public class TestRequestSender : ITestRequestSender
// that implies host is using version 1.
private int protocolVersion = 1;
- private int highestSupportedVersion = 3;
+ // Also check TestRequestHandler.
+ private int highestSupportedVersion = 4;
private TestHostConnectionInfo connectionInfo;
diff --git a/src/Microsoft.TestPlatform.CrossPlatEngine/EventHandlers/TestRequestHandler.cs b/src/Microsoft.TestPlatform.CrossPlatEngine/EventHandlers/TestRequestHandler.cs
index 5319d0bb78..89809c139e 100644
--- a/src/Microsoft.TestPlatform.CrossPlatEngine/EventHandlers/TestRequestHandler.cs
+++ b/src/Microsoft.TestPlatform.CrossPlatEngine/EventHandlers/TestRequestHandler.cs
@@ -24,7 +24,9 @@ namespace Microsoft.VisualStudio.TestPlatform.CommunicationUtilities
public class TestRequestHandler : ITestRequestHandler
{
private int protocolVersion = 1;
- private int highestSupportedVersion = 3;
+
+ // Also check TestRequestSender.
+ private int highestSupportedVersion = 4;
private readonly IDataSerializer dataSerializer;
private ITestHostManagerFactory testHostManagerFactory;
@@ -261,7 +263,36 @@ public void OnMessageReceived(object sender, MessageReceivedEventArgs messageRec
{
case MessageType.VersionCheck:
var version = this.dataSerializer.DeserializePayload(message);
- this.protocolVersion = Math.Min(version, highestSupportedVersion);
+ // choose the highest version that we both support
+ var negotiatedVersion = Math.Min(version, highestSupportedVersion);
+ // BUT don't choose 3, because protocol version 3 has performance problems in 16.7.1-16.8. Those problems are caused
+ // by choosing payloadSerializer instead of payloadSerializer2 for protocol version 3.
+ //
+ // We cannot just update the code to choose the new serializer, because then that change would apply only to testhost.
+ // Testhost is is delivered by Microsoft.NET.Test.SDK nuget package, and can be used with an older vstest.console.
+ // An older vstest.console, that supports protocol version 3, would serialize its messages using payloadSerializer,
+ // but the fixed testhost would serialize it using payloadSerializer2, resulting in incompatible messages.
+ //
+ // Instead we must downgrade to protocol version 2 when 3 would be negotiated. Or higher when higher version
+ // would be negotiated.
+ if (negotiatedVersion != 3)
+ {
+ this.protocolVersion = negotiatedVersion;
+ }
+ else
+ {
+ var flag = Environment.GetEnvironmentVariable("VSTEST_DISABLE_PROTOCOL_3_VERSION_DOWNGRADE");
+ var flagIsEnabled = flag != null && flag != "0";
+ var dowgradeIsDisabled = flagIsEnabled;
+ if (dowgradeIsDisabled)
+ {
+ this.protocolVersion = negotiatedVersion;
+ }
+ else
+ {
+ this.protocolVersion = 2;
+ }
+ }
// Send the negotiated protocol to request sender
this.channel.Send(this.dataSerializer.SerializePayload(MessageType.VersionCheck, this.protocolVersion));
diff --git a/src/Microsoft.TestPlatform.ObjectModel/Constants.cs b/src/Microsoft.TestPlatform.ObjectModel/Constants.cs
index 668f380b6c..9252657190 100644
--- a/src/Microsoft.TestPlatform.ObjectModel/Constants.cs
+++ b/src/Microsoft.TestPlatform.ObjectModel/Constants.cs
@@ -168,7 +168,7 @@ public static class Constants
///
/// The default protocol version
///
- public static readonly ProtocolConfig DefaultProtocolConfig = new ProtocolConfig { Version = 3 };
+ public static readonly ProtocolConfig DefaultProtocolConfig = new ProtocolConfig { Version = 4 };
///
/// The minimum protocol version that has debug support
diff --git a/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/VsTestConsoleRequestSender.cs b/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/VsTestConsoleRequestSender.cs
index f61b47fdce..2529e8c6bf 100644
--- a/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/VsTestConsoleRequestSender.cs
+++ b/src/Microsoft.TestPlatform.VsTestConsole.TranslationLayer/VsTestConsoleRequestSender.cs
@@ -37,7 +37,7 @@ internal class VsTestConsoleRequestSender : ITranslationLayerRequestSender
private bool handShakeSuccessful = false;
- private int protocolVersion = 3;
+ private int protocolVersion = 4;
///
/// Use to cancel blocking tasks associated with vstest.console process
diff --git a/test/Microsoft.TestPlatform.Client.UnitTests/DesignMode/DesignModeClientTests.cs b/test/Microsoft.TestPlatform.Client.UnitTests/DesignMode/DesignModeClientTests.cs
index 1066cc4f3d..583f3106b9 100644
--- a/test/Microsoft.TestPlatform.Client.UnitTests/DesignMode/DesignModeClientTests.cs
+++ b/test/Microsoft.TestPlatform.Client.UnitTests/DesignMode/DesignModeClientTests.cs
@@ -39,7 +39,7 @@ public class DesignModeClientTests
private readonly DesignModeClient designModeClient;
- private readonly int protocolVersion = 3;
+ private readonly int protocolVersion = 4;
private readonly AutoResetEvent complateEvent;
@@ -131,8 +131,9 @@ public void DesignModeClientConnectShouldNotSendConnectedIfServerConnectionTimes
[TestMethod]
public void DesignModeClientDuringConnectShouldHighestCommonVersionWhenReceivedVersionIsGreaterThanSupportedVersion()
- {
- var verCheck = new Message { MessageType = MessageType.VersionCheck, Payload = 3 };
+ {
+
+ var verCheck = new Message { MessageType = MessageType.VersionCheck, Payload = 4 };
var sessionEnd = new Message { MessageType = MessageType.SessionEnd };
this.mockCommunicationManager.Setup(cm => cm.WaitForServerConnection(It.IsAny())).Returns(true);
this.mockCommunicationManager.SetupSequence(cm => cm.ReceiveMessage()).Returns(verCheck).Returns(sessionEnd);
diff --git a/test/Microsoft.TestPlatform.CommunicationUtilities.UnitTests/Serialization/TestResultSerializationTests.cs b/test/Microsoft.TestPlatform.CommunicationUtilities.UnitTests/Serialization/TestResultSerializationTests.cs
index 6ddd654e19..f84c978312 100644
--- a/test/Microsoft.TestPlatform.CommunicationUtilities.UnitTests/Serialization/TestResultSerializationTests.cs
+++ b/test/Microsoft.TestPlatform.CommunicationUtilities.UnitTests/Serialization/TestResultSerializationTests.cs
@@ -23,25 +23,27 @@ public class TestResultSerializationTests
private static DateTimeOffset startTime = new DateTimeOffset(new DateTime(2007, 3, 10, 0, 0, 0, DateTimeKind.Utc));
private static TestResult testResult = new TestResult(testCase)
- {
- // Attachments = ?
- // Messages = ?
- Outcome = TestOutcome.Passed,
- ErrorMessage = "sampleError",
- ErrorStackTrace = "sampleStackTrace",
- DisplayName = "sampleTestResult",
- ComputerName = "sampleComputerName",
- Duration = TimeSpan.MaxValue,
- StartTime = startTime,
- EndTime = DateTimeOffset.MaxValue
- };
-
- #region v1 tests
+ {
+ // Attachments = ?
+ // Messages = ?
+ Outcome = TestOutcome.Passed,
+ ErrorMessage = "sampleError",
+ ErrorStackTrace = "sampleStackTrace",
+ DisplayName = "sampleTestResult",
+ ComputerName = "sampleComputerName",
+ Duration = TimeSpan.MaxValue,
+ StartTime = startTime,
+ EndTime = DateTimeOffset.MaxValue
+ };
+
+ #region v1 serializer Tests (used with protocol 1 and accidentally with 3)
[TestMethod]
- public void TestResultJsonShouldContainAllPropertiesOnSerialization()
+ [DataRow(1)]
+ [DataRow(3)]
+ public void TestResultJsonShouldContainAllPropertiesOnSerialization(int version)
{
- var json = Serialize(testResult);
+ var json = Serialize(testResult, version);
// Use raw deserialization to validate basic properties
dynamic data = JObject.Parse(json);
@@ -67,11 +69,13 @@ public void TestResultJsonShouldContainAllPropertiesOnSerialization()
}
[TestMethod]
- public void TestResultObjectShouldContainAllPropertiesOnDeserialization()
+ [DataRow(1)]
+ [DataRow(3)]
+ public void TestResultObjectShouldContainAllPropertiesOnDeserialization(int version)
{
var json = "{\"TestCase\":{\"Properties\":[{\"Key\":{\"Id\":\"TestCase.FullyQualifiedName\",\"Label\":\"FullyQualifiedName\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.String\"},\"Value\":\"sampleTestClass.sampleTestCase\"},{\"Key\":{\"Id\":\"TestCase.ExecutorUri\",\"Label\":\"Executor Uri\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.Uri\"},\"Value\":\"executor://sampleTestExecutor\"},{\"Key\":{\"Id\":\"TestCase.Source\",\"Label\":\"Source\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"sampleTest.dll\"}]},\"Attachments\":[],\"Messages\":[],\"Properties\":[{\"Key\":{\"Id\":\"TestResult.Outcome\",\"Label\":\"Outcome\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"Microsoft.VisualStudio.TestPlatform.ObjectModel.TestOutcome\"},\"Value\":1},{\"Key\":{\"Id\":\"TestResult.ErrorMessage\",\"Label\":\"Error Message\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"sampleError\"},{\"Key\":{\"Id\":\"TestResult.ErrorStackTrace\",\"Label\":\"Error Stack Trace\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"sampleStackTrace\"},{\"Key\":{\"Id\":\"TestResult.DisplayName\",\"Label\":\"TestResult Display Name\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.String\"},\"Value\":\"sampleTestResult\"},{\"Key\":{\"Id\":\"TestResult.ComputerName\",\"Label\":\"Computer Name\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"sampleComputerName\"},{\"Key\":{\"Id\":\"TestResult.Duration\",\"Label\":\"Duration\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.TimeSpan\"},\"Value\":\"10675199.02:48:05.4775807\"},{\"Key\":{\"Id\":\"TestResult.StartTime\",\"Label\":\"Start Time\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.DateTimeOffset\"},\"Value\":\"2007-03-10T00:00:00+00:00\"},{\"Key\":{\"Id\":\"TestResult.EndTime\",\"Label\":\"End Time\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.DateTimeOffset\"},\"Value\":\"9999-12-31T23:59:59.9999999+00:00\"}]}";
- var test = Deserialize(json);
+ var test = Deserialize(json, version);
Assert.AreEqual(testResult.TestCase.Id, test.TestCase.Id);
Assert.AreEqual(testResult.Attachments.Count, test.Attachments.Count);
@@ -88,7 +92,9 @@ public void TestResultObjectShouldContainAllPropertiesOnDeserialization()
}
[TestMethod]
- public void TestResultObjectShouldSerializeAttachments()
+ [DataRow(1)]
+ [DataRow(3)]
+ public void TestResultObjectShouldSerializeAttachments(int version)
{
var result = new TestResult(testCase);
result.StartTime = default(DateTimeOffset);
@@ -96,17 +102,19 @@ public void TestResultObjectShouldSerializeAttachments()
result.Attachments.Add(new AttachmentSet(new Uri("http://dummyUri"), "sampleAttachment"));
var expectedJson = "{\"TestCase\":{\"Properties\":[{\"Key\":{\"Id\":\"TestCase.FullyQualifiedName\",\"Label\":\"FullyQualifiedName\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.String\"},\"Value\":\"sampleTestClass.sampleTestCase\"},{\"Key\":{\"Id\":\"TestCase.ExecutorUri\",\"Label\":\"Executor Uri\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.Uri\"},\"Value\":\"executor://sampleTestExecutor\"},{\"Key\":{\"Id\":\"TestCase.Source\",\"Label\":\"Source\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"sampleTest.dll\"},{\"Key\":{\"Id\":\"TestCase.CodeFilePath\",\"Label\":\"File Path\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":null},{\"Key\":{\"Id\":\"TestCase.DisplayName\",\"Label\":\"Name\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"sampleTestClass.sampleTestCase\"},{\"Key\":{\"Id\":\"TestCase.Id\",\"Label\":\"Id\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.Guid\"},\"Value\":\"28e7a7ed-8fb9-05b7-5e90-4a8c52f32b5b\"},{\"Key\":{\"Id\":\"TestCase.LineNumber\",\"Label\":\"Line Number\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.Int32\"},\"Value\":-1}]},\"Attachments\":[{\"Uri\":\"http://dummyUri\",\"DisplayName\":\"sampleAttachment\",\"Attachments\":[]}],\"Messages\":[],\"Properties\":[{\"Key\":{\"Id\":\"TestResult.Outcome\",\"Label\":\"Outcome\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"Microsoft.VisualStudio.TestPlatform.ObjectModel.TestOutcome, Microsoft.VisualStudio.TestPlatform.ObjectModel, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a\"},\"Value\":0},{\"Key\":{\"Id\":\"TestResult.ErrorMessage\",\"Label\":\"Error Message\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":null},{\"Key\":{\"Id\":\"TestResult.ErrorStackTrace\",\"Label\":\"Error Stack Trace\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":null},{\"Key\":{\"Id\":\"TestResult.DisplayName\",\"Label\":\"TestResult Display Name\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.String\"},\"Value\":null},{\"Key\":{\"Id\":\"TestResult.ComputerName\",\"Label\":\"Computer Name\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"\"},{\"Key\":{\"Id\":\"TestResult.Duration\",\"Label\":\"Duration\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.TimeSpan\"},\"Value\":\"00:00:00\"},{\"Key\":{\"Id\":\"TestResult.StartTime\",\"Label\":\"Start Time\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.DateTimeOffset\"},\"Value\":\"0001-01-01T00:00:00+00:00\"},{\"Key\":{\"Id\":\"TestResult.EndTime\",\"Label\":\"End Time\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.DateTimeOffset\"},\"Value\":\"0001-01-01T00:00:00+00:00\"}]}";
- var json = Serialize(result);
+ var json = Serialize(result, version);
Assert.AreEqual(expectedJson, json);
}
[TestMethod]
- public void TestResultObjectShouldDeserializeAttachments()
+ [DataRow(1)]
+ [DataRow(3)]
+ public void TestResultObjectShouldDeserializeAttachments(int version)
{
var json = "{\"TestCase\":{\"Properties\":[{\"Key\":{\"Id\":\"TestCase.FullyQualifiedName\",\"Label\":\"FullyQualifiedName\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.String\"},\"Value\":\"sampleTestClass.sampleTestCase\"},{\"Key\":{\"Id\":\"TestCase.ExecutorUri\",\"Label\":\"Executor Uri\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.Uri\"},\"Value\":\"executor://sampleTestExecutor\"},{\"Key\":{\"Id\":\"TestCase.Source\",\"Label\":\"Source\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"sampleTest.dll\"}]},\"Attachments\":[{\"Uri\":\"http://dummyUri\",\"DisplayName\":\"sampleAttachment\",\"Attachments\":[]}],\"Messages\":[],\"Properties\":[]}";
- var result = Deserialize(json);
+ var result = Deserialize(json, version);
Assert.AreEqual(1, result.Attachments.Count);
Assert.AreEqual(new Uri("http://dummyUri"), result.Attachments[0].Uri);
@@ -114,14 +122,16 @@ public void TestResultObjectShouldDeserializeAttachments()
}
[TestMethod]
- public void TestResultObjectShouldSerializeDefaultValues()
+ [DataRow(1)]
+ [DataRow(3)]
+ public void TestResultObjectShouldSerializeDefaultValues(int version)
{
var result = new TestResult(testCase);
result.StartTime = default(DateTimeOffset);
result.EndTime = default(DateTimeOffset);
var expectedJson = "{\"TestCase\":{\"Properties\":[{\"Key\":{\"Id\":\"TestCase.FullyQualifiedName\",\"Label\":\"FullyQualifiedName\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.String\"},\"Value\":\"sampleTestClass.sampleTestCase\"},{\"Key\":{\"Id\":\"TestCase.ExecutorUri\",\"Label\":\"Executor Uri\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.Uri\"},\"Value\":\"executor://sampleTestExecutor\"},{\"Key\":{\"Id\":\"TestCase.Source\",\"Label\":\"Source\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"sampleTest.dll\"},{\"Key\":{\"Id\":\"TestCase.CodeFilePath\",\"Label\":\"File Path\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":null},{\"Key\":{\"Id\":\"TestCase.DisplayName\",\"Label\":\"Name\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"sampleTestClass.sampleTestCase\"},{\"Key\":{\"Id\":\"TestCase.Id\",\"Label\":\"Id\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.Guid\"},\"Value\":\"28e7a7ed-8fb9-05b7-5e90-4a8c52f32b5b\"},{\"Key\":{\"Id\":\"TestCase.LineNumber\",\"Label\":\"Line Number\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.Int32\"},\"Value\":-1}]},\"Attachments\":[],\"Messages\":[],\"Properties\":[{\"Key\":{\"Id\":\"TestResult.Outcome\",\"Label\":\"Outcome\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"Microsoft.VisualStudio.TestPlatform.ObjectModel.TestOutcome, Microsoft.VisualStudio.TestPlatform.ObjectModel, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a\"},\"Value\":0},{\"Key\":{\"Id\":\"TestResult.ErrorMessage\",\"Label\":\"Error Message\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":null},{\"Key\":{\"Id\":\"TestResult.ErrorStackTrace\",\"Label\":\"Error Stack Trace\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":null},{\"Key\":{\"Id\":\"TestResult.DisplayName\",\"Label\":\"TestResult Display Name\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.String\"},\"Value\":null},{\"Key\":{\"Id\":\"TestResult.ComputerName\",\"Label\":\"Computer Name\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"\"},{\"Key\":{\"Id\":\"TestResult.Duration\",\"Label\":\"Duration\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.TimeSpan\"},\"Value\":\"00:00:00\"},{\"Key\":{\"Id\":\"TestResult.StartTime\",\"Label\":\"Start Time\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.DateTimeOffset\"},\"Value\":\"0001-01-01T00:00:00+00:00\"},{\"Key\":{\"Id\":\"TestResult.EndTime\",\"Label\":\"End Time\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.DateTimeOffset\"},\"Value\":\"0001-01-01T00:00:00+00:00\"}]}";
- var json = Serialize(result);
+ var json = Serialize(result, version);
// Values that should be null: DisplayName, ErrorMessage, ErrorStackTrace
// Values that should be empty: ComputerName
@@ -129,11 +139,13 @@ public void TestResultObjectShouldSerializeDefaultValues()
}
[TestMethod]
- public void TestResultObjectShouldDeserializeDefaultValues()
+ [DataRow(1)]
+ [DataRow(3)]
+ public void TestResultObjectShouldDeserializeDefaultValues(int version)
{
var json = "{\"TestCase\":{\"Properties\":[{\"Key\":{\"Id\":\"TestCase.FullyQualifiedName\",\"Label\":\"FullyQualifiedName\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.String\"},\"Value\":\"sampleTestClass.sampleTestCase\"},{\"Key\":{\"Id\":\"TestCase.ExecutorUri\",\"Label\":\"Executor Uri\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.Uri\"},\"Value\":\"executor://sampleTestExecutor\"},{\"Key\":{\"Id\":\"TestCase.Source\",\"Label\":\"Source\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"sampleTest.dll\"},{\"Key\":{\"Id\":\"TestCase.CodeFilePath\",\"Label\":\"File Path\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":null},{\"Key\":{\"Id\":\"TestCase.DisplayName\",\"Label\":\"Name\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"sampleTestClass.sampleTestCase\"},{\"Key\":{\"Id\":\"TestCase.Id\",\"Label\":\"Id\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.Guid\"},\"Value\":\"28e7a7ed-8fb9-05b7-5e90-4a8c52f32b5b\"},{\"Key\":{\"Id\":\"TestCase.LineNumber\",\"Label\":\"Line Number\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.Int32\"},\"Value\":-1}]},\"Attachments\":[],\"Messages\":[],\"Properties\":[{\"Key\":{\"Id\":\"TestResult.Outcome\",\"Label\":\"Outcome\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"Microsoft.VisualStudio.TestPlatform.ObjectModel.TestOutcome, Microsoft.VisualStudio.TestPlatform.ObjectModel, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a\"},\"Value\":0},{\"Key\":{\"Id\":\"TestResult.ErrorMessage\",\"Label\":\"Error Message\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":null},{\"Key\":{\"Id\":\"TestResult.ErrorStackTrace\",\"Label\":\"Error Stack Trace\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":null},{\"Key\":{\"Id\":\"TestResult.DisplayName\",\"Label\":\"TestResult Display Name\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.String\"},\"Value\":null},{\"Key\":{\"Id\":\"TestResult.ComputerName\",\"Label\":\"Computer Name\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"\"},{\"Key\":{\"Id\":\"TestResult.Duration\",\"Label\":\"Duration\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.TimeSpan\"},\"Value\":\"00:00:00\"},{\"Key\":{\"Id\":\"TestResult.StartTime\",\"Label\":\"Start Time\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.DateTimeOffset\"},\"Value\":\"0001-01-01T00:00:00+00:00\"},{\"Key\":{\"Id\":\"TestResult.EndTime\",\"Label\":\"End Time\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.DateTimeOffset\"},\"Value\":\"0001-01-01T00:00:00+00:00\"}]}";
- var result = Deserialize(json);
+ var result = Deserialize(json, version);
Assert.AreEqual(0, result.Attachments.Count);
Assert.AreEqual(0, result.Messages.Count);
@@ -144,7 +156,9 @@ public void TestResultObjectShouldDeserializeDefaultValues()
}
[TestMethod]
- public void TestResultPropertiesShouldGetRegisteredAsPartOfDeserialization()
+ [DataRow(1)]
+ [DataRow(3)]
+ public void TestResultPropertiesShouldGetRegisteredAsPartOfDeserialization(int version)
{
TestProperty.TryUnregister("DummyProperty", out var property);
var json = "{\"TestCase\":{\"Properties\":[{\"Key\":{\"Id\":\"TestCase.FullyQualifiedName\",\"Label\":\"FullyQualifiedName\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.String\"},\"Value\":\"sampleTestClass.sampleTestCase\"}," +
@@ -161,19 +175,21 @@ public void TestResultPropertiesShouldGetRegisteredAsPartOfDeserialization()
"{\"Key\":{\"Id\":\"TestResult.Duration\",\"Label\":\"Duration\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.TimeSpan\"},\"Value\":\"00:00:00\"},{\"Key\":{\"Id\":\"TestResult.StartTime\",\"Label\":\"Start Time\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.DateTimeOffset\"},\"Value\":\"0001-01-01T00:00:00+00:00\"}," +
"{\"Key\":{\"Id\":\"DummyProperty\",\"Label\":\"DummyPropertyLabel\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":5,\"ValueType\":\"System.String\"},\"Value\":\"dummyString\"}," +
"{\"Key\":{\"Id\":\"TestResult.EndTime\",\"Label\":\"End Time\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.DateTimeOffset\"},\"Value\":\"0001-01-01T00:00:00+00:00\"}]}";
- var test = Deserialize(json);
+ var test = Deserialize(json, version);
this.VerifyDummyPropertyIsRegistered();
}
#endregion
- #region v2 Tests
+ #region v2 serializer Tests (used with protocol 2 and 4)
[TestMethod]
- public void TestResultJsonShouldContainAllPropertiesOnSerializationV2()
+ [DataRow(2)]
+ [DataRow(4)]
+ public void TestResultJsonShouldContainAllPropertiesOnSerializationV2(int version)
{
- var json = Serialize(testResult, 2);
+ var json = Serialize(testResult, version);
// Use raw deserialization to validate basic properties
dynamic data = JObject.Parse(json);
@@ -191,11 +207,13 @@ public void TestResultJsonShouldContainAllPropertiesOnSerializationV2()
}
[TestMethod]
- public void TestResultObjectShouldContainAllPropertiesOnDeserializationV2()
+ [DataRow(2)]
+ [DataRow(4)]
+ public void TestResultObjectShouldContainAllPropertiesOnDeserializationV2(int version)
{
var json = "{\"TestCase\":{\"Id\":\"28e7a7ed-8fb9-05b7-5e90-4a8c52f32b5b\",\"FullyQualifiedName\":\"sampleTestClass.sampleTestCase\",\"DisplayName\":\"sampleTestClass.sampleTestCase\",\"ExecutorUri\":\"executor://sampleTestExecutor\",\"Source\":\"sampleTest.dll\",\"CodeFilePath\":null,\"LineNumber\":-1,\"Properties\":[]},\"Attachments\":[],\"Outcome\":1,\"ErrorMessage\":\"sampleError\",\"ErrorStackTrace\":\"sampleStackTrace\",\"DisplayName\":\"sampleTestResult\",\"Messages\":[],\"ComputerName\":\"sampleComputerName\",\"Duration\":\"10675199.02:48:05.4775807\",\"StartTime\":\"2007-03-10T00:00:00+00:00\",\"EndTime\":\"9999-12-31T23:59:59.9999999+00:00\",\"Properties\":[]}";
- var test = Deserialize(json, 2);
+ var test = Deserialize(json, version);
Assert.AreEqual(testResult.TestCase.Id, test.TestCase.Id);
Assert.AreEqual(testResult.Attachments.Count, test.Attachments.Count);
@@ -212,7 +230,9 @@ public void TestResultObjectShouldContainAllPropertiesOnDeserializationV2()
}
[TestMethod]
- public void TestResultObjectShouldSerializeAttachmentsV2()
+ [DataRow(2)]
+ [DataRow(4)]
+ public void TestResultObjectShouldSerializeAttachmentsV2(int version)
{
var result = new TestResult(testCase);
result.StartTime = default(DateTimeOffset);
@@ -220,17 +240,19 @@ public void TestResultObjectShouldSerializeAttachmentsV2()
result.Attachments.Add(new AttachmentSet(new Uri("http://dummyUri"), "sampleAttachment"));
var expectedJson = "{\"TestCase\":{\"Id\":\"28e7a7ed-8fb9-05b7-5e90-4a8c52f32b5b\",\"FullyQualifiedName\":\"sampleTestClass.sampleTestCase\",\"DisplayName\":\"sampleTestClass.sampleTestCase\",\"ExecutorUri\":\"executor://sampleTestExecutor\",\"Source\":\"sampleTest.dll\",\"CodeFilePath\":null,\"LineNumber\":-1,\"Properties\":[]},\"Attachments\":[{\"Uri\":\"http://dummyUri\",\"DisplayName\":\"sampleAttachment\",\"Attachments\":[]}],\"Outcome\":0,\"ErrorMessage\":null,\"ErrorStackTrace\":null,\"DisplayName\":null,\"Messages\":[],\"ComputerName\":null,\"Duration\":\"00:00:00\",\"StartTime\":\"0001-01-01T00:00:00+00:00\",\"EndTime\":\"0001-01-01T00:00:00+00:00\",\"Properties\":[]}";
- var json = Serialize(result, 2);
+ var json = Serialize(result, version);
Assert.AreEqual(expectedJson, json);
}
[TestMethod]
- public void TestResultObjectShouldDeserializeAttachmentsV2()
+ [DataRow(2)]
+ [DataRow(4)]
+ public void TestResultObjectShouldDeserializeAttachmentsV2(int version)
{
var json = "{\"TestCase\":{\"Properties\":[{\"Key\":{\"Id\":\"TestCase.FullyQualifiedName\",\"Label\":\"FullyQualifiedName\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.String\"},\"Value\":\"sampleTestClass.sampleTestCase\"},{\"Key\":{\"Id\":\"TestCase.ExecutorUri\",\"Label\":\"Executor Uri\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.Uri\"},\"Value\":\"executor://sampleTestExecutor\"},{\"Key\":{\"Id\":\"TestCase.Source\",\"Label\":\"Source\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":0,\"ValueType\":\"System.String\"},\"Value\":\"sampleTest.dll\"},{\"Key\":{\"Id\":\"TestCase.Id\",\"Label\":\"Id\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":1,\"ValueType\":\"System.Guid\"},\"Value\":\"28e7a7ed-8fb9-05b7-5e90-4a8c52f32b5b\"}]},\"Attachments\":[{\"Uri\":\"http://dummyUri\",\"DisplayName\":\"sampleAttachment\",\"Attachments\":[]}],\"Messages\":[],\"Properties\":[]}";
- var result = Deserialize(json, 2);
+ var result = Deserialize(json, version);
Assert.AreEqual(1, result.Attachments.Count);
Assert.AreEqual(new Uri("http://dummyUri"), result.Attachments[0].Uri);
@@ -238,25 +260,42 @@ public void TestResultObjectShouldDeserializeAttachmentsV2()
}
[TestMethod]
- public void TestResultPropertiesShouldGetRegisteredAsPartOfDeserializationV2()
+ [DataRow(2)]
+ [DataRow(4)]
+ public void TestResultPropertiesShouldGetRegisteredAsPartOfDeserializationV2(int version)
{
TestProperty.TryUnregister("DummyProperty", out var property);
var json = "{\"TestCase\":{\"Id\":\"28e7a7ed-8fb9-05b7-5e90-4a8c52f32b5b\",\"FullyQualifiedName\":\"sampleTestClass.sampleTestCase\",\"DisplayName\":\"sampleTestClass.sampleTestCase\",\"ExecutorUri\":\"executor://sampleTestExecutor\",\"Source\":\"sampleTest.dll\",\"CodeFilePath\":null,\"LineNumber\":-1,\"Properties\":[]},\"Attachments\":[],\"Outcome\":1,\"ErrorMessage\":\"sampleError\",\"ErrorStackTrace\":\"sampleStackTrace\",\"DisplayName\":\"sampleTestResult\",\"Messages\":[],\"ComputerName\":\"sampleComputerName\",\"Duration\":\"10675199.02:48:05.4775807\",\"StartTime\":\"2007-03-10T00:00:00+00:00\",\"EndTime\":\"9999-12-31T23:59:59.9999999+00:00\"," +
"\"Properties\":[{\"Key\":{\"Id\":\"DummyProperty\",\"Label\":\"DummyPropertyLabel\",\"Category\":\"\",\"Description\":\"\",\"Attributes\":5,\"ValueType\":\"System.String\"},\"Value\":\"dummyString\"},]}";
- var test = Deserialize(json, 2);
+ var test = Deserialize(json, version);
this.VerifyDummyPropertyIsRegistered();
}
#endregion
- private static string Serialize(T data, int version = 1)
+ #region future
+
+ [TestMethod]
+ public void TestResultSerializationShouldThrowWhenProvidedProtocolVersionDoesNotExist()
+ {
+ // this is to ensure that introducing a new version is a conscious choice and
+ // and that we don't fallback to version 1 as it happened with version 3, because the serializer
+ // only checked for version 2
+ var version = int.MaxValue;
+
+ Assert.ThrowsException(() => Serialize(testResult, version));
+ }
+
+ #endregion
+
+ private static string Serialize(T data, int version)
{
return JsonDataSerializer.Instance.Serialize(data, version);
}
- private static T Deserialize(string json, int version = 1)
+ private static T Deserialize(string json, int version)
{
return JsonDataSerializer.Instance.Deserialize(json, version);
}
diff --git a/test/TranslationLayer.UnitTests/VsTestConsoleRequestSenderTests.cs b/test/TranslationLayer.UnitTests/VsTestConsoleRequestSenderTests.cs
index add71d422e..3b2a134a68 100644
--- a/test/TranslationLayer.UnitTests/VsTestConsoleRequestSenderTests.cs
+++ b/test/TranslationLayer.UnitTests/VsTestConsoleRequestSenderTests.cs
@@ -37,7 +37,7 @@ public class VsTestConsoleRequestSenderTests
private readonly int WaitTimeout = 2000;
- private int protocolVersion = 3;
+ private int protocolVersion = 4;
private IDataSerializer serializer = JsonDataSerializer.Instance;
public VsTestConsoleRequestSenderTests()
From ea986d9e13b02f938e2c0af1f5bb2086ee563779 Mon Sep 17 00:00:00 2001
From: "dotnet-maestro[bot]"
<42748379+dotnet-maestro[bot]@users.noreply.github.com>
Date: Wed, 18 Nov 2020 08:53:19 +0100
Subject: [PATCH 3/3] Update dependencies from https://github.com/dotnet/arcade
build 20201117.6 (#2638)
Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SignTool , Microsoft.DotNet.SwaggerGenerator.MSBuild
From Version 1.0.0-beta.20509.7 -> To Version 1.0.0-beta.20567.6
Co-authored-by: dotnet-maestro[bot]
---
eng/Version.Details.xml | 20 ++++++++++----------
eng/Versions.props | 6 +++---
eng/common/SetupNugetSources.ps1 | 5 +++--
eng/common/SetupNugetSources.sh | 4 ++--
global.json | 4 ++--
5 files changed, 20 insertions(+), 19 deletions(-)
diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index cf5fe054e8..e667e233d5 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -3,25 +3,25 @@
-
+
https://github.com/dotnet/arcade
- e4584b56c5334067d30a04dd6b2d1d724ed7ccc3
+ e65cfb96188c8849e24f6e8f53207eae71689281
-
+
https://github.com/dotnet/arcade
- e4584b56c5334067d30a04dd6b2d1d724ed7ccc3
+ e65cfb96188c8849e24f6e8f53207eae71689281
-
+
https://github.com/dotnet/arcade
- e4584b56c5334067d30a04dd6b2d1d724ed7ccc3
+ e65cfb96188c8849e24f6e8f53207eae71689281
-
+
https://github.com/dotnet/arcade
- e4584b56c5334067d30a04dd6b2d1d724ed7ccc3
+ e65cfb96188c8849e24f6e8f53207eae71689281
-
+
https://github.com/dotnet/arcade
- e4584b56c5334067d30a04dd6b2d1d724ed7ccc3
+ e65cfb96188c8849e24f6e8f53207eae71689281
https://github.com/dotnet/arcade-services
diff --git a/eng/Versions.props b/eng/Versions.props
index 2091e6983a..88e3350788 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -60,8 +60,8 @@
2.4.1
2.0.3
2.4.1
- 2.2.0-beta.20509.7
- 1.0.0-beta.20509.7
+ 2.2.0-beta.20567.6
+ 1.0.0-beta.20567.6
1.22.0
1.1.2
2.0.0
@@ -73,7 +73,7 @@
1.7.0
1.1.0-beta.19556.4
1.0.0-beta2-19554-01
- 1.0.0-beta.20509.7
+ 1.0.0-beta.20567.6
1.0.0-beta.20055.1
diff --git a/eng/common/SetupNugetSources.ps1 b/eng/common/SetupNugetSources.ps1
index 6d88a1904b..83218ad7e7 100644
--- a/eng/common/SetupNugetSources.ps1
+++ b/eng/common/SetupNugetSources.ps1
@@ -99,8 +99,9 @@ function InsertMaestroPrivateFeedCredentials($Sources, $Creds, $Username, $Passw
function EnablePrivatePackageSources($DisabledPackageSources) {
$maestroPrivateSources = $DisabledPackageSources.SelectNodes("add[contains(@key,'darc-int')]")
ForEach ($DisabledPackageSource in $maestroPrivateSources) {
- Write-Host "`tEnsuring private source '$($DisabledPackageSource.key)' is enabled"
- $DisabledPackageSource.SetAttribute("value", "false")
+ Write-Host "`tEnsuring private source '$($DisabledPackageSource.key)' is enabled by deleting it from disabledPackageSource"
+ # Due to https://github.com/NuGet/Home/issues/10291, we must actually remove the disabled entries
+ $DisabledPackageSources.RemoveChild($DisabledPackageSource)
}
}
diff --git a/eng/common/SetupNugetSources.sh b/eng/common/SetupNugetSources.sh
index 00e8f45b91..751863d500 100644
--- a/eng/common/SetupNugetSources.sh
+++ b/eng/common/SetupNugetSources.sh
@@ -159,8 +159,8 @@ if [ "$?" == "0" ]; then
for DisabledSourceName in ${DisabledDarcIntSources[@]} ; do
if [[ $DisabledSourceName == darc-int* ]]
then
- OldDisableValue="add key=\"$DisabledSourceName\" value=\"true\""
- NewDisableValue="add key=\"$DisabledSourceName\" value=\"false\""
+ OldDisableValue=""
+ NewDisableValue=""
sed -i.bak "s|$OldDisableValue|$NewDisableValue|" $ConfigFile
echo "Neutralized disablePackageSources entry for '$DisabledSourceName'"
fi
diff --git a/global.json b/global.json
index 56352a5a69..821686b454 100644
--- a/global.json
+++ b/global.json
@@ -9,7 +9,7 @@
"dotnet": "5.0.100-rc.1.20453.7"
},
"msbuild-sdks": {
- "Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.20509.7",
- "Microsoft.DotNet.Helix.Sdk": "2.0.0-beta.20509.7"
+ "Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.20567.6",
+ "Microsoft.DotNet.Helix.Sdk": "2.0.0-beta.20567.6"
}
}