public void ConcreteFactory1Test() { AbstractFactory factory = new ConcreteFactory1(); Assert.IsInstanceOfType(factory.CreateProductA(), typeof(ProductA1)); Assert.IsInstanceOfType(factory.CreateProductB(), typeof(ProductB1)); }
public void ShouldGetProductA1() { var factory = new ConcreteFactory1(); var result = factory.CreateProductA().Use(); Assert.Equal("A1 is used", result); }
public void AbstractFactoryTest() { IAbstractFactory factory = new ConcreteFactory1(); IProductA productA = factory.CreateProductA(); IProductB productB = factory.CreateProductB(); Assert.AreEqual(typeof(ProductA1), productA.GetType()); Assert.AreEqual(typeof(ProductB1), productB.GetType()); }
public void Test() { var factory = new ConcreteFactory1(); var product1 = factory.CreateProductA(); var product2 = factory.CreateProductB(); Assert.IsTrue(product1 is ProductA1); Assert.IsTrue(product2 is ProductB1); }
static void Main() { IFactory factory = new ConcreteFactory1(); IProductA productA = factory.CreateProductA(); productA.ShowA(); IProductB productB = factory.CreateProductB(); productB.ShowB(); Console.ReadKey(); }
// Abstract factory gives interface for creation of the famillies of interconnected objects with a given interfaces without specifing concrete // types of given objects. public void AbstractFactoryClient() { AbstractFactory factory = new ConcreteFactory1(); AbstractProductA product = factory.CreateProductA(); }