combine.fm/test/services/deezer.js

64 lines
1.9 KiB
JavaScript

import "should";
import * as deezer from "../../lib/services/deezer/index.js";
describe("Deezer", () => {
describe("lookupId", () => {
it("should find album by ID", async function test() {
const result = await deezer.lookupId("302127", "album");
result.name.should.equal("Discovery");
});
it("should find track by ID", async function() {
const result = await deezer.lookupId("3135554", "track");
result.name.should.equal("Aerodynamic");
});
});
describe("search", () => {
it("should find album by search", async function() {
const result = await deezer.search({
type: "album",
artist: { name: "Jamie xx" },
name: "In Colour"
});
result.name.should.startWith("In Colour");
});
it("should find album with various artists by search", async function() {
const result = await deezer.search({
type: "album",
artist: { name: "Various Artists" },
name: "Rocket League x Monstercat Vol. 6"
});
result.name.should.equal("Rocket League x Monstercat Vol. 6");
});
it("should find track by search", async function() {
const result = await deezer.search({
type: "track",
artist: { name: "Deftones" },
albumName: "Deftones",
name: "Hexagram"
});
result.name.should.equal("Hexagram");
});
});
describe("lookupUrl", () => {
describe("parseUrl", () => {
it("should parse album url into ID", async function() {
const result = await deezer.parseUrl(
"http://www.deezer.com/album/302127"
);
result.id.should.equal(302127);
});
it("should parse track url into ID", async function() {
const result = await deezer.parseUrl(
"http://www.deezer.com/track/3135554"
);
result.id.should.equal(3135554);
});
});
});
});