Hclip-3.0.0.0: tests/Tasty.hs
import Test.Tasty
import Test.Tasty.HUnit
import System.Hclip
main = defaultMain tests
tests :: TestTree
tests = testGroup "Tests" [unitTests]
unitTests = testGroup "Unit tests"
[ testCase "Clear Clipboard" $ do
setClipboard "Haskell"
clearClipboard
contents <- getClipboard
contents @?= ""
, testCase "Set Clipboard" $ do
clearClipboard
setClipboard "Haskell"
contents <- getClipboard
contents @?= "Haskell"
, testCase "Get Clipboard" $ do
setClipboard "Haskell"
contents <- getClipboard
contents @?= "Haskell"
, testCase "Modify Clipboard" $ do
let f = reverse
s = "Haskell"
setClipboard s
modifyClipboard_ f
contents <- getClipboard
contents @?= (f s)
, testCase "Modify Clipboard and return new contents" $ do
let f = reverse
s = "Haskell"
setClipboard s
contents <- modifyClipboard f
contents @?= f s
]