/CIUnit

This is a fork of the unmaintained my-ciunit bitbucket repo.

Primary LanguagePHP

CIUnit for CodeIgniter 2

Note: This is not compatible with CodeIgniter 3. The original creator of my-ciunit has a new project for that here: https://github.com/kenjis/ci-phpunit-test.

Examples

Controller

class LoginActionTest extends CIUnit_TestCase
{
    public function setUp()
    {
        $this->CI = set_controller('login');
    }

    public function testLogin()
    {
        $_POST['useremail'] = 'kitsunde@example.org';
        $_POST['password'] = '123';
        $this->CI->login_action();
        $out = output();
        $this->assertRedirects($GLOBALS['OUT'], 'employee/index');
    }

    public function testTemplateRendered()
    {
        $this->CI->login_action();
        $views = output_views();
        $this->assertContains('login', $views);
    }
}

Install via composer

composer require Celc/ciunit dev-master

Copy the example test directory into the root of your project (same folder as application and system):

cp -R vendor/celc/ciunit/tests ./

Create application/config/testing/database.php for database testing. The database name must end with _test.

Writing tests

The tests directory is an example. You are meant to replace the tests with your own.

Run Tests:

From the tests directory run:

../vendor/phpunit