public void Count()
        {
            Project project = new Project();
            Assert.That(project.GetCount(), Is.EqualTo(0));
            Equipment enterprise = project.Items.AddEquipment("Enterprise");
            Assert.That(project.GetCount(), Is.EqualTo(1));

            enterprise.Items.AddEquipment("Site A");
            Assert.That(project.GetCount(), Is.EqualTo(2));
        }
 public void Default()
 {
     Project project = new Project();
     Assert.That(project.Items, Is.Empty);
 }
 public void CountMultiple()
 {
     Project project = new Project();
     project.Items.AddEquipment("Enterprise").Items.AddEquipment("Site A");
     Assert.That(project.GetCount(), Is.EqualTo(2));
 }
        public void RoundTripViaString()
        {
            Project project = new Project();
            project.Items.AddEquipment("Enterprise").Items.AddEquipment("Site").Items.AddEquipment("Area");

            Assert.That(project.GetCount(), Is.EqualTo(3));

            string xml = SerializationHelper.SerializeToString(project);
            Assert.That(xml, Is.StringContaining("Enterprise"));
            Assert.That(xml, Is.StringContaining("Site"));
            Assert.That(xml, Is.StringContaining("Area"));

            Project reloaded = SerializationHelper.DeserializeFromString<Project>(xml);
            Assert.That(reloaded.GetCount(), Is.EqualTo(3));
            Assert.That(reloaded.Items[0].Name, Is.EqualTo("Enterprise"));
            Assert.That(reloaded.Items[0].Items[0].Name, Is.EqualTo("Site"));
            Assert.That(reloaded.Items[0].Items[0].Items[0].Name, Is.EqualTo("Area"));

            string serialized = SerializationHelper.SerializeToString(reloaded);
            Assert.That(serialized, Is.EqualTo(xml));
        }