/** * Test connecting and disconnecting two pipes. */ public function testConnectingAndDisconnectingTwoPipes() { // create two pipes $pipe1 = new Pipe(); $pipe2 = new Pipe(); // connect them $success = $pipe1->connect($pipe2); // test assertions $this->assertTrue($pipe1 instanceof Pipe, "Expecting \$pipe1 instanceof Pipe"); $this->assertTrue($pipe2 instanceof Pipe, "Expecting \$pipe2 instanceof Pipe"); $this->assertTrue($success, "Expecting connected pipe1 to pipe2"); // disconnect pipe 2 from pipe 1 $disconnectedPipe = $pipe1->disconnect(); $this->assertTrue($disconnectedPipe === $pipe2, "Expecting disconnected pipe2 from pipe1"); }