From 5a1619d80d1d0c80cc668a31526474c39bba0619 Mon Sep 17 00:00:00 2001
From: Robin McCorkell <rmccorkell@owncloud.com>
Date: Sat, 29 Aug 2015 17:42:20 +0100
Subject: [PATCH] Unit test getting temp dir from config

---
 tests/lib/tempmanager.php | 20 +++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

diff --git a/tests/lib/tempmanager.php b/tests/lib/tempmanager.php
index 04e14c335b..8faf804a20 100644
--- a/tests/lib/tempmanager.php
+++ b/tests/lib/tempmanager.php
@@ -50,7 +50,10 @@ class TempManager extends \Test\TestCase {
 			$logger = new NullLogger();
 		}
 		if (!$config) {
-			$config = \OC::$server->getConfig();
+			$config = $this->getMock('\OCP\IConfig');
+			$config->method('getSystemValue')
+				->with('tempdirectory', null)
+				->willReturn('/tmp');
 		}
 		$manager = new \OC\TempManager($logger, $config);
 		if ($this->baseDir) {
@@ -195,4 +198,19 @@ class TempManager extends \Test\TestCase {
 		$this->assertStringEndsNotWith('./Traversal\\../FileName', $tmpManager);
 		$this->assertStringEndsWith('.Traversal..FileName', $tmpManager);
 	}
+
+	public function testGetTempBaseDirFromConfig() {
+		$dir = $this->getManager()->getTemporaryFolder();
+
+		$config = $this->getMock('\OCP\IConfig');
+		$config->expects($this->once())
+			->method('getSystemValue')
+			->with('tempdirectory', null)
+			->willReturn($dir);
+
+		$this->baseDir = null; // prevent override
+		$tmpManager = $this->getManager(null, $config);
+
+		$this->assertEquals($dir, $tmpManager->getTempBaseDir());
+	}
 }
-- 
GitLab