From c578e33d086b5011f940fc3645fd5d6d58c3f84c Mon Sep 17 00:00:00 2001 From: "Paul M. Jones" Date: Mon, 2 Jan 2012 14:30:16 -0600 Subject: [PATCH] add a mock system object to make it easier to create/remove mock system setups --- .../tests/Aura/Framework/Mock/System.php | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 package/Aura.Framework/tests/Aura/Framework/Mock/System.php diff --git a/package/Aura.Framework/tests/Aura/Framework/Mock/System.php b/package/Aura.Framework/tests/Aura/Framework/Mock/System.php new file mode 100644 index 0000000..cce3a2d --- /dev/null +++ b/package/Aura.Framework/tests/Aura/Framework/Mock/System.php @@ -0,0 +1,48 @@ +getRootPath(); + + if (is_dir($dir)) { + $this->remove(); + } + + if (! is_dir($dir)) { + mkdir($dir); + } + + mkdir($this->getConfigPath()); + mkdir($this->getIncludePath()); + mkdir($this->getPackagePath()); + mkdir($this->getTmpPath()); + mkdir($this->getWebPath()); + } + + public function remove() + { + $dir = $this->getRootPath(); + $iterator = new \RecursiveIteratorIterator( + new \RecursiveDirectoryIterator($dir), + \RecursiveIteratorIterator::CHILD_FIRST + ); + foreach ($iterator as $path) { + if ($path->isDir()) { + rmdir($path->__toString()); + } else { + unlink($path->__toString()); + } + } + rmdir($dir); + } +}