Skip to content

Nissyaniss/codeception-slim-module

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

72 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Codeception Slim Module

Master Build Status Packagist Stable Version Packagist License Libraries.io for GitHub

This module allows you to run tests inside Slim 3 Microframework.
Based on ZendExpressive Module.

Install

Via commandline:

composer require --dev herloct/codeception-slim-module

Via composer.json:

{
  "require-dev": {
    "herloct/codeception-slim-module": "^1.1"
  }
}

Config

Put this on your codeception.yml

modules:
  config:
    \Herloct\Codeception\Module\Slim:
      container: path/to/container.php
    REST:
      depends: \Herloct\Codeception\Module\Slim

Or on your tests/functional.suite.yml

modules:
  enabled:
    - \Helper\Functional
    - \Herloct\Codeception\Module\Slim:
        container: path/to/container.php
    - REST:
        depends: \Herloct\Codeception\Module\Slim

The container properties is a relative path to file which returns your App's Container.
Here is the minimum container.php contents.

require __DIR__.'/vendor/autoload.php';

use Psr\Container\ContainerInterface;
use Slim\App;
use Slim\Container;

$container = new Container([
    App::class => function (ContainerInterface $c) {
        $app = new App($c);

        // routes and middlewares here

        return $app;
    }
]);

return $container;

You could use this Sample Project as a reference.

API

  • app - instance of \Slim\App
  • container - instance of \Psr\Container\ContainerInterface
  • client - BrowserKit client

Todos

  • Add more acceptance/functional tests other than REST.

About

Codeception Module for Slim 3 Microframework.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • PHP 98.1%
  • HTML 1.9%