Codeigniter applications as single variables.
Clone or download

README.md

Spark Plug

Latest Version on Packagist Software License Build Status Coverage Status Quality Score Total Downloads

Spark Plug returns Codeigniter applications as single variables. Might be useful for testing frameworks such as PHPUnit.

Installation

Install Spark Plug via 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');

Using the SparkPlug class

use Rougin\SparkPlug\SparkPlug;

$sparkplug = SparkPlug($GLOBALS, $_SERVER);

$ci = $sparkplug->instance();

$ci->load->helper('inflector');

Modify constants to be defined

use Rougin\SparkPlug\SparkPlug;

$sparkplug = SparkPlug($GLOBALS, $_SERVER);

// Sets the value of the APPPATH constant
$sparkplug->set('APPPATH', '/path/to/app');

$ci = $sparkplug->instance();

Available constants to be modified:

  • APPPATH
  • VENDOR
  • VIEWPATH

NOTE: If you set 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.