示例#1
0
        public static void Run()
        {
            System.Console.WriteLine("-- Factory Method --");

            var productAFactory = new ProductAFactory();
            var productA        = productAFactory.CreateProduct();

            productA.DoStuff();
        }
示例#2
0
            public void ReturnTrueIfProductIsSetUpCorrectly()
            {
                ProductAFactory l_ProductFactory = new ProductAFactory();
                ProductModel    ProductModel     = _ProductBuilder.CreateProduct(l_ProductFactory);

                Assert.IsTrue(ProductModel.Widgets.Count == 2);

                WidgetModel WidgetModel1 = ProductModel.Widgets[0];
                WidgetModel WidgetModel2 = ProductModel.Widgets[1];

                Assert.AreEqual(WidgetModel1.WidgetShape, WidgetShape.Square);
                Assert.AreEqual(WidgetModel1.WidgetColor, WidgetColor.Gray);
                Assert.AreEqual(WidgetModel1.WidgetSize, WidgetSize.Large);

                Assert.AreEqual(WidgetModel2.WidgetShape, WidgetShape.Circle);
                Assert.AreEqual(WidgetModel2.WidgetColor, WidgetColor.Red);
                Assert.AreEqual(WidgetModel2.WidgetSize, WidgetSize.Medium);

                Assert.IsTrue(l_ProductFactory.DoesConnectionAlreadyExist(WidgetModel1, WidgetModel2));
            }
 public void ProductAFactoryTest()
 {
     IFactory factory = new ProductAFactory();
     Assert.Equal("ProductA", factory.Create().GetType().Name);
 }