chriskite / phactory
A Database Factory for PHP Unit Tests
Installs: 206 159
Dependents: 12
Suggesters: 0
Security: 0
Stars: 141
Watchers: 8
Forks: 39
Open Issues: 17
Requires
- php: >=5.3.0
Requires (Dev)
- ext-mongo: *
- ext-pdo: *
- ext-pdo_sqlite: *
Suggests
- ext-mongo: Allows use of Phactory for testing against MongoDB databases
- ext-pdo: Allows use of Phactory for testing against SQL databases
- ext-pdo_mysql: Allows use of Phactory for testing against MySQL databases
- ext-pdo_sqlite: Allows use of Phactory for testing against SQLite databases
This package is not auto-updated.
Last update: 2024-12-21 14:42:52 UTC
README
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.