zonuexe/phactory

A Database Factory for PHP Unit Tests

v0.5.0 2015-12-01 18:12 UTC

README

Build Status Package version Apache License 2.0

What is it?

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.

Phactory was inspired by Factory Girl.

Features

  • Define default values for your table rows once with Phactory::define(), then easily create objects in that table with a call to Phactory::create().
  • Create associations between your defined tables, and the objects will automatically be associated in the database upon creation.
  • Use sequences to create unique values for each successive object you create.

Database Support

  • MySQL
  • Sqlite
  • Postgresql

Language Support

  • PHP >= 5.3

Limitations

  • Each table must have a single integer primary key for associations to work.