Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Generate test data from mongoose model

I have this model in nodejs app

var mongoose = require('mongoose'),
    Schema = mongoose.Schema;

var ServiceSchema = new Schema({
    Taxy: {
        type: mongoose.Schema.Types.ObjectId,
        ref: 'Taxy',
        required: 'Taxy cannot be blank'
    },
    User: {
        type: mongoose.Schema.Types.ObjectId,
        ref: 'User',
        required: 'User cannot be blank'
    },
    Servicio: String,
    Minutos: Number,
    Costo: Number, 
    Desc: String,
    From: String, 
    To: String,
    created: {
        type: Date,
        default: Date.now
    }
});

mongoose.model('Service', ServiceSchema);

I have surfed for a couple of days and I have not found a framework to generate random data from a model service, something like

var Service = require('mongoose').model('Admin').schema;
var jsondata = generateRandomeFromModel(Service)
like image 530
lorbrito Avatar asked Feb 19 '26 00:02

lorbrito


1 Answers

You can use mongoose-fakery module to generate test data

Example:

var mongoose = require('mongoose')
  , Schema = mongoose.Schema;

var UserSchema = new Schema({
    name: String,
    surname: String
});

mongoose.model('User', UserSchema);
In your tests or fixture files:

var fakery = require('mongoose-fakery');

fakery.fake('user', mongoose.model('User'), {
    name: 'john',
    surname: 'doe'
});

You can go with complete reference here

like image 54
abdulbarik Avatar answered Feb 20 '26 18:02

abdulbarik



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!