Skip to content
This repository was archived by the owner on Aug 11, 2021. It is now read-only.

Commit 94d0b12

Browse files
committed
Adds tests for blocks and service.
1 parent afe3405 commit 94d0b12

File tree

2 files changed

+85
-6
lines changed

2 files changed

+85
-6
lines changed

test/block-service-test.js

Lines changed: 78 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ module.exports = (repo) => {
1515
done()
1616
})
1717

18-
it('store a block', (done) => {
18+
it('store and get a block', (done) => {
1919
const b = new Block('A random data block')
2020
bs.addBlock(b, (err) => {
2121
expect(err).to.not.exist
@@ -28,7 +28,7 @@ module.exports = (repo) => {
2828
})
2929
})
3030

31-
it('store a block, with custom extension', (done) => {
31+
it('store and get a block, with custom extension', (done) => {
3232
const b = new Block('A random data block', 'ext')
3333
bs.addBlock(b, (err) => {
3434
expect(err).to.not.exist
@@ -44,7 +44,8 @@ module.exports = (repo) => {
4444
it('get a non existent block', (done) => {
4545
const b = new Block('Not stored')
4646
bs.getBlock(b.key, (err, block) => {
47-
expect(err).to.exist
47+
expect(err).to.not.exist
48+
expect(block).to.not.exist
4849
done()
4950
})
5051
})
@@ -60,28 +61,92 @@ module.exports = (repo) => {
6061
})
6162
})
6263

64+
it('addBlocks: bad invocation', (done) => {
65+
const b1 = new Block('1')
66+
67+
bs.addBlocks(b1, (err) => {
68+
expect(err).to.be.an('error')
69+
done()
70+
})
71+
})
72+
73+
it('getBlock: bad invocation', (done) => {
74+
bs.getBlock(null, (err) => {
75+
expect(err).to.be.an('error')
76+
done()
77+
})
78+
})
79+
80+
it('getBlocks: bad invocation', (done) => {
81+
bs.getBlocks(null, 'protobuf', (err) => {
82+
expect(err).to.be.an('error')
83+
done()
84+
})
85+
})
86+
87+
it('get many blocks', (done) => {
88+
const b1 = new Block('1')
89+
const b2 = new Block('2')
90+
const b3 = new Block('3')
91+
92+
bs.addBlocks([b1, b2, b3], (err) => {
93+
expect(err).to.not.exist
94+
95+
bs.getBlocks([b1.key, b2.key, b3.key], (err, blocks) => {
96+
expect(err).to.not.exist
97+
expect(blocks).to.have.lengthOf(3)
98+
done()
99+
})
100+
})
101+
})
102+
103+
it('get many blocks: partial success', (done) => {
104+
const b1 = new Block('a1')
105+
const b2 = new Block('a2')
106+
const b3 = new Block('a3')
107+
108+
bs.addBlocks([b1, b3], (err) => {
109+
expect(err).to.not.exist
110+
111+
bs.getBlocks([b1.key, b2.key, b3.key], (err, blocks) => {
112+
expect(err).to.not.exist
113+
expect(blocks).to.have.lengthOf(2)
114+
done()
115+
})
116+
})
117+
})
118+
63119
it('delete a block', (done) => {
64120
const b = new Block('Will not live that much')
65121
bs.addBlock(b, (err) => {
66122
expect(err).to.not.exist
67123
bs.deleteBlock(b.key, (err) => {
68124
expect(err).to.not.exist
69125
bs.getBlock(b.key, (err, block) => {
70-
expect(err).to.exist
126+
expect(err).to.not.exist
127+
expect(block).to.not.exist
71128
done()
72129
})
73130
})
74131
})
75132
})
76133

134+
it('deleteBlock: bad invocation', (done) => {
135+
bs.deleteBlock(null, (err) => {
136+
expect(err).to.be.an('error')
137+
done()
138+
})
139+
})
140+
77141
it('delete a block, with custom extension', (done) => {
78142
const b = new Block('Will not live that much', 'ext')
79143
bs.addBlock(b, (err) => {
80144
expect(err).to.not.exist
81145
bs.deleteBlock(b.key, 'ext', (err) => {
82146
expect(err).to.not.exist
83147
bs.getBlock(b.key, 'ext', (err, block) => {
84-
expect(err).to.exist
148+
expect(err).to.not.exist
149+
expect(block).to.not.exist
85150
done()
86151
})
87152
})
@@ -101,10 +166,17 @@ module.exports = (repo) => {
101166
const b2 = new Block('2')
102167
const b3 = new Block('3')
103168

104-
bs.deleteBlocks([b1, b2, b3], (err) => {
169+
bs.deleteBlocks([b1, b2, b3], 'data', (err) => {
105170
expect(err).to.not.exist
106171
done()
107172
})
108173
})
174+
175+
it('deleteBlocks: bad invocation', (done) => {
176+
bs.deleteBlocks(null, (err) => {
177+
expect(err).to.be.an('error')
178+
done()
179+
})
180+
})
109181
})
110182
}

test/block.spec.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,13 @@ describe('block', () => {
1212
expect(b.extension).to.be.eql('data')
1313
})
1414

15+
it('create /wo new', () => {
16+
const b = Block('random-data')
17+
expect(b.key).to.exist
18+
expect(b.data).to.exist
19+
expect(b.extension).to.be.eql('data')
20+
})
21+
1522
it('fail to create an empty block', () => {
1623
expect(() => new Block()).to.throw()
1724
})

0 commit comments

Comments
 (0)