private void FindCasesWithNewParents(XmlNodeList nodes, ImportAnalysis a) { foreach (XmlNode node in nodes) { Case c = ParseCaseNode(node); if (c == null) // If not a case { continue; } Case parent = ParseCaseNode(node.ParentNode); if (parent == null) { continue; // TODO: Figure out a way to detect when a case was moved to the root of the milestone } else { c.ParentCaseID = parent.ID; } // Now we have a case with a parent case check to see if it differs from the original case's parent if (_origCases.ContainsKey(c.ID) && _origCases[c.ID].ParentCaseID != c.ParentCaseID) { a.CaseToNewParent.Add(c, parent); } } }
public ImportAnalysis Analyze() { RedoOriginalSearch(); IndexOriginalCases(); ImportAnalysis a = new ImportAnalysis(); XmlNodeList nodes = _doc.SelectNodes("//node"); FindCasesWithNewParents(nodes, a); return(a); }
public void TestMindMapImport() { XmlDocument doc = new XmlDocument(); doc.Load("input.mm"); FogBugz fb = Login(); Importer im = new Importer(doc, fb); ImportAnalysis res = im.Analyze(); Assert.AreEqual(res.CaseToNewParent.Count, 1); // Assert.AreEqual(res.CasesWithNewParents[0].ID, 7164); //Assert.AreEqual(res.CasesWithNewParents[0].ParentCase, 7163); foreach (Case c in res.CaseToNewParent.Keys) { fb.SetParent(c, res.CaseToNewParent[c].ID); } }
public ImportConfirmationDlg(ImportAnalysis analysis) { _analysis = analysis; InitializeComponent(); }
private void FindCasesWithNewParents(XmlNodeList nodes, ImportAnalysis a) { foreach (XmlNode node in nodes) { Case c = ParseCaseNode(node); if (c == null) // If not a case continue; Case parent = ParseCaseNode(node.ParentNode); if (parent == null) { continue; // TODO: Figure out a way to detect when a case was moved to the root of the milestone } else c.ParentCaseID = parent.ID; // Now we have a case with a parent case check to see if it differs from the original case's parent if (_origCases.ContainsKey(c.ID) && _origCases[c.ID].ParentCaseID != c.ParentCaseID) { a.CaseToNewParent.Add(c, parent); } } }
public ImportAnalysis Analyze() { RedoOriginalSearch(); IndexOriginalCases(); var a = new ImportAnalysis(); XmlNodeList nodes = _doc.SelectNodes("//node"); FindCasesWithNewParents(nodes, a); return a; }