/** * @since 0.1.0 */ public function copy($source, $destination, $overwrite = false, $mode = false) { if (!$overwrite && $this->exists($destination)) { return false; } $result = self::$mock->copy($source, $destination); if ($mode) { $this->chmod($destination, $mode); } return $result; }
/** * Test copying a file to a existing destination file. * * @since 0.1.0 */ public function test_copy_file_to_existing_destination_file() { $this->assertTrue($this->mock->add_file('/test.txt', array('contents' => 'testing'))); $this->assertTrue($this->mock->exists('/test.txt')); $this->assertEquals('testing', $this->mock->get_file_attr('/test.txt', 'contents')); $this->assertTrue($this->mock->add_file('/a.txt', array('contents' => 'abc'))); $this->assertTrue($this->mock->exists('/a.txt')); $this->assertEquals('abc', $this->mock->get_file_attr('/a.txt', 'contents')); $this->assertTrue($this->mock->copy('/test.txt', '/a.txt')); $this->assertTrue($this->mock->exists('/test.txt')); $this->assertEquals('testing', $this->mock->get_file_attr('/test.txt', 'contents')); $this->assertTrue($this->mock->exists('/a.txt')); $this->assertEquals('testing', $this->mock->get_file_attr('/a.txt', 'contents')); }