before(function () { factory = new Factory(); factory.setAdapter(adapter); factory.define('author', Author); factory.define('book', Book, { author_id: factory.assoc('author', 'id') }); });
before(function() { factory = new Factory(); factory.setAdapter(adapter); Parent = Model.extend({ tableName: 'test', children: function() { return this.hasMany(Child, 'parent_id'); } }); Child = Model.extend({ tableName: 'children', parent: function() { return this.belongsTo(Parent, 'parent_id'); } }); factory.define('parent', Parent); factory.define('child', Child, { parent_id: factory.assoc('parent', 'id') }); });
const chance = new Chance() BookshelfAdapter.prototype.build = (Model, props) => { return new Model(props) } BookshelfAdapter.prototype.save = (doc, Model, cb) => { const options = {method: 'insert'} return doc.save({}, options).nodeify(cb) } BookshelfAdapter.prototype.destroy = (doc, Model, cb) => { if (!doc.id) { return process.nextTick(cb) } return doc.destroy().nodeify(cb) } const factory = new Factory() factory.setAdapter(new BookshelfAdapter()) factory.chance = chance state(factory) toggle(factory) group(factory) login(factory) user(factory) module.exports = factory.promisify(Promise)