Пример #1
0
        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);
                }
            }
        }
Пример #2
0
        public ImportAnalysis Analyze()
        {
            RedoOriginalSearch();

            IndexOriginalCases();

            ImportAnalysis a = new ImportAnalysis();

            XmlNodeList nodes = _doc.SelectNodes("//node");

            FindCasesWithNewParents(nodes, a);
            return(a);
        }
Пример #3
0
        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();
 }
Пример #5
0
        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);
                }
            }
        }
Пример #6
0
        public ImportAnalysis Analyze()
        {
            RedoOriginalSearch();

            IndexOriginalCases();

            var a = new ImportAnalysis();

            XmlNodeList nodes = _doc.SelectNodes("//node");
            FindCasesWithNewParents(nodes, a);
            return a;
        }