lacymorrow/album-art

View on GitHub
test.js

Summary

Maintainability
C
7 hrs
Test Coverage
'use strict'
const test = require( 'ava' )
const albumArt = require( './index' )
 
test( 'returns a url', async t => {
 
t.plan( 1 )
 
const response = await albumArt( 'cher' )
t.is( response.indexOf( 'http' ), 0, 'response is a URL' )
 
} )
 
Similar blocks of code found in 2 locations. Consider refactoring.
test( 'specifying a size returns a different url', async t => {
 
t.plan( 1 )
 
const response1 = await albumArt( 'cher' )
const response2 = await albumArt( 'cher', {size: 'small'} )
t.not( response1, response2, 'small and large size are different URLs' )
 
} )
 
Similar blocks of code found in 2 locations. Consider refactoring.
test( 'album vs artist art return different urls', async t => {
 
t.plan( 1 )
 
const response1 = await albumArt( 'cher' )
const response2 = await albumArt( 'cher', {album: 'i got you babe'} )
t.not( response1, response2, 'album seach returns different URL' )
 
} )
 
Similar blocks of code found in 2 locations. Consider refactoring.
test( 'handles invalid query', async t => {
 
t.plan( 1 )
 
try {
 
console.log( await albumArt( 'asasdgsdgazsdgfzsdf' ) )
 
} catch ( e ) {
 
t.is( e instanceof Error, true, 'response is an error' )
 
}
 
} )
 
Similar blocks of code found in 2 locations. Consider refactoring.
test( 'handles invalid query #2', async t => {
 
t.plan( 1 )
 
try {
 
console.log( await albumArt( '' ) )
 
} catch ( e ) {
 
t.is( e instanceof Error, true, 'response is an error' )
 
}
 
} )
 
test( 'callback returns a url', async t => {
 
t.plan( 1 )
 
await albumArt( 'cher', ( _err, res ) => {
 
t.is( res.indexOf( 'http' ), 0, 'response is a URL' )
 
} )
 
} )
 
test( 'can handle special characters in album name', async t => {
 
t.plan( 1 )
 
const response = await albumArt( 'kaytranada', {album: '99.9%'} )
t.is( response.indexOf( 'http' ), 0, 'response is a URL' )
 
} )