未验证 提交 f55a4ce4 编写于 作者: F Fred Silberberg 提交者: GitHub

Merge pull request #31559 from 333fred/fix-iop-skip

Standardize the conditional IOperation verification skip method, and …
......@@ -5124,7 +5124,7 @@ .maxstack 2
");
}
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
[WorkItem(5395, "https://github.com/dotnet/roslyn/issues/5395")]
public void EmitSequenceOfBinaryExpressions_01()
{
......@@ -5184,7 +5184,7 @@ private static string BuildSequenceOfBinaryExpressions_01(int count = 4096)
return builder.ToString();
}
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
[WorkItem(5395, "https://github.com/dotnet/roslyn/issues/5395")]
public void EmitSequenceOfBinaryExpressions_02()
{
......@@ -5308,7 +5308,7 @@ static void Main()
);
}
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
[WorkItem(5395, "https://github.com/dotnet/roslyn/issues/5395")]
public void EmitSequenceOfBinaryExpressions_05()
{
......
......@@ -3123,7 +3123,7 @@ static void Main()
verifier.VerifyDiagnostics();
}
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
public void HugeTupleCreationParses()
{
StringBuilder b = new StringBuilder();
......@@ -3146,7 +3146,7 @@ static void Main()
CreateCompilation(source);
}
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
public void HugeTupleDeclarationParses()
{
StringBuilder b = new StringBuilder();
......
......@@ -268,7 +268,7 @@ public void ModuleNameMismatch()
Diagnostic(ErrorCode.ERR_NetModuleNameMismatch).WithArguments("ModuleNameMismatch.netmodule", "ModuleNameMismatch.mod"));
}
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
public void CS0204_ERR_TooManyLocals()
{
var builder = new System.Text.StringBuilder();
......
......@@ -1306,7 +1306,7 @@ public void M0()
.VerifyAnalyzerDiagnostics(new DiagnosticAnalyzer[] { new NoneOperationTestAnalyzer() }, null, null, false);
}
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
[WorkItem(9025, "https://github.com/dotnet/roslyn/issues/9025")]
public void LongArithmeticExpressionCSharp()
{
......
......@@ -7380,7 +7380,7 @@ public void BinaryIntrinsicSymbols1()
Assert.Equal(n, nodes.Length);
}
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
public void BinaryIntrinsicSymbols2()
{
BinaryOperatorKind[] operators =
......
......@@ -2553,7 +2553,7 @@ public void MissingAssemblyResolution1()
"A -> B, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null");
}
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
public void MissingAssemblyResolution_Aliases()
{
// c - a -> b with alias X
......@@ -2580,7 +2580,7 @@ public class C : A
"A -> B, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null");
}
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
public void MissingAssemblyResolution_AliasesMerge()
{
// c - a -> "b, V1" resolved to "b, V3" with alias X
......@@ -2875,7 +2875,7 @@ public void MissingAssemblyResolution_BindingToForExplicitReference1()
/// <summary>
/// Don't try to resolve AssemblyRefs that already match explicitly specified definition.
/// </summary>
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
public void MissingAssemblyResolution_BindingToExplicitReference_WorseVersion()
{
// c - a -> d -> "b,v2"
......@@ -2941,7 +2941,7 @@ public void MissingAssemblyResolution_BindingToExplicitReference_WorseVersion()
/// <summary>
/// Don't try to resolve AssemblyRefs that already match explicitly specified definition.
/// </summary>
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
public void MissingAssemblyResolution_BindingToExplicitReference_BetterVersion()
{
// c - a -> d -> "b,v2"
......
......@@ -266,7 +266,7 @@ public public interface testiface {}";
Assert.Equal(SymbolKind.NamedType, comp.GlobalNamespace.GetMembers()[0].Kind);
}
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
public void OnlyOneParse()
{
var underlyingTree = SyntaxFactory.ParseSyntaxTree(@"
......
......@@ -260,7 +260,7 @@ public void CircularDefinitionManyMembers_Implicit()
}
[WorkItem(843037, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/843037")]
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
public void CircularDefinitionManyMembers_Explicit()
{
// enum E { M0 = Mn + 1, M1 = M0 + 1, ..., Mn = Mn-1 + 1, }
......@@ -273,7 +273,7 @@ public void CircularDefinitionManyMembers_Explicit()
}
[WorkItem(843037, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/843037")]
[NoIOperationValidationFact]
[ConditionalFact(typeof(NoIOperationValidation))]
public void InvertedDefinitionManyMembers_Explicit()
{
// enum E { M0 = M1 - 1, M1 = M2 - 1, ..., Mn = n, }
......
......@@ -13495,7 +13495,7 @@ End Module
}]]>)
End Sub
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
<WorkItem(5395, "https://github.com/dotnet/roslyn/issues/5395")>
Public Sub EmitSequenceOfBinaryExpressions_01()
Dim source =
......@@ -13547,7 +13547,7 @@ End Class
Return builder.ToString()
End Function
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
<WorkItem(5395, "https://github.com/dotnet/roslyn/issues/5395")>
Public Sub EmitSequenceOfBinaryExpressions_02()
Dim source =
......@@ -13572,7 +13572,7 @@ End Class
CompileAndVerify(compilation, expectedOutput:="11461640193")
End Sub
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
<WorkItem(6077, "https://github.com/dotnet/roslyn/issues/6077")>
<WorkItem(5395, "https://github.com/dotnet/roslyn/issues/5395")>
Public Sub EmitSequenceOfBinaryExpressions_03()
......@@ -13629,7 +13629,7 @@ End Class
Return builder.ToString()
End Function
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
<WorkItem(5395, "https://github.com/dotnet/roslyn/issues/5395")>
Public Sub EmitSequenceOfBinaryExpressions_04()
Dim size = 8192
......@@ -13657,7 +13657,7 @@ End Class
)
End Sub
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
<WorkItem(5395, "https://github.com/dotnet/roslyn/issues/5395")>
Public Sub EmitSequenceOfBinaryExpressions_05()
Dim count As Integer = 50
......
......@@ -5638,7 +5638,7 @@ End Class
End Sub
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub HugeTupleCreationParses()
Dim b = New StringBuilder()
......@@ -5664,7 +5664,7 @@ End Class
End Sub
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub HugeTupleDeclarationParses()
Dim b = New StringBuilder()
......
......@@ -1257,7 +1257,7 @@ End Module
End Sub
<WorkItem(543093, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/543093")>
<NoIOperationValidationFact> ' Disabling for IOperation run due to https://github.com/dotnet/roslyn/issues/26895
<ConditionalFact(GetType(NoIOperationValidation))> ' Disabling for IOperation run due to https://github.com/dotnet/roslyn/issues/26895
Public Sub TestStringWithOptionalDateTimeValue()
' Error when option strict is on
' No error when option strict is off
......
......@@ -62,7 +62,7 @@ expectedOutput:="123")
End Sub
<WorkItem(679765, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/679765")>
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub Bug679765()
CompileAndVerify(
<compilation>
......
......@@ -1902,7 +1902,7 @@ End Class
End Function
End Class
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub MetadataConsistencyWhileEvolvingCompilation()
Dim md1 = AssemblyMetadata.CreateFromImage(CreateCompilationWithMscorlib40({"Public Class C : End Class"}, options:=TestOptions.ReleaseDll).EmitToArray())
Dim md2 = AssemblyMetadata.CreateFromImage(CreateCompilationWithMscorlib40({"Public Class D : End Class"}, options:=TestOptions.ReleaseDll).EmitToArray())
......
......@@ -1672,7 +1672,7 @@ End Class
Assert.True(corlib1.ReferenceManagerEquals(corlib2))
End Sub
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub MissingAssemblyResolution1()
' c - a -> b
Dim bRef = CreateCompilationWithMscorlib40({"Public Class B : End Class"}, options:=TestOptions.ReleaseDll, assemblyName:="B").EmitToImageReference()
......@@ -1694,7 +1694,7 @@ End Class
"A -> B, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")
End Sub
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub MissingAssemblyResolution_WeakIdentities1()
' c - a -> "b,v1,PKT=null"
' - d -> "b,v2,PKT=null"
......@@ -1729,7 +1729,7 @@ End Class
"A -> B, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null")
End Sub
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub MissingAssemblyResolution_WeakIdentities2()
' c - a -> "b,v1,PKT=null"
' - d -> "b,v2,PKT=null"
......@@ -1780,7 +1780,7 @@ End Class
resolver.VerifyResolutionAttempts()
End Sub
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub MissingAssemblyResolution_ActualMissing()
' c - a -> d
Dim dRef = CreateCompilationWithMscorlib40({"Public Interface D : End Interface"}, options:=TestOptions.ReleaseDll, assemblyName:="D").EmitToImageReference()
......@@ -1801,7 +1801,7 @@ End Class
''' <summary>
''' Ignore assemblies returned by the resolver that don't match the reference identity.
''' </summary>
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub MissingAssemblyResolution_MissingDueToResolutionMismatch()
' c - a -> b
Dim bRef = CreateCompilationWithMscorlib40({"Public Interface D : End Interface"}, options:=TestOptions.ReleaseDll, assemblyName:="B").EmitToImageReference()
......@@ -1824,7 +1824,7 @@ End Class
"A -> B, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")
End Sub
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub MissingAssemblyResolution_Modules()
' c - a - d
' - module(m) - b
......@@ -1890,7 +1890,7 @@ End Class
''' <summary>
''' Don't try to resolve AssemblyRefs that already match explicitly specified definition.
''' </summary>
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub MissingAssemblyResolution_BindingToExplicitReference_WorseVersion()
' c - a -> d -> "b,v2"
' e -> "b,v1"
......@@ -1930,7 +1930,7 @@ End Class
''' <summary>
''' Don't try to resolve AssemblyRefs that already match explicitly specified definition.
''' </summary>
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub MissingAssemblyResolution_BindingToExplicitReference_BetterVersion()
' c - a -> d -> "b,v2"
' e -> "b,v1"
......@@ -1969,7 +1969,7 @@ End Class
"A -> E, Version=1.0.0.0, Culture=neutral, PublicKeyToken=ce65828c82a341f2")
End Sub
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub MissingAssemblyResolution_BindingToImplicitReference1()
' c - a -> d -> "b,v2"
' e -> "b,v1"
......@@ -2015,7 +2015,7 @@ End Class
"D -> B, Version=2.0.0.0, Culture=neutral, PublicKeyToken=ce65828c82a341f2")
End Sub
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub MissingAssemblyResolution_BindingToImplicitReference2()
' c - a -> d -> "b,v2"
' e -> "b,v1"
......
......@@ -868,7 +868,7 @@ IBinaryOperation (BinaryOperatorKind.Concatenate, Checked) (OperationKind.Binary
]]>.Value)
End Sub
<NoIOperationValidationFact>
<ConditionalFact(GetType(NoIOperationValidation))>
Public Sub IntrinsicSymbols()
Dim operators() As BinaryOperatorKind =
{
......
......@@ -223,7 +223,7 @@ public class DesktopClrOnly : ExecutionCondition
public class NoIOperationValidation : ExecutionCondition
{
public override bool ShouldSkip => !CompilationExtensions.EnableVerifyIOperation;
public override bool ShouldSkip => CompilationExtensions.EnableVerifyIOperation;
public override string SkipReason => "Test not supported in TEST_IOPERATION_INTERFACE";
}
......
// Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using Microsoft.CodeAnalysis.Test.Utilities;
using Xunit;
namespace Roslyn.Test.Utilities
{
public class NoIOperationValidationFactAttribute : FactAttribute
{
public NoIOperationValidationFactAttribute()
{
if (CompilationExtensions.EnableVerifyIOperation)
{
Skip = "Test not run during IOperation verification";
}
}
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册