packages feed

conferer-0.1.0.0: test/Conferer/Provider/NamespacedSpec.hs

module Conferer.Provider.NamespacedSpec where

import Test.Hspec

import Conferer

spec :: Spec
spec = do
  describe "namespaced config" $ do
    it "return nothing if the key doesn't match" $ do
      c <- emptyConfig
           & addProvider (mkNamespacedProvider "postgres"
                          $ mkMapProvider [("url", "some url")])
      res <- getKey "url" c
      res `shouldBe` Left "Key 'url' was not found"
    it "returns the wrapped value" $ do
      c <- emptyConfig
           & addProvider (mkNamespacedProvider "postgres"
                          $ mkMapProvider [("url", "some url")])
      res <- getKey "postgres.url" c
      res `shouldBe` Right "some url"