public static function main() { $demo = new Demo(); $demo->array = array(1, 2); $obj1 = new ConcretePrototype($demo); $obj2 = $obj1->copy(); var_dump($obj1->getName()); var_dump($obj2->getName()); $demo->array = array(3, 4); var_dump($obj1->getName()); var_dump($obj2->getName()); var_dump($obj1 == $obj2); }
public function testCopy() { $str = 'prototype'; $object1 = new ConcretePrototype($str); $this->assertEquals($str, $object1->getName()); $object2 = $object1->copy(); $this->assertEquals($str, $object2->getName()); }