1.3.0 • Published 9 years ago

cufflink v1.3.0

Weekly downloads
4
License
MIT
Repository
github
Last release
9 years ago

cufflink

A command tool to help generate seed data based on your object schema in your applications

Build Status Coverage Status

Cufflink is a simple npm package to help seed data for API tests. Cufflink will seed your databases and create a json file with the results for a consistent way to test your API.

  1. Describe your data scheme and dependencies through objects
  2. Add drivers for those objects
  3. Run following command
$ cufflink create your-object
$ cufflink teardown [optional seeded file path]

Highlights

  • Simple CLI
  • Determines what order to seed database depending on dependencies
  • Fully documented
  • Fully unit tested
  • Framework-agnostic

System Requirements

You need Node >= 5.0.0

Installation

$ npm install cufflink

Configuration

In order to use Cufflink, your directory structure must follow the specified structure:

root_directory/
    objects/
    drivers/

The objects directory will contain the schemas for your objects

Ex:

    {
        "type": "customer",
        "properties": {
            "fields": [
                {
                    "name": "id",
                    "type": "int"
                },
                {
                    "name": "customerId",
                    "type": "int"
                }
            ]
            "dependencies": [
                "customer"
            ]
        }
    }

The drivers directory will contain the drivers to persist your objects to your databases. Driver's names should be the same as the associated object

Ex: The cart object above should have a corresponding cart driver that resides in the drivers directory

Using the API

Use the Cufflink API directly in your programs like this:

let cufflink = require('cufflink/api');

cufflink.create('measurement').then((result) => {
    cufflink.tearDown(result);
});

Cufflink also has a createSync feature that doesn't use Promises.

let objects = cufflink.createSync('measurement');

Testing

$ npm test

Contributing

Contributions are welcome and will be fully credited. Please see CONTRIBUTING and CONDUCT for details.

Security

If you discover any security related issues, please email admin@generationtux.com instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see LICENSE for more information.

1.3.0

9 years ago

1.2.2

10 years ago

1.2.0

10 years ago

1.1.1

10 years ago

1.0.0

10 years ago

0.0.35

10 years ago

0.0.34

10 years ago

0.0.31

10 years ago

0.0.29

10 years ago

0.0.28

10 years ago

0.0.27

10 years ago

0.0.26

10 years ago

0.0.25

10 years ago

0.0.24

10 years ago

0.0.23

10 years ago

0.0.22

10 years ago

0.0.21

10 years ago

0.0.2

10 years ago

0.0.1

10 years ago