rougin / spark-plug
Codeigniter 3 in a single variable.
Installs: 17 611
Dependents: 4
Suggesters: 6
Security: 0
Stars: 15
Watchers: 3
Forks: 5
Open Issues: 0
Requires
- php: >=5.3.0
Requires (Dev)
- phpunit/phpunit: ~4.2|~5.7|~6.0|~7.0|~8.0|~9.0
- rougin/codeigniter: ~3.0
- sanmai/phpunit-legacy-adapter: ~6.1|~8.0
Suggests
- rougin/codeigniter: A Composer-based Codeigniter 3.
- rougin/combustor: MVC code generator for Codeigniter 3.
- rougin/credo: A Doctrine ORM wrapper for Codeigniter 3.
- rougin/ignite: A Composer-based Codeigniter 3 project.
- rougin/refinery: "Ready-to-eat" migrations for Codeigniter 3.
- rougin/wildfire: A Query Builder wrapper for Codeigniter 3.
README
A special package that returns an application based on Codeigniter 3 as a single variable. Might be useful when testing a Codeigniter 3
project to frameworks such as PHPUnit.
Installation
Install Spark Plug
through Composer:
$ composer require rougin/spark-plug
Basic Usage
Using the Instance
helper
$ci = Rougin\SparkPlug\Instance::create(); // You can now use the CI_Controller instance $ci->load->helper('inflector');
Note
Instead of CI_Controller
, it returns Rougin\SparkPlug\Controller
for type-hinting its helpers and libraries.
Using the SparkPlug
class
use Rougin\SparkPlug\SparkPlug; $sparkplug = new SparkPlug($GLOBALS, $_SERVER); $ci = $sparkplug->instance(); // The Inflector helper is now loaded --- $ci->load->helper('inflector'); // --------------------------------------
Modify constants to be defined
use Rougin\SparkPlug\SparkPlug; $sparkplug = new SparkPlug($GLOBALS, $_SERVER); // Set the value of the APPPATH constant --- $sparkplug->set('APPPATH', '/path/to/app'); // ----------------------------------------- $ci = $sparkplug->instance();
Available constants that can be modified:
APPPATH
VENDOR
VIEWPATH
Note
If setting a new APPPATH
value, the value of VIEWPATH
will be set to APPPATH/views
.
Mock CI_Controller
for unit testing
use Rougin\SparkPlug\Instance; class SampleTest extends \PHPUnit_Framework_TestCase { public function testCodeigniterInstance() { // Directory path to the test application $application = __DIR__ . '/TestApp'; // Instance::create($path, $_SERVER, $GLOBALS) $ci = Instance::create($application); $this->assertInstanceOf('CI_Controller', $ci); } }
Changelog
Please see CHANGELOG for more information what has changed recently.
Testing
$ composer test
Credits
License
The MIT License (MIT). Please see LICENSE for more information.