30 lines
		
	
	
		
			722 B
		
	
	
	
		
			Haskell
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			722 B
		
	
	
	
		
			Haskell
		
	
	
	
	
	
| {-# LANGUAGE OverloadedStrings #-}
 | |
| module Test.Config where
 | |
| 
 | |
| import Test.Hspec
 | |
| 
 | |
| import Config
 | |
| import Config.Watcher
 | |
| import Config.S3
 | |
| import Dhall (inputFile, auto)
 | |
| import Control.Monad.IO.Class (MonadIO(..))
 | |
| 
 | |
| 
 | |
| spec :: Spec
 | |
| spec = describe "Reading configuration" $ do
 | |
|   it "Can read the sample configuration" $ do
 | |
|     conf <- liftIO $ inputFile auto "./sample_config.dhall"
 | |
|     let wanted = Config
 | |
|           { watcher = ConfigWatcher
 | |
|               { directories = ["/tmp/foo"]
 | |
|               , period = Seconds 300
 | |
|               }
 | |
|           , s3 = ConfigS3
 | |
|               { region = "fr-par"
 | |
|               , endpoint = "example.com"
 | |
|               , bucket = "example"
 | |
|               }
 | |
|           }
 | |
|     conf `shouldBe` wanted
 | |
| 
 |