talyssonoc/phactory-laravel

Use Phactory inside Laravel

v0.1 2015-06-10 01:40 UTC

This package is not auto-updated.

Last update: 2024-04-13 16:06:59 UTC


README

With Phactory Laravel you'll be able to use Phactory with Laravel 5.

If you don't know what Phactory is:

Phactory is an alternative to using database fixtures in your PHP unit tests. Instead of maintaining a separate XML file of data, you define a blueprint for each table and then create as many different objects as you need in your PHP code.

Phactory Laravel will access the database based on your Laravel config, simple as that.

Be aware that you must specify a testing database, otherwise Phactory Laravel will insert data in your development database.

Installation

First you need to add this to your composer.json requires:

	"talyssonoc/phactory-laravel": "dev-master"

Then set the minimum-stability of your dependencies to dev, adding this to your composer.json:

	"minimum-stability": "dev"

Then run:

	$ composer install

After that you should add this to your service providers (at config/app.php):

	'PhactoryLaravel\PhactoryServiceProvider'

And that to your aliases (at the same file):

	'Phactory'	=> 'PhactoryLaravel\\Phactory'

After that, Phactory facade will be available for you to use.

Creating a factory

Yours factories must be inside the folder app/Factories, and you should use the API provided by Phactory. The content of each file must be something like this:

<?php

	Phactory::define('user', [
	  'name' => 'UserName :D'
	]);

Laravel 5.1

Note that is is not entirely necessary with Laravel 5.1, since it has model factories out-of-box, but you can still use Phactory Laravel with Laravel 5.1 if you prefer.

To do