public void TypeOfThisUsages_SuperTypeIfAvailable() { SetupDefaultEnclosingMethod( InvokeStmt("this", Method(Fix.Void, DefaultClassContext, "M"))); Context.TypeShape.TypeHierarchy = new TypeHierarchy { Element = DefaultClassContext, Extends = new TypeHierarchy { Element = Type("TSuper") } }; AssertQueriesWithoutSettingContexts( new Query { type = Type("TSuper").ToCoReName(), classCtx = Type("TSuper").ToCoReName(), methodCtx = DefaultMethodContext.ToCoReName(), definition = DefinitionSites.CreateDefinitionByThis(), sites = { CallSites.CreateReceiverCallSite( Method(Fix.Void, DefaultClassContext, "M")) } }); }
public void MethodContext_ElementDeclaration() { AddInvocationOnThisToDefaultContext(); ResetMethodHierarchies( new MethodHierarchy { Element = DefaultMethodContext }); var actual = AssertSingleQuery().methodCtx; var expected = DefaultMethodContext.ToCoReName(); Assert.AreEqual(expected, actual); }