devtools-0.1.0: src/Devtools.hs
module Devtools
( Config(..)
, Target(..)
, defaultConfig
, defaultMain
, main
, testTree
)
where
import Devtools.Config
import Devtools.Prelude
import System.IO (putStrLn)
import qualified Devtools.Dependencies as Dependencies
import qualified Devtools.HLint as HLint
import qualified Test.Tasty as Tasty
defaultConfig :: Config
defaultConfig = Config
{ hlintArguments = []
, targets = []
}
defaultMain :: IO ()
defaultMain = main defaultConfig
main :: Config -> IO ()
main config = do
putStrLn empty
Tasty.defaultMain =<< testTree config
testTree :: Config -> IO Tasty.TestTree
testTree Config{..} = do
filename <- Dependencies.getFilename
pure $ Tasty.testGroup
"devtools"
[ Dependencies.testTree filename targets
, HLint.testTree hlintArguments
]