Useful tool to generate data & tests
Project description
PGen provides generating of data and tests with given format (numbers, string, graphs, etc). PGEN IS STILL IN ACTIVE DEVELOPMENT AND CONTAINS BUGS. If you find a bug please file a report in the issues section.
Features:
Input format is JSON-text or object
Unlimited depth of data
Pure python without dependencies
Basic types generation (int, double, string)
Generation of complex types (graph, tree, container)
Installation:
pip install PGen
Documentation:
Basic types:
int
double
string
Complex types:
pair
container
array
tree
graph
Will be extended soon…
Examples:
Typical usage often looks like this:
#!/usr/bin/env python from pgen.generator import Generator data_description = { 'seed': 42, 'count': 3, 'format': { 'name': 'N', 'type': 'int', 'from': 10, 'to': 100 }, 'output': { 'type': 'file', 'format': 'tests/{0:03d}.dat', 'start_index': 3 } } generator = Generator(data_description) generator.write()
Using variable name:
#!/usr/bin/env python from pgen.generator import Generator data_description = { 'seed': 42, 'count': 3, 'format': { 'type': 'container', 'elements': [ {'name': 'n', 'type': 'int', 'from': 3, 'to': 15}, { 'type': 'array', 'length': 'n', 'subelement': { 'type': 'int', 'from': 0, 'to': 1 } } ] }, 'output': { 'type': 'file', 'format': 'tests/y_{0:03d}.dat', 'start_index': 3 } } generator = Generator(data_description) generator.write()
String patterns:
#!/usr/bin/env python from pgen.generator import Generator data_description = { 'seed': 42, 'count': 3, 'format': { 'type': 'string', 'length': 32, 'patterns': ['A-B', 'a-b'] }, 'output': { 'type': 'file', 'format': 'test/{0:03d}_out.dat', 'start_index': 3 } } generator = Generator(data_description) generator.write()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file PGen-0.2.1.zip
.
File metadata
- Download URL: PGen-0.2.1.zip
- Upload date:
- Size: 18.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
f71b6a0f6c51c518e6ce2295f19b82f9687bfceb6f9f9be4376203ee4afdf90c
|
|
MD5 |
4d1f9177e5b1fb8bab01edcb7ed1867e
|
|
BLAKE2b-256 |
3c683cd7faa8bc9b060eea452c5d6f27919dfb664cc4d1259998718a2360e05c
|