UNPKG

2.39 kBJavaScriptView Raw
1var assert = require('assert');
2var path = require('path');
3var Registry = require('../lib/registry');
4var Query = require('calypso').Query;
5var memdown = require('memdown');
6var levelup = require('levelup');
7
8var dbPath = path.join(__dirname, './.peers');
9
10describe('Registry Compaction', function() {
11 describe('custom database', function() {
12 var db, opts;
13
14 beforeEach(function(done) {
15 db = levelup(dbPath, { db: memdown });
16 opts = { db: db, collection: 'peers' };
17 done();
18 });
19
20 afterEach(function(done) {
21 if (db) {
22 db.close(done);
23 }
24 });
25
26 it('should not have a compactor property with a custom db.', function() {
27 var reg = new Registry(opts);
28 assert.ok(!reg.compactor);
29 });
30
31 });
32
33 describe('standard medea database', function() {
34 var reg;
35 var opts = {
36 collection: 'peer',
37 path: './.peers'
38 };
39
40 beforeEach(function(done) {
41 reg = new Registry(opts);
42 done();
43 });
44
45 afterEach(function(done) {
46 if(reg.db) {
47 reg.close(done);
48 } else {
49 done();
50 }
51 });
52
53 it('should have a compactor property without a custom db.', function() {
54 assert.ok(reg.compactor);
55 });
56
57 it('should call open before compact.', function(done) {
58 var compactor = {};
59
60 compactor.open = function(path, cb) {
61 assert.ok(path);
62 assert.ok(cb);
63 done();
64 };
65
66 reg.compactor = compactor;
67 reg._init(function(e) {
68
69 });
70 });
71
72 it('should call compact.', function(done) {
73 var compactor = {};
74
75 compactor.open = function(path, cb) {
76 assert.ok(path);
77 assert.ok(cb);
78 done();
79 };
80
81 compactor.compact = function(cb) {
82 assert.ok(cb);
83 done();
84 };
85
86 reg.compactor = compactor;
87 reg._init(function(e) {
88
89 });
90 });
91
92 it('should call close.', function(done) {
93 var compactor = {};
94
95 compactor.open = function(path, cb) {
96 assert.ok(path);
97 assert.ok(cb);
98 done();
99 };
100
101 compactor.compact = function(cb) {
102 assert.ok(cb);
103 done();
104 };
105
106 compactor.close = function(cb) {
107 assert.ok(cb);
108 done();
109 };
110
111 reg.compactor = compactor;
112 reg._init(function(e) {
113
114 });
115 });
116 });
117});