private static IEnumerable <AnalysisValue> GetTestCaseClasses(ModuleAnalysis analysis) { return(analysis.GetAllAvailableMembers(SourceLocation.MinValue, GetMemberOptions.ExcludeBuiltins) .SelectMany(m => analysis.GetValues(m.Name, SourceLocation.MinValue)) .Where(v => v.MemberType == PythonMemberType.Class) .Where(v => v.Mro.SelectMany(v2 => v2).Any(IsTestCaseClass))); }
public override bool Walk(CallExpression node) { bool isRegex = false; if (node.Target is MemberExpression me && RegexFunctionNames.Contains(me.Name) && me.Target is NameExpression target) { if (_analysis.GetValues(target.Name, me.GetStart(_ast)).Any(m => m is IModule && m.Name == "re")) { isRegex = true; } }