1.1.0 • Published 9 years ago

factory-mysql-fixtures v1.1.0

Weekly downloads
1
License
-
Repository
github
Last release
9 years ago

factory-mysql-fixtures

Build Status

Factory to load fixtures on mysql database. Based on Factory Girl and Factory Lady.

Installation

Install via npm:

$ npm install factory-mysql-fixtures

Usage

Configuring Factory

var Factory = require('factory-mysql-fixtures');

var dbConf = {
  host: 'localhost',
  user: 'root',
  database: 'db-test',
  password: 'db-password', // optional
  timezone: 'utc',
  dbStructureFile: './build/structure.sql' // set your own script to reload initial data when calling clean method
};
  
Factory.config(dbConf);

Defining Factories

var _nameIndex = 0;
Factory.define('person', { 
  name: function(cb) { cb('Jack - ' + _nameIndex++ ); } // lazy attribute
  email: 'jack@mail.com' 
});

Factory.define('device', { 
  hash: 'hash1', 
  person_id: Factory.assoc('person', 'id') // simply Factory.assoc('person') for person object itself
});

Using Factories

Factory.create('person', { name: 'Fred', email: 'fred@mail.com' }, function(err, result) {
  // result is the saved person id
});

Factory.create('device', null, function(err, result) {
  // result is the saved device id
});

Clean Database

Factory.clean(function(err) {
  // data reloaded
});

License

Copyright (c) 2014 Max Claus Nunes. This software is licensed under the MIT License.

1.1.0

9 years ago

1.0.0

10 years ago

0.0.4

10 years ago

0.0.3

10 years ago

0.0.2

10 years ago

0.0.1

10 years ago