}
- public function testDecryptFile() {
+ /**
+ * @dataProvider dataTrueFalse
+ */
+ public function testDecryptFile($isEncrypted) {
$path = 'test.txt';
->setMethods(['getTimestamp'])
->getMock();
- $instance->expects($this->any())->method('getTimestamp')->willReturn(42);
-
- $this->view->expects($this->once())
- ->method('copy')
- ->with($path, $path . '.decrypted.42');
- $this->view->expects($this->once())
- ->method('rename')
- ->with($path . '.decrypted.42', $path);
-
+ $fileInfo = $this->createMock(FileInfo::class);
+ $fileInfo->expects($this->any())->method('isEncrypted')
+ ->willReturn($isEncrypted);
+ $this->view->expects($this->any())->method('getFileInfo')
+ ->willReturn($fileInfo);
+
+ if ($isEncrypted) {
+ $instance->expects($this->any())->method('getTimestamp')->willReturn(42);
+
+ $this->view->expects($this->once())
+ ->method('copy')
+ ->with($path, $path . '.decrypted.42');
+ $this->view->expects($this->once())
+ ->method('rename')
+ ->with($path . '.decrypted.42', $path);
+ } else {
+ $instance->expects($this->never())->method('getTimestamp');
+ $this->view->expects($this->never())->method('copy');
+ $this->view->expects($this->never())->method('rename');
+ }
$this->assertTrue(
$this->invokePrivate($instance, 'decryptFile', [$path])
);
->setMethods(['getTimestamp'])
->getMock();
+
+ $fileInfo = $this->createMock(FileInfo::class);
+ $fileInfo->expects($this->any())->method('isEncrypted')
+ ->willReturn(true);
+ $this->view->expects($this->any())->method('getFileInfo')
+ ->willReturn($fileInfo);
+
$instance->expects($this->any())->method('getTimestamp')->willReturn(42);
$this->view->expects($this->once())