APISampleUnitTestsCS.SymbolsAndSemantics.FailedOverloadResolution C# (CSharp) Метод

FailedOverloadResolution() приватный Метод

private FailedOverloadResolution ( ) : void
Результат void
        public void FailedOverloadResolution()
        {
            TestCode testCode = new TestCode(@"
            class Program
            {
            static void Main(string[] args)
            {
            int i = 8;
            int j = i + q;
            X$.f(""hello"");
            }
            }

            class X
            {
            public static void f() { }
            public static void f(int i) { }
            }
            ");
            var typeInfo = testCode.SemanticModel.GetTypeInfo((ExpressionSyntax)testCode.SyntaxNode);
            var semanticInfo = testCode.SemanticModel.GetSymbolInfo((ExpressionSyntax)testCode.SyntaxNode);

            Assert.IsNull(typeInfo.Type);
            Assert.IsNull(typeInfo.ConvertedType);

            Assert.IsNull(semanticInfo.Symbol);
            Assert.AreEqual(CandidateReason.OverloadResolutionFailure, semanticInfo.CandidateReason);
            Assert.AreEqual(2, semanticInfo.CandidateSymbols.Count);
            Symbol[] sortedCandidates = semanticInfo.CandidateSymbols.AsEnumerable().OrderBy(s => string.Format("{0:T}", s)).ToArray();
            Assert.AreEqual("void X.f()", string.Format("{0:T}", sortedCandidates[0]));
            Assert.AreEqual(SymbolKind.Method, sortedCandidates[0].Kind);
            Assert.AreEqual("void X.f(System.Int32 i)", string.Format("{0:T}", sortedCandidates[1]));
            Assert.AreEqual(SymbolKind.Method, sortedCandidates[1].Kind);

            var memberGroup = testCode.SemanticModel.GetMemberGroup((ExpressionSyntax)testCode.SyntaxNode);

            Assert.AreEqual(2, memberGroup.Count);
            Symbol[] sortedMemberGroup = memberGroup.AsEnumerable().OrderBy(s => string.Format("{0:T}", s)).ToArray();
            Assert.AreEqual("void X.f()", string.Format("{0:T}", sortedMemberGroup[0]));
            Assert.AreEqual("void X.f(System.Int32 i)", string.Format("{0:T}", sortedMemberGroup[1]));
        }