All Projects → EranBoudjnah → RandomGenKt

EranBoudjnah / RandomGenKt

Licence: MIT license
Kotlin port of RandomGen

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to RandomGenKt

randomdata
TYPO3 extensions to generate new random data or replace existing data with random data
Stars: ✭ 14 (-50%)
Mutual labels:  random, random-generator
relude-random
Composable random generators based on the PCG paper
Stars: ✭ 15 (-46.43%)
Mutual labels:  random, random-generation
datagen
Java lib that generates random data (numbers, strings, dates) - mostly to facilitate Randomized Testing.
Stars: ✭ 56 (+100%)
Mutual labels:  random, random-generation
random
Random data generator AKA faker
Stars: ✭ 14 (-50%)
Mutual labels:  random, random-generator
Random compat
PHP 5.x support for random_bytes() and random_int()
Stars: ✭ 7,950 (+28292.86%)
Mutual labels:  random, random-generation
jRand
A Java library to generate random data for all sorts of things. Java random data faker
Stars: ✭ 27 (-3.57%)
Mutual labels:  random, random-generation
strgen
A Python module for a template language that generates randomized data
Stars: ✭ 34 (+21.43%)
Mutual labels:  random, random-generation
Linear Feedback Shift Register
Linear Feedback Shift Register
Stars: ✭ 34 (+21.43%)
Mutual labels:  random-generation, random-generator
Mir Random
Advanced Random Number Generators
Stars: ✭ 30 (+7.14%)
Mutual labels:  random, random-generation
Rando.js
The world's easiest, most powerful random function.
Stars: ✭ 659 (+2253.57%)
Mutual labels:  random, random-generation
Markovnamegenerator
✒️ Markov process-based procedural name and word generator
Stars: ✭ 300 (+971.43%)
Mutual labels:  random, random-generation
Randomkit
Random data generation in Swift
Stars: ✭ 1,458 (+5107.14%)
Mutual labels:  random, random-generation
Easy Random
The simple, stupid random Java beans/records generator
Stars: ✭ 1,095 (+3810.71%)
Mutual labels:  random, random-generation
Generatedata
A powerful, feature-rich, random test data generator.
Stars: ✭ 1,883 (+6625%)
Mutual labels:  random, random-generation
Rrt Algorithms
n-dimensional RRT, RRT* (RRT-Star)
Stars: ✭ 195 (+596.43%)
Mutual labels:  random
rainbow-bash-prompt
Make your bash prompt dynamically and randomly rainbow
Stars: ✭ 49 (+75%)
Mutual labels:  random
Insight
🔮 Easy access to model information for various model objects
Stars: ✭ 197 (+603.57%)
Mutual labels:  random
Qcheck
QuickCheck inspired property-based testing for OCaml.
Stars: ✭ 194 (+592.86%)
Mutual labels:  random
jsrand
A seeded pseudo-random number generator for JavaScript.
Stars: ✭ 19 (-32.14%)
Mutual labels:  random
Python Gift Exchange
pyge: Holiday Gift Exchange Picker
Stars: ✭ 252 (+800%)
Mutual labels:  random

RandomGenKt

Initialize instances of any class with generated data.

Version - RandomGenKt Version - DataSource Build Status License

Example

This is a Kotlin port of the Java library designed to generate random instances of any class.

This is great for demoing your app with interesting content, manually testing it with varying data, and even populating it with smart, random generated data in production.

Install

In your build.gradle, add the following:

dependencies {
    implementation("com.mitteloupe.randomgenkt:randomgenkt:1.0.1")
}

To include the default data generators, also include

dependencies {
    implementation("com.mitteloupe.randomgenkt:randomgenkt.datasource:1.0.1")
}

Usage

Kotlin

val randomGen = RandomGen.Builder<ObjectClass>()
	.ofClass<ObjectClass>()
	.withField("id")
	.returningSequentialInteger()
	.withField("uuid")
	.returningUuid()
	.build()

Java

RandomGen<ObjectClass> randomGen = new RandomGen.Builder<ObjectClass>()
	.ofClass(ObjectClass.class)
	.withField("id")
	.returningSequentialInteger()
	.withField("uuid")
	.returningUuid()
	.build();

This will create a RandomGen instance producing ObjectClass instances with sequential IDs and random UUIDs.

To use the newly generated RandomGen, simply call:

Kotlin

val instance = randomGen.generate()

Java

ObjectClass instance = randomGen.generate();

What's New?

The Kotlin version adds the following:

  • Support for fields with lazy init
  • Lambdas
  • ofClass<Type>() instead of ofClass(Type::class.java)

Created by

Eran Boudjnah

License

MIT © Eran Boudjnah

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].