public void Serialize_not_applicable_size_produces_no_size_attribute()
        {
            var orders = new List <Order>();
            var order  = new Order(1234);

            order.Products.Add(new ProductBuilder(4321, "T-Shirt")
                               .WithSize(ProductSize.NotApplicable)
                               .WithPrice(new Price(21, Currency.USD))
                               .WithColor(Color.RED)
                               .Build()
                               );
            orders.Add(order);

            var ordersWriter = new OrdersSerializer(orders);

            var expectedOrder =
                "<orders>" +
                "<order id=\"1234\">" +
                "<product id=\"4321\" color=\"RED\">" +
                "<price currency=\"USD\">" +
                "21" +
                "</price>" +
                "T-Shirt" +
                "</product>" +
                "</order>" +
                "</orders>";

            Assert.Equal(expectedOrder, ordersWriter.Serialize());
        }
        public void Serialize_produces_no_orders()
        {
            var orders       = new List <Order>();
            var ordersWriter = new OrdersSerializer(orders);

            var expectedOrder = "<orders />";

            Assert.Equal(expectedOrder, ordersWriter.Serialize());
        }
Exemplo n.º 3
0
 public static OrdersModel Load()
 {
     if (File.Exists(filename))
     {
         return(OrdersSerializer.Deserialize(filename));
     }
     else
     {
         return(new OrdersModel());
     }
 }
        public void Serialize_produces_all_orders()
        {
            var orders = new List <Order>();
            var order  = new Order(1234);

            //ProductSize.Medium, new Price(21, Currency.USD), Color.RED
            order.Products.Add(new ProductBuilder(4321, "T-Shirt")
                               .WithSize(ProductSize.Medium)
                               .WithPrice(new Price(21, Currency.USD))
                               .WithColor(Color.RED)
                               .Build()
                               );

            order.Products.Add(new ProductBuilder(6789, "Socks")
                               .WithSize(ProductSize.Medium)
                               .WithPrice(new Price(8, Currency.USD))
                               .WithColor(Color.RED)
                               .Build()
                               );

            orders.Add(order);

            var ordersWriter  = new OrdersSerializer(orders);
            var expectedOrder =
                "<orders>" +
                "<order id=\"1234\">" +
                "<product id=\"4321\" color=\"RED\" size=\"Medium\">" +
                "<price currency=\"USD\">" +
                "21" +
                "</price>" +
                "T-Shirt" +
                "</product>" +
                "<product id=\"6789\" color=\"RED\" size=\"Medium\">" +
                "<price currency=\"USD\">" +
                "8" +
                "</price>" +
                "Socks" +
                "</product>" +
                "</order>" +
                "</orders>";

            var result = ordersWriter.Serialize();

            Assert.Equal(expectedOrder, result);
        }
Exemplo n.º 5
0
 public void Save()
 {
     OrdersSerializer.Serialize(this, filename);
 }