コード例 #1
0
 public function testFileTooBig()
 {
     $this->viewMock->expects($this->any())->method('filesize')->willReturn(4194304 + 1);
     $result = $this->controller->load('/', 'foo.bar');
     $data = $result->getData();
     $status = $result->getStatus();
     $this->assertSame(400, $status);
     $this->assertArrayHasKey('message', $data);
     $this->assertSame('This file is too big to be opened. Please download the file instead.', $data['message']);
 }
コード例 #2
0
 /**
  * @dataProvider dataTestSave
  *
  * @param $path
  * @param $filecontents
  * @param $mtime
  * @param $filemtime
  * @param $isUpdatable
  * @param $expectedStatus
  * @param $expectedMessage
  */
 public function testSave($path, $filecontents, $mtime, $filemtime, $isUpdatable, $expectedStatus, $expectedMessage)
 {
     $this->viewMock->expects($this->any())->method('filemtime')->willReturn($filemtime);
     $this->viewMock->expects($this->any())->method('isUpdatable')->willReturn($isUpdatable);
     if ($expectedStatus === 200) {
         $this->viewMock->expects($this->once())->method('file_put_contents')->with($path, $filecontents);
     } else {
         $this->viewMock->expects($this->never())->method('file_put_contents');
     }
     $result = $this->controller->save($path, $filecontents, $mtime);
     $status = $result->getStatus();
     $data = $result->getData();
     $this->assertSame($expectedStatus, $status);
     if ($status === 200) {
         $this->assertArrayHasKey('mtime', $data);
         $this->assertArrayHasKey('size', $data);
     } else {
         $this->assertArrayHasKey('message', $data);
         $this->assertSame($expectedMessage, $data['message']);
     }
 }