public void SymbolEquality() { var syntaxTree = CSharpSyntaxTree.ParseText( @" namespace RoslynSandbox { internal class Foo { internal object Bar() { } } }"); var compilation = CSharpCompilation.Create("test", new[] { syntaxTree }, MetadataReferences.FromAttributes()); var semanticModel = compilation.GetSemanticModel(syntaxTree); var symbol = semanticModel.GetDeclaredSymbol(syntaxTree.FindMethodDeclaration("Bar")); var qualifiedMethod = new QualifiedOverload(new QualifiedType("RoslynSandbox.Foo"), "Bar", ImmutableArray <QualifiedParameter> .Empty); Assert.AreEqual(true, symbol == qualifiedMethod); Assert.AreEqual(false, symbol != qualifiedMethod); }
public static void SymbolEquality() { var syntaxTree = CSharpSyntaxTree.ParseText( @" namespace N { internal class C { internal object M() { } } }"); var compilation = CSharpCompilation.Create("test", new[] { syntaxTree }, Settings.Default.MetadataReferences); var semanticModel = compilation.GetSemanticModel(syntaxTree); var symbol = semanticModel.GetDeclaredSymbol(syntaxTree.FindMethodDeclaration("M")); var qualifiedMethod = new QualifiedOverload(new QualifiedType("N.C"), "M", ImmutableArray <QualifiedParameter> .Empty); Assert.AreEqual(true, symbol == qualifiedMethod); Assert.AreEqual(false, symbol != qualifiedMethod); }