recca0120 / package-phpunit
laravel package development phpunit
v0.2.1
2016-02-01 06:19 UTC
Requires
- php: >=5.5.9
- illuminate/container: ~5.1
- illuminate/contracts: ~5.1
- illuminate/database: ~5.1
- illuminate/events: ~5.1
- illuminate/hashing: ~5.1
- illuminate/support: ~5.1
- nesbot/carbon: ~1.20
Requires (Dev)
- mockery/mockery: 0.9.*
- phpunit/phpunit: ~4.0
Suggests
- recca0120/terminal: Required to use the Terminal Panel (~2.0.5)
This package is auto-updated.
Last update: 2024-10-10 06:07:21 UTC
README
Install
step1
composer.json
require-dev: {
"recca0120/package-phpunit": "~0.2.1"
}
composer install or composer update
step2
copy phpunit.xml, tests folder to root
step3
execute phpunit
Example
This package is auto setup database [sqlite]
you can add migrations to database/migrations
and in your test case add code
class DatabaseTest extends PHPUnit_Framework_TestCase { public function setUp() { $app = App::getInstance(); $app->migrate('up'); } public function tearDown() { $app = App::getInstance(); $app->migrate('down'); } }
FULL DEMO
use Illuminate\Database\Eloquent\Model; class DatabaseTest extends PHPUnit_Framework_TestCase { public function setUp() { $app = App::getInstance(); $app->migrate('up'); } public function tearDown() { $app = App::getInstance(); $app->migrate('down'); } public function test_app_environment() { $this->assertEquals(App::environment(), 'testing'); } public function test_insert_into_database() { $data = [ 'test1' => 'test1', 'test2' => 'test2', 'test3' => 'test3', ]; $test = Test::create($data); // $result = $test->toArray(); $this->assertEquals($test->id, 1); $this->assertEquals($test->test1, $data['test1']); $this->assertEquals($test->test2, $data['test2']); $this->assertEquals($test->test3, $data['test3']); } } class Test extends Model { protected $guarded = ['id']; }