diff options
author | Andrey Andreev <narf@bofh.bg> | 2012-03-28 14:01:47 +0200 |
---|---|---|
committer | Andrey Andreev <narf@bofh.bg> | 2012-03-28 14:01:47 +0200 |
commit | 9602651a0d435b8ccef1965a154e8a33594de6f3 (patch) | |
tree | eef01a98150dc7703a98266fe92b0a802078b083 /tests/mocks/core/loader.php | |
parent | 0cfc3fdaf1f0b928dd3cf3fc916275d30f34a550 (diff) | |
parent | 8e2478e7310b5cfff88b64ff5d84b71f1c124b58 (diff) |
Merge upstream branch
Diffstat (limited to 'tests/mocks/core/loader.php')
-rw-r--r-- | tests/mocks/core/loader.php | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/mocks/core/loader.php b/tests/mocks/core/loader.php new file mode 100644 index 000000000..d4b29bb3d --- /dev/null +++ b/tests/mocks/core/loader.php @@ -0,0 +1,30 @@ +<?php + +class Mock_Core_Loader extends CI_Loader { + + /** + * Since we use paths to load up models, views, etc, we need the ability to + * mock up the file system so when core tests are run, we aren't mucking + * in the application directory. this will give finer grained control over + * these tests. So yeah, while this looks odd, I need to overwrite protected + * class vars in the loader. So here we go... + * + * @covers CI_Loader::__construct() + */ + public function __construct() + { + vfsStreamWrapper::register(); + vfsStreamWrapper::setRoot(new vfsStreamDirectory('application')); + + $this->models_dir = vfsStream::newDirectory('models')->at(vfsStreamWrapper::getRoot()); + $this->libs_dir = vfsStream::newDirectory('libraries')->at(vfsStreamWrapper::getRoot()); + $this->helpers_dir = vfsStream::newDirectory('helpers')->at(vfsStreamWrapper::getRoot()); + $this->views_dir = vfsStream::newDirectory('views')->at(vfsStreamWrapper::getRoot()); + + $this->_ci_ob_level = ob_get_level(); + $this->_ci_library_paths = array(vfsStream::url('application').'/', BASEPATH); + $this->_ci_helper_paths = array(vfsStream::url('application').'/', BASEPATH); + $this->_ci_model_paths = array(vfsStream::url('application').'/'); + $this->_ci_view_paths = array(vfsStream::url('application').'/views/' => TRUE); + } +}
\ No newline at end of file |