/!\ 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;
intorint(0 until 10) or int(0 -> 10): where0 until 10represents the required rannge that the generated number must not exceedfloat(0 until 10): floating point numberstr: a combination of alphanumeric charactersbool: atrueorfalseuuid: this represents auuidarray<str|int|float>: array of scalar types. It should be noted that arrays cannot contain other arrayscurrencyorcurrency(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.