0.2.5 • Published 8 years ago

dynafixtures v0.2.5

Weekly downloads
-
License
ISC
Repository
-
Last release
8 years ago

Dynafixtures

Fixtures for DynamoDB using DynamoDB Local.

This package is meant to quickly implement fixtures for DynamoDB. Particularly handy if you want to unit test code that requires AWS DynamoDB.

Setup and teardown

Make sure you have DynamoDB running locally. This is as easy as downloading a file and then running a command. See the AWS documentation for more info.

Install the package:

npm install --save-dev dynafixtures

Create fixtures files for tables and records. See the test folder for examples (there are just JSONs for the correct DynamoDB API functions). Dynafixtures uses the createTable and batchWriteItem API calls of the AWS DynamoDB API.

The easiest way to start is to use the setup() and teardown() functions. setup() is shorthand for initialize() and fixtures(), e.g. create tables and records in one go.

var tables = process.cwd() + '/test_tables.json';
var fixtures = [
    process.cwd() + '/Forum_fixture.json',
    process.cwd() + '/fixture2.json'
];
var port = 4567; // Defaults to 4567 if `typeof port` is not a number
  
dynafixtures.setup(tables, fixtures, port, function(err){
    if (err) {
        //Handle error
    }
);

When the tests are completed, run:

dynafixtures.teardown(function(err){
    if (err) {
    // Handle error
    }
});

Using DynamoDB during tests

Between setup and teardown (which you should do before and after each test, fits nicely in assert's before and after functions or). you can access the DynamoDB on your machine using this snippet:

var aws = require('aws-sdk');
var db = new aws.DynamoDB({
  'accessKeyId': 'a',
  'secretAccessKey':'b',
  'endpoint':'http://localhost:4567', // Your port here
  'region': 'eu-west-1'
});

// Now you can do DynamoDB calls using db.scan() or whatever.
// ...
0.2.5

8 years ago

0.2.4

8 years ago

0.2.3

8 years ago

0.2.2

8 years ago

0.2.1

8 years ago

0.2.0

8 years ago

0.1.1

8 years ago

0.1.0

8 years ago