Skip to content

Commit

Permalink
feat(seed): apply transform on seed files
Browse files Browse the repository at this point in the history
  • Loading branch information
lykmapipo committed Jun 23, 2020
1 parent 80480c2 commit bdb2e82
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 3 deletions.
17 changes: 15 additions & 2 deletions src/seed.js
Original file line number Diff line number Diff line change
Expand Up @@ -385,7 +385,9 @@ export const applyTransformsOn = (seed, ...transformers) => {

// apply transform sequentially
forEach(transforms, (applyTransformOn) => {
transformed = applyTransformOn(transformed);
transformed = isFunction(applyTransformOn)
? applyTransformOn(transformed)
: mergeObjects(transformed);
});

// return transformed
Expand Down Expand Up @@ -936,14 +938,25 @@ export const seedFromSeeds = (optns, done) => {
data = undefined,
filter,
transform, // TODO: apply transformers
transformers = [],
} = mergeObjects(optns);

// merge transform & transformers
const doTransform = (seed) => {
const merged = mergeObjects(seed);
const appliedTransformers = compact(
[].concat(transformers).concat(transform)
);
return applyTransformsOn(merged, ...appliedTransformers);
};

// do: seed data to model if seeds exists
const Model = model(modelName);
const canSeed = Model && isFunction(Model.seed);
if (canSeed) {
// filter, transform & seed
return Model.seed({ data, filter, transform }, (error, results) => {
const options = { data, filter, transform: doTransform };
return Model.seed(options, (error, results) => {
// reply with errors
if (throws) {
return done(error, results);
Expand Down
2 changes: 1 addition & 1 deletion test/unit/seed.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ describe('seed from seeds', () => {
});
});

describe.only('common', () => {
describe('common', () => {
const { BASE_PATH, DATA_PATH, SEED_PATH } = process.env;

before(() => {
Expand Down

0 comments on commit bdb2e82

Please sign in to comment.