1 | 'use strict';
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 |
|
7 | var _delay = require('delay');
|
8 |
|
9 | var _delay2 = _interopRequireDefault(_delay);
|
10 |
|
11 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
12 |
|
13 | function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; }
|
14 |
|
15 | const keyvApiTests = (test, Keyv, store) => {
|
16 | test.beforeEach(_asyncToGenerator(function* () {
|
17 | const keyv = new Keyv({ store: store });
|
18 | yield keyv.clear();
|
19 | }));
|
20 |
|
21 | test.serial('.set(key, value) returns a Promise', t => {
|
22 | const keyv = new Keyv({ store: store });
|
23 | t.true(keyv.set('foo', 'bar') instanceof Promise);
|
24 | });
|
25 |
|
26 | test.serial('.set(key, value) resolves to value', (() => {
|
27 | var _ref2 = _asyncToGenerator(function* (t) {
|
28 | const keyv = new Keyv({ store: store });
|
29 | t.is((yield keyv.set('foo', 'bar')), 'bar');
|
30 | });
|
31 |
|
32 | return function (_x) {
|
33 | return _ref2.apply(this, arguments);
|
34 | };
|
35 | })());
|
36 |
|
37 | test.serial('.set(key, value) sets a value', (() => {
|
38 | var _ref3 = _asyncToGenerator(function* (t) {
|
39 | const keyv = new Keyv({ store: store });
|
40 | t.is((yield keyv.set('foo', 'bar')), 'bar');
|
41 | t.is((yield keyv.get('foo')), 'bar');
|
42 | });
|
43 |
|
44 | return function (_x2) {
|
45 | return _ref3.apply(this, arguments);
|
46 | };
|
47 | })());
|
48 |
|
49 | test.serial('.set(key, value, ttl) sets a value that expires', (() => {
|
50 | var _ref4 = _asyncToGenerator(function* (t) {
|
51 | const keyv = new Keyv({ store: store });
|
52 | t.is((yield keyv.set('foo', 'bar', 100)), 'bar');
|
53 | t.is((yield keyv.get('foo')), 'bar');
|
54 | yield (0, _delay2.default)(110);
|
55 | t.is((yield keyv.get('foo')), undefined);
|
56 | });
|
57 |
|
58 | return function (_x3) {
|
59 | return _ref4.apply(this, arguments);
|
60 | };
|
61 | })());
|
62 |
|
63 | test.serial('.get(key) returns a Promise', t => {
|
64 | const keyv = new Keyv({ store: store });
|
65 | t.true(keyv.get('foo') instanceof Promise);
|
66 | });
|
67 |
|
68 | test.serial('.get(key) resolves to value', (() => {
|
69 | var _ref5 = _asyncToGenerator(function* (t) {
|
70 | const keyv = new Keyv({ store: store });
|
71 | yield keyv.set('foo', 'bar');
|
72 | t.is((yield keyv.get('foo')), 'bar');
|
73 | });
|
74 |
|
75 | return function (_x4) {
|
76 | return _ref5.apply(this, arguments);
|
77 | };
|
78 | })());
|
79 |
|
80 | test.serial('.get(key) with nonexistent key resolves to undefined', (() => {
|
81 | var _ref6 = _asyncToGenerator(function* (t) {
|
82 | const keyv = new Keyv({ store: store });
|
83 | t.is((yield keyv.get('foo')), undefined);
|
84 | });
|
85 |
|
86 | return function (_x5) {
|
87 | return _ref6.apply(this, arguments);
|
88 | };
|
89 | })());
|
90 |
|
91 | test.serial('.get(key) with falsey key resolves to value', (() => {
|
92 | var _ref7 = _asyncToGenerator(function* (t) {
|
93 | const keyv = new Keyv({ store: store });
|
94 | yield keyv.set('foo', false);
|
95 | t.is((yield keyv.get('foo')), false);
|
96 | });
|
97 |
|
98 | return function (_x6) {
|
99 | return _ref7.apply(this, arguments);
|
100 | };
|
101 | })());
|
102 |
|
103 | test.serial('.delete(key) returns a Promise', t => {
|
104 | const keyv = new Keyv({ store: store });
|
105 | t.true(keyv.delete('foo') instanceof Promise);
|
106 | });
|
107 |
|
108 | test.serial('.delete(key) resolves to true', (() => {
|
109 | var _ref8 = _asyncToGenerator(function* (t) {
|
110 | const keyv = new Keyv({ store: store });
|
111 | yield keyv.set('foo', 'bar');
|
112 | t.is((yield keyv.delete('foo')), true);
|
113 | });
|
114 |
|
115 | return function (_x7) {
|
116 | return _ref8.apply(this, arguments);
|
117 | };
|
118 | })());
|
119 |
|
120 | test.serial('.delete(key) with nonexistent key resolves to false', (() => {
|
121 | var _ref9 = _asyncToGenerator(function* (t) {
|
122 | const keyv = new Keyv({ store: store });
|
123 | t.is((yield keyv.delete('foo')), false);
|
124 | });
|
125 |
|
126 | return function (_x8) {
|
127 | return _ref9.apply(this, arguments);
|
128 | };
|
129 | })());
|
130 |
|
131 | test.serial('.delete(key) deletes a key', (() => {
|
132 | var _ref10 = _asyncToGenerator(function* (t) {
|
133 | const keyv = new Keyv({ store: store });
|
134 | yield keyv.set('foo', 'bar');
|
135 | t.is((yield keyv.delete('foo')), true);
|
136 | t.is((yield keyv.get('foo')), undefined);
|
137 | });
|
138 |
|
139 | return function (_x9) {
|
140 | return _ref10.apply(this, arguments);
|
141 | };
|
142 | })());
|
143 |
|
144 | test.serial('.clear() returns a Promise', t => {
|
145 | const keyv = new Keyv({ store: store });
|
146 | t.true(keyv.clear() instanceof Promise);
|
147 | });
|
148 |
|
149 | test.serial('.clear() resolves to undefiend', (() => {
|
150 | var _ref11 = _asyncToGenerator(function* (t) {
|
151 | const keyv = new Keyv({ store: store });
|
152 | t.is((yield keyv.clear()), undefined);
|
153 | yield keyv.set('foo', 'bar');
|
154 | t.is((yield keyv.clear()), undefined);
|
155 | });
|
156 |
|
157 | return function (_x10) {
|
158 | return _ref11.apply(this, arguments);
|
159 | };
|
160 | })());
|
161 |
|
162 | test.serial('.clear() deletes all key/value pairs', (() => {
|
163 | var _ref12 = _asyncToGenerator(function* (t) {
|
164 | const keyv = new Keyv({ store: store });
|
165 | yield keyv.set('foo', 'bar');
|
166 | yield keyv.set('fizz', 'buzz');
|
167 | yield keyv.clear();
|
168 | t.is((yield keyv.get('foo')), undefined);
|
169 | t.is((yield keyv.get('fizz')), undefined);
|
170 | });
|
171 |
|
172 | return function (_x11) {
|
173 | return _ref12.apply(this, arguments);
|
174 | };
|
175 | })());
|
176 |
|
177 | test.after.always(_asyncToGenerator(function* () {
|
178 | const keyv = new Keyv({ store: store });
|
179 | yield keyv.clear();
|
180 | }));
|
181 | };
|
182 |
|
183 | exports.default = keyvApiTests; |
\ | No newline at end of file |