@infinito/id3
Version:
ID3 Tag Reader/Writer
33 lines (30 loc) • 1.06 kB
JavaScript
import assert from 'assert';
import path from 'path';
import findFiles from '@infinito/get-files';
import genID3 from '../src/gen.js';
import getID3 from '../src/get.js';
import getTagBuffer from '../src/get.tagbuf.js';
describe('genID3', function () {
it('should throw a TypeError when given something not an instance of id3Tag', function () {
assert.throws(() => genID3(""),TypeError);
});
const filePaths = findFiles(path.resolve(__dirname,'..','music'),".mp3");
if(filePaths.length==0) {
assert.fail('No music files in /music directory; can\'t test genID3');
}
for(let i=0;i<filePaths.length;i++) {
it(`should correctly generate tags for ${filePaths[i]}`,function () {
try {
var buf = getTagBuffer(filePaths[i]);
} catch(error) {
assert.fail(`getTagBuffer failed: ${error}`);
}
try {
var tags = getID3(filePaths[i],buf);
} catch(error) {
assert.fail(`getID3 failed: ${error}`);
}
assert.doesNotThrow(() => genID3(tags),Error,`getID3 failed for ${filePaths[i]}`);
});
}
});