Skip to content

Commit

Permalink
Merge pull request #18590 from pgovind/preview_feature_followup
Browse files Browse the repository at this point in the history
Change name to match spec
  • Loading branch information
Prashanth Govindarajan authored Jul 8, 2021
2 parents faf81a5 + 99b0efc commit aaa6580
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ Copyright (c) .NET Foundation. All rights reserved.
<GenerateAssemblyMetadataAttributes Condition="'$(GenerateAssemblyMetadataAttributes)' == ''">true</GenerateAssemblyMetadataAttributes>
<IncludeSourceRevisionInInformationalVersion Condition="'$(IncludeSourceRevisionInInformationalVersion)' == ''">true</IncludeSourceRevisionInInformationalVersion>
<GenerateInternalsVisibleToAttributes Condition="'$(GenerateInternalsVisibleToAttributes)' == ''">true</GenerateInternalsVisibleToAttributes>
<GeneratePreviewFeaturesAttribute Condition="'$(GeneratePreviewFeaturesAttribute)' == ''">true</GeneratePreviewFeaturesAttribute>
<GenerateRequiresPreviewFeaturesAttribute Condition="'$(GenerateRequiresPreviewFeaturesAttribute)' == ''">true</GenerateRequiresPreviewFeaturesAttribute>
</PropertyGroup>

<!--
Expand Down Expand Up @@ -115,7 +115,7 @@ Copyright (c) .NET Foundation. All rights reserved.
<_Parameter1>%(AssemblyMetadata.Identity)</_Parameter1>
<_Parameter2>%(AssemblyMetadata.Value)</_Parameter2>
</AssemblyAttribute>
<AssemblyAttribute Include="System.Runtime.Versioning.RequiresPreviewFeaturesAttribute" Condition="'$(EnablePreviewFeatures)' == 'true' and '$(GeneratePreviewFeaturesAttribute)' == 'true'">
<AssemblyAttribute Include="System.Runtime.Versioning.RequiresPreviewFeaturesAttribute" Condition="'$(EnablePreviewFeatures)' == 'true' and '$(GenerateRequiresPreviewFeaturesAttribute)' == 'true'">
</AssemblyAttribute>
</ItemGroup>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -371,13 +371,14 @@ public void It_includes_internals_visible_to()
}

[Theory]
[InlineData(true)]
[InlineData(false)]
public void TestPreviewFeatures(bool enablePreviewFeatures)
[InlineData(true, true)]
[InlineData(true, false)]
[InlineData(false, false)]
public void TestPreviewFeatures(bool enablePreviewFeatures, bool generateRequiresPreviewFeaturesAttribute)
{
const string targetFramework = "net6.0";
var testAsset = _testAssetsManager
.CopyTestAsset("HelloWorld", identifier: $"{enablePreviewFeatures}")
.CopyTestAsset("HelloWorld", identifier: $"{enablePreviewFeatures}${generateRequiresPreviewFeaturesAttribute}")
.WithSource()
.WithTargetFramework(targetFramework)
.WithProjectChanges((path, project) =>
Expand All @@ -387,6 +388,13 @@ public void TestPreviewFeatures(bool enablePreviewFeatures)
project.Root.Add(
new XElement(ns + "PropertyGroup",
new XElement(ns + "EnablePreviewFeatures", $"{enablePreviewFeatures}")));
if (enablePreviewFeatures && !generateRequiresPreviewFeaturesAttribute)
{
project.Root.Add(
new XElement(ns + "PropertyGroup",
new XElement(ns + "GenerateRequiresPreviewFeaturesAttribute", $"False")));
}
});

var buildCommand = new BuildCommand(testAsset);
Expand All @@ -410,13 +418,14 @@ public void TestPreviewFeatures(bool enablePreviewFeatures)

var values = getValuesCommand.GetValues();
var langVersion = values.FirstOrDefault() ?? string.Empty;
if (!enablePreviewFeatures)

if (generateRequiresPreviewFeaturesAttribute)
{
Assert.False(contains);
Assert.True(contains);
}
else
{
Assert.True(contains);
Assert.False(contains);
}
}

Expand Down

0 comments on commit aaa6580

Please sign in to comment.