/!\ This is still a work in progress, some feature might change as things unfold during the development.
Utility to generate fake data based a defined schema. The schema syntax is inspired by the EdgeDB data model syntax.
User will define the schema, a .sdl
as follows;
model test_data {
col1: int(1 -> 100),
col2: str {
default := one_of('my_name', 'another_str')
},
col3: currency(1 until 200) {
provider := @currency,
default := '$3.40'
},
col4: array<str> {
providers := [ @name, @business ],
default := many_of('s1', 's2', 's3'),
maxlength := 10
},
col5: {datetime|date},
col6: uuid,
configuration {
lines := 1_000,
format := csv
description := "Lorem ipsum ipsum..."
}
}
The supported types are as follows;
int
orint(0 until 10) or int(0 -> 10)
: where0 until 10
represents the required rannge that the generated number must not exceedfloat(0 until 10)
: floating point numberstr
: a combination of alphanumeric charactersbool
: atrue
orfalse
uuid
: this represents auuid
array<str|int|float>
: array of scalar types. It should be noted that arrays cannot contain other arrayscurrency
orcurrency(0..10)
: currency value. Also, when a boud e.g. (0..10) is specified, the generator only generates currency within this given range.date|datetime
: date and datetime field
It should be noted that arrays cannot contain other arrays.