UNPKG

671 BJavaScriptView Raw
1import test from 'ava';
2import keyvTestSuite from 'keyv-test-suite';
3import Keyv from 'keyv';
4import KeyvSql from 'this';
5
6import sqlite3 from 'sqlite3';
7import pify from 'pify';
8
9class TestSqlite extends KeyvSql {
10 constructor() {
11 const opts = {
12 dialect: 'sqlite',
13 db: 'test/testdb.sqlite'
14 };
15
16 opts.connect = () => new Promise((resolve, reject) => {
17 const db = new sqlite3.Database(opts.db, err => {
18 if (err) {
19 reject(err);
20 } else {
21 db.configure('busyTimeout', 30000);
22 resolve(db);
23 }
24 });
25 })
26 .then(db => pify(db.all).bind(db));
27
28 super(opts);
29 }
30}
31
32const store = () => new TestSqlite();
33keyvTestSuite(test, Keyv, store);