private SourceRelation parseRelation(Source source, string tmpStr, ProductRule prod) { if (!string.IsNullOrEmpty(tmpStr)) { string[] values = tmpStr.Split(':'); SourceRelation relation = new SourceRelation(); relation.Source = source; relation.Field = values[0]; if (values.Length > 0) { tmpStr = values[1]; if (tmpStr.Contains('.')) { relation.ReferecedField = tmpStr.Split('.')[1]; tmpStr = tmpStr.Split('.')[0]; relation.ReferecedSource = prod.RegistSource(tmpStr); } else { relation.ReferecedField = tmpStr; } } return(relation); } return(null); }
public static SourceAnalysisModel CreateAnalysisMock() { var model = new SourceAnalysisModel(); var ns1 = new SourceNamespace { FullName = "ns1" }; var ns2 = new SourceNamespace { FullName = "ns2" }; var f1 = new SourceFile { Filename = "filename1", Size = 200L, Namespace = ns1 }; var f2 = new SourceFile { Filename = "filename2", Size = 300L, Namespace = ns2 }; var m1 = new SourceMethod { Name = "method1", ParentFile = f1 }; var m2 = new SourceMethod { Name = "method2", ParentFile = f2 }; var r1 = new SourceRelation <SourceFile>(); r1.Reference = f2; r1.ReferencesCount = 3; SourceRelation <SourceFile>[] relations = { r1 }; // f1.FileRelationsByClassReferences = relations.ToList(); SourceFile[] files1 = { f1 }; ns1.Files = files1.ToList(); SourceFile[] files2 = { f2 }; ns2.Files = files2.ToList(); SourceFile[] files3 = { f1, f2 }; // model.Files = files3.ToList(); return(model); }