コード例 #1
0
        public void PopulateData()
        {
            var fs = new MockFileSystem();

            fs.CreateFile(_stubfile);
            var db = new RevisionDatabase(_filepath, fs);

            Assert.IsTrue(fs.FileExists(_filepath));

            for (var i = 0; i < 5; i++)
            {
                db.Revisions.Add(CreateStubRevision(fs));
            }

            db.WriteDbDisk();

            var doc = fs.OpenXml(_filepath);

            Assert.IsTrue(doc.HasChildNodes);
            Assert.IsTrue(doc.FirstChild.Name == "PonySFM");
            Assert.IsTrue(doc.FirstChild.HasChildNodes);
            Assert.IsTrue(doc.FirstChild.ChildNodes.Count == 5);

            foreach (XmlElement elem in doc.FirstChild.ChildNodes)
            {
                Assert.IsTrue(elem.HasAttribute("ID"));
                Assert.IsTrue(elem.HasAttribute("Test"));
                Assert.AreEqual("Cake", elem.GetAttribute("Test"));
                Assert.IsTrue(elem.HasChildNodes);

                foreach (XmlElement fileElem in elem.ChildNodes)
                {
                    Assert.IsTrue(fileElem.GetAttribute("Location") == _stubfile);
                }
            }
        }