public void Bridge_Pattern_Test() { var abstraction = new Abstraction(new ImplementationA()); Assert.AreEqual("Abstract: A", abstraction.Operation()); abstraction = new ExtendedAbstraction(new ImplementationB()); Assert.AreEqual("Extended Abstract: B", abstraction.Operation()); }
public static void TestBridge() { Abstraction abstractionA = new Abstraction(new ConcreteImplementationA()); Abstraction abstractionB = new Abstraction(new ConcreteImplementationB()); Abstraction exAbstractionA = new ExtendedAbstraction(new ConcreteImplementationA()); Abstraction exAbstractionB = new ExtendedAbstraction(new ConcreteImplementationB()); Console.WriteLine(abstractionA.Operation()); Console.WriteLine(abstractionB.Operation()); Console.WriteLine(exAbstractionA.Operation()); Console.WriteLine(exAbstractionB.Operation()); }