public void CanAddItem()
        {
            // Add a box
            var item = new Item()
            {
                Description = "My Cube",
                Depth       = 5,
                Length      = 5,
                Weight      = 5,
                Width       = 5
            };

            var packer = new Packer();

            packer.AddItem(item, 1);

            var items = packer.GetItems();

            Assert.AreEqual(1, items.GetCount());

            var castItems = items.GetContent().Cast <Item>().ToList();

            Assert.AreEqual(1, castItems.Count);

            var firstItem = castItems.FirstOrDefault();

            Assert.NotNull(firstItem);
            Assert.AreEqual(item.Description, firstItem.Description);
        }
        public void CanAddItems()
        {
            var item1 = new Item()
            {
                Description = "My Cube 5x5x5",
                Depth       = 5,
                Length      = 5,
                Weight      = 5,
                Width       = 5
            };

            var item2 = new Item()
            {
                Description = "My Cube 10x10x10",
                Depth       = 10,
                Length      = 10,
                Weight      = 10,
                Width       = 10
            };

            var packer   = new Packer();
            var newItems = new List <Item>()
            {
                item1, item2
            };

            packer.AddItems(newItems);

            var items = packer.GetItems();

            Assert.AreEqual(2, items.GetCount());

            var castItems = items.GetContent().Cast <Item>().ToList();

            Assert.AreEqual(2, castItems.Count);
        }