freesound-0.3.0: test/Sound/Freesound/SearchSpec.hs
{-# LANGUAGE OverloadedStrings #-}
module Sound.Freesound.SearchSpec (spec) where
import Data.Default (def)
import Sound.Freesound
import Sound.Freesound.Search
import qualified Sound.Freesound.Sound as Sound
import Sound.Freesound.Test
import Test.Hspec
spec :: Spec
spec = do
describe "search" $ do
it "searches" $ do
let p s = Sound.username s == "k0s"
&& Sound.name s == "Spiffy Spank"
fs (anySatisfy p =<< search_ (include "spank")) `shouldReturn` True
it "filters by user name" $ do
let p s = Sound.username s == "k0s"
fs (allSatisfy p =<< search def def (username "k0s") (include "spank")) `shouldReturn` True
it "paginates" $ do
l <- fs $ search (Pagination 0 1) def def ""
length (elems l) `shouldBe` 1