Skip to content

rougin/spark-plug

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Spark Plug

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

Spark Plug is a special PHP library that returns Codeigniter applications as single variables. This package might be useful when testing applications 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');

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.