danibram / mocker-data-generator

A simplified way to generate masive mock data based on a schema, you can use the awesome fake/random data generators like (FakerJs, ChanceJs, CasualJs and RandExpJs)
https://danibram.github.io/mocker-data-generator/
MIT License
428 stars 44 forks source link

mocker-data-generator is slow over period of time #30

Closed vmuthuprasad closed 7 years ago

vmuthuprasad commented 7 years ago

mocker-data-generator is becoming slow gradually and stops responding. following is part of my json schema.

          "field1": {
            static: schemaName 
          },
          "field2": {
            static: tableName
          } ,
          "field3": {
            faker: 'random.arrayElement(["I","U"])'  
          },
          "field4": {
              function: function(){
                  var date = new Date();
                  var str = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate() + ":" +  date.getHours() + ":" + date.getMinutes() + ":" + date.getSeconds() + "." + date.getMilliseconds();
                  return str;
              }
          },
          "field5": {
                function: function() {
                    var chars = '0123456789';
                    var length = 8;
                    var result = '';
                    for(var block = 0; block < 2; block++){
                        for (var i = length; i > 0; --i) result += chars[Math.round(Math.random() * (chars.length - 1))];
                        if(block != 1) result += '|'
                    }
                    return this.faker.random.arrayElement(["NULL",result])
                }

            },
          "field6": {
                function: function() {
                    var chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
                    var length = Math.round(Math.random() * 32);
                    var result = '';
                    for (var i = length; i > 0; --i) result += chars[Math.round(Math.random() * (chars.length - 1))];
                    return this.faker.random.arrayElement(["NULL",result])
                }

            }

what is wrong in this?