public void SimpleNamespaceLookup() { NamespaceResolveResult nrr = (NamespaceResolveResult)resolver.ResolveSimpleName("System", new IType[0]); Assert.AreEqual("System", nrr.NamespaceName); Assert.AreSame(SpecialType.UnknownType, nrr.Type); }
public void NamespaceInParentNamespaceLookup() { var resolverWithUsing = resolver.WithCurrentUsingScope(MakeUsingScope("System.Collections.Generic")); NamespaceResolveResult nrr = (NamespaceResolveResult)resolverWithUsing.ResolveSimpleName("Text", new IType[0]); Assert.AreEqual("System.Text", nrr.NamespaceName); }
public void FindNeighborNamespace() { var resolverWithUsing = resolver.WithCurrentUsingScope(MakeUsingScope("System.Collections")); NamespaceResolveResult nrr = (NamespaceResolveResult)resolverWithUsing.ResolveSimpleName("Text", new IType[0]); Assert.AreEqual("System.Text", nrr.NamespaceName); }
public void ClassWithSameNameAsNamespace() { string program = @"using System; namespace XX { class Test { static void X() { a = $; } } class XX { public static void Test() {} } }" ; TypeResolveResult trr = Resolve <TypeResolveResult>(program.Replace("$", "$XX$")); Assert.AreEqual("XX.XX", trr.Type.FullName); NamespaceResolveResult nrr = Resolve <NamespaceResolveResult>(program.Replace("$", "$global::XX$.T")); Assert.AreEqual("XX", nrr.NamespaceName); trr = Resolve <TypeResolveResult>(program.Replace("$", "$global::XX.XX$")); Assert.AreEqual("XX.XX", trr.Type.FullName); InvocationResolveResult mrr = Resolve <CSharpInvocationResolveResult>(program.Replace("$", "$XX.Test()$")); Assert.AreEqual("XX.XX.Test", mrr.Member.FullName); }
public void FindNeighborNamespace() { resolver.UsingScope = MakeUsingScope("System.Collections"); NamespaceResolveResult nrr = (NamespaceResolveResult)resolver.ResolveSimpleName("Text", new IType[0]); Assert.AreEqual("System.Text", nrr.NamespaceName); }
public void AliasOperatorOnNamespaceAlias() { var resolverWithUsing = resolver.WithCurrentUsingScope(MakeUsingScope(usingAliases: new [] { new KeyValuePair <string, string>("x", "System.Collections.Generic") })); NamespaceResolveResult nrr = (NamespaceResolveResult)resolverWithUsing.ResolveAlias("x"); Assert.AreEqual("System.Collections.Generic", nrr.NamespaceName); }
public void NamespaceInAttributeContext() { string program = "using System; [$System.Runtime$.CompilerServices.IndexerName(\"bla\")] class Test { }"; NamespaceResolveResult result = Resolve <NamespaceResolveResult>(program); Assert.AreEqual("System.Runtime", result.NamespaceName); }
public void AliasOperatorOnNamespaceAlias() { AddUsingAlias("x", "System.Collections.Generic"); NamespaceResolveResult nrr = (NamespaceResolveResult)resolver.ResolveAlias("x"); Assert.AreEqual("System.Collections.Generic", nrr.NamespaceName); }
public void ClassNameLookup5() { string program = @"namespace MainNamespace { using A; class M { void X($Test$ a) {} } namespace Test { class B {} } } namespace A { class Test {} }"; NamespaceResolveResult nrr = Resolve<NamespaceResolveResult>(program); Assert.AreEqual("MainNamespace.Test", nrr.NamespaceName); }
public void ClassNameLookup4() { string program = @"using Test.Subnamespace; namespace MainNamespace { class Program { static void M($Test$ c) {} } } namespace Test { public class TheClass { } } namespace Test.Subnamespace { public class Test { public class TheClass { } } } "; NamespaceResolveResult nrr = Resolve<NamespaceResolveResult>(program); Assert.AreEqual("Test", nrr.NamespaceName); }
public void ResolveNamespaceSD_863() { string program = @"using System; namespace A.C { class D {} } namespace A.B.C { class D {} } namespace A.B { class TestClass { void Test() { C.D x; } } } "; NamespaceResolveResult nrr = Resolve<NamespaceResolveResult>(program.Replace("C.D", "$C$.D")); Assert.AreEqual("A.B.C", nrr.NamespaceName, "nrr.Name"); TypeResolveResult trr = Resolve<TypeResolveResult>(program.Replace("C.D", "$C.D$")); Assert.AreEqual("A.B.C.D", trr.Type.FullName); }
public void GlobalIsAlias() { NamespaceResolveResult nrr = (NamespaceResolveResult)resolver.ResolveAlias("global"); Assert.AreEqual("", nrr.NamespaceName); }
public AliasNamespaceResolveResult(string alias, NamespaceResolveResult underlyingResult) : base(underlyingResult.Namespace) { this.Alias = alias; }