1 | var utils = require('./utils')
|
2 | var backbeam = utils.backbeam()
|
3 | var assert = require('assert')
|
4 |
|
5 | require('./aws-mock')
|
6 |
|
7 | describe('Dynamo methods', () => {
|
8 |
|
9 | before(() => utils.init())
|
10 |
|
11 | it('#dynamoCreateTable', () => {
|
12 | var params = {
|
13 | name: 'users',
|
14 | hashKeyName: 'id',
|
15 | hashKeyType: 'string',
|
16 | rangeKeyName: 'created_at',
|
17 | rangeKeyType: 'number',
|
18 | readCapacity: 1,
|
19 | writeCapacity: 1,
|
20 | localIndexes: [],
|
21 | globalIndexes: [],
|
22 | }
|
23 | return backbeam.dynamoCreateTable(params)
|
24 | .then(() => backbeam.readConfig())
|
25 | .then((data) => {
|
26 | var table = backbeam._findTable(data, params)
|
27 | assert.deepEqual(table, {
|
28 | "name": "users",
|
29 | "hashKeyName": "id",
|
30 | "hashKeyType": "string",
|
31 | "rangeKeyName": "created_at",
|
32 | "rangeKeyType": "number",
|
33 | "readCapacity": 1,
|
34 | "writeCapacity": 1,
|
35 | "localIndexes": [],
|
36 | "globalIndexes": []
|
37 | })
|
38 | })
|
39 | })
|
40 |
|
41 | it('#dynamoEditTable', () => {
|
42 | var params = {
|
43 | name: 'users',
|
44 | hashKeyName: 'id',
|
45 | hashKeyType: 'string',
|
46 | rangeKeyName: 'created_at',
|
47 | rangeKeyType: 'number',
|
48 | readCapacity: 2,
|
49 | writeCapacity: 2,
|
50 | localIndexes: [],
|
51 | globalIndexes: [],
|
52 | }
|
53 | return backbeam.dynamoEditTable(params)
|
54 | .then(() => backbeam.readConfig())
|
55 | .then((data) => {
|
56 | var table = backbeam._findTable(data, params)
|
57 | assert.ok(table)
|
58 | assert.equal(table.readCapacity, 2)
|
59 | assert.equal(table.writeCapacity, 2)
|
60 | })
|
61 | })
|
62 |
|
63 | it('#dynamoDeleteTable', () => {
|
64 | var params = {
|
65 | name: 'users',
|
66 | }
|
67 | return backbeam.dynamoDeleteTable(params)
|
68 | .then(() => backbeam.readConfig())
|
69 | .then((data) => {
|
70 | var table = backbeam._findTable(data, params)
|
71 | assert.ok(!table)
|
72 | })
|
73 | })
|
74 |
|
75 | })
|