Skip to content

Commit f9946d9

Browse files
committed
Use buffer list and fix tests
1 parent fe39f5a commit f9946d9

File tree

4 files changed

+20
-26
lines changed

4 files changed

+20
-26
lines changed

main/lib/artwork-cache/index.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ var path = require('path')
44
var pump = require('pump')
55
var crypto = require('crypto')
66
var mkdirp = require('mkdirp')
7-
var { artwork, fromBuffer } = require('./util')
7+
var { artwork } = require('./util')
8+
var BufferList = require('bl')
89

910
// var configPath = (electron.app || electron.remote.app).getPath('userData')
1011
// var artworkCachePath = path.join(configPath, 'artwork-cache')
@@ -37,7 +38,7 @@ class ArtworkCache {
3738
return cb(null, blobPath)
3839
} else {
3940
var writeStream = self._blobs.createWriteStream()
40-
pump(fromBuffer(buff), writeStream, function (err) {
41+
pump((new BufferList()).append(buff), writeStream, function (err) {
4142
if (err) return cb(err)
4243
return self._blobs.resolve(writeStream.key, cb)
4344
})

main/lib/artwork-cache/test.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
var test = require('tape')
2-
var {artwork, fromBuffer} = require('./util')
2+
var {artwork} = require('./util')
33
var path = require('path')
44
var concatStream = require('concat-stream')
55
var isBuffer = require('is-buffer')
@@ -8,6 +8,7 @@ var bufferEqual = require('buffer-equal')
88
var tmp = require('temporary-directory')
99
var ArtworkCache = require('./index.js')
1010
var testData = require('./test-data')
11+
var BufferList = require('bl')
1112

1213
test('get artwork from file', function (t) {
1314
artwork(testData.mp3WithArtwork, function (err, imageBuf) {
@@ -22,7 +23,8 @@ test('can stream buffers', function (t) {
2223

2324
function bufferTests (err, imageBuf) {
2425
t.error(err, 'got artwork buffer')
25-
var imageBufferStream = fromBuffer(imageBuf)
26+
var imageBufferStream = new BufferList()
27+
imageBufferStream.append(imageBuf)
2628
var concat = concatStream(gotPic)
2729
var streamedBuff
2830

main/lib/artwork-cache/util.js

Lines changed: 12 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,19 @@
1-
var from = require('from2')
21
var mm = require('music-metadata')
32
var get = require('lodash.get')
4-
5-
exports.fromBuffer = fromBuffer
6-
7-
function fromBuffer (buffer) {
8-
// TODO: Use https://github.com/rvagg/bl ?
9-
return from(function (size, next) {
10-
if (buffer.length <= 0) return next(null, null)
11-
var chunk = buffer.slice(0, size)
12-
buffer = buffer.slice(size)
13-
next(null, chunk)
14-
})
15-
}
3+
var fs = require('fs')
164

175
function metadata (path, cb) {
18-
mm.parseFile(path, {
19-
native: true,
20-
duration: true,
21-
skipCovers: false
22-
}).then(function (md) {
23-
return cb(null, md)
24-
}).catch(function (err) {
25-
return cb(err)
6+
fs.stat(path, function (err, stats) {
7+
if (err) return cb(err)
8+
mm.parseFile(path, {
9+
native: true,
10+
duration: true,
11+
skipCovers: false
12+
}).then(function (md) {
13+
return cb(null, md)
14+
}).catch(function (err) {
15+
return cb(err)
16+
})
2617
})
2718
}
2819

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
],
3535
"dependencies": {
3636
"@bret/truthy": "^1.0.1",
37+
"bl": "^1.2.1",
3738
"choo": "^6.0.0",
3839
"choo-devtools": "^1.5.0",
3940
"choo-log": "^7.2.1",
@@ -53,7 +54,6 @@
5354
"flush-write-stream": "^1.0.2",
5455
"folder-walker": "^3.0.0",
5556
"format-duration": "^1.0.0",
56-
"from2": "^2.3.0",
5757
"fy-shuffle": "^1.0.0",
5858
"global": "^4.3.2",
5959
"lodash.debounce": "^4.0.8",

0 commit comments

Comments
 (0)