. * */ namespace Test\Files\Storage; /** * Class Local * * @group DB * * @package Test\Files\Storage */ class Local extends Storage { /** * @var string tmpDir */ private $tmpDir; protected function setUp() { parent::setUp(); $this->tmpDir = \OC::$server->getTempManager()->getTemporaryFolder(); $this->instance = new \OC\Files\Storage\Local(array('datadir' => $this->tmpDir)); } protected function tearDown() { \OC_Helper::rmdirr($this->tmpDir); parent::tearDown(); } public function testStableEtag() { if (\OC_Util::runningOnWindows()) { $this->markTestSkipped('[Windows] On Windows platform we have no stable etag generation - yet'); } $this->instance->file_put_contents('test.txt', 'foobar'); $etag1 = $this->instance->getETag('test.txt'); $etag2 = $this->instance->getETag('test.txt'); $this->assertEquals($etag1, $etag2); } public function testEtagChange() { if (\OC_Util::runningOnWindows()) { $this->markTestSkipped('[Windows] On Windows platform we have no stable etag generation - yet'); } $this->instance->file_put_contents('test.txt', 'foo'); $this->instance->touch('test.txt', time() - 2); $etag1 = $this->instance->getETag('test.txt'); $this->instance->file_put_contents('test.txt', 'bar'); $etag2 = $this->instance->getETag('test.txt'); $this->assertNotEquals($etag1, $etag2); } /** * @expectedException \InvalidArgumentException */ public function testInvalidArgumentsEmptyArray() { new \OC\Files\Storage\Local([]); } /** * @expectedException \InvalidArgumentException */ public function testInvalidArgumentsNoArray() { new \OC\Files\Storage\Local(null); } }