I have used [insert lib here] and you can't guess what I have found

Maurizio's corner

Generate/Validate

var generate = require('occamsrazor-generate');

var generator = generate({ a: 1, b: 2 });
generator(); // returns { a: 1, a: 2 }

Generate

var generate = require('occamsrazor-generate');


var genUser = generate({
  title: /(mr|ms|mrs)/,
  name: /[A-Z][a-z]{4,10} [A-Z][a-z]{4,10}/
});

genUser(); // returns { title: 'mr', name: 'Ekdcsrlyl Cfrpsugx' }

Generate

var chance = require('occamsrazor-generate/extra/chance')

var genUser = generate({
  firstName: chance('first'),
  lastName: chance('last'),
  age: chance('age')
});

genUser();
// I got: { firstName: 'Ruby', lastName: 'Delgado', age: 58 }

Generate

var arrayOf = require('occamsrazor-generate/extra/arrayOf');

var genUsers = arrayOf(genUser, { minLen: 10, maxLen: 20 });

genUsers();
// I got: [
  { firstName: 'Ruby', lastName: 'Delgado', age: 58 },
  { firstName: 'Paula', lastName: 'Rossi', age: 23 },
    ...
] 

Generate

var match = require('occamsrazor-match');

var isFive = match(5);

isFive(4); //false
isFive(5); //true

Validate

var isNumber = require('occamsrazor-match/extra/isNumber');

var isPointOnXaxis = match({ x : 0, y: isNumber });

isPointOnXaxis({ x: 0, y: 10 }); //true

Validate

var isPoint = match({ x : isNumber, y: isNumber });

var isSquare = match([isPoint, isPoint, isPoint, isPoint]);

var isTriangle = match([isPoint, isPoint, isPoint]);

var containsSquareAndTriangle = {
  triangle: isTriangle,
  square: isSquare,
};

Validate

generate/validate

By Maurizio Lupo

generate/validate

  • 495