@@ -8,6 +8,7 @@ import Control.Monad
8import Control.Monad.IO.Class
8import Control.Monad.IO.Class
9import Data.Bool (bool)
9import Data.Bool (bool)
10import Data.Function (fix)
10import Data.Function (fix)
11+import Data.Maybe (isJust)
11import Data.Semigroup ((<>))
12import Data.Semigroup ((<>))
12import qualified Data.Set as Set
13import qualified Data.Set as Set
13import Data.String
14import Data.String
@@ -18,6 +19,7 @@ import qualified Network.HTTP.Client as HTTP
18import qualified Network.HTTP.Types as HTTP
19import qualified Network.HTTP.Types as HTTP
19import qualified Network.Socket as Socket
20import qualified Network.Socket as Socket
20import Shelly
21import Shelly
22+import System.Directory (withCurrentDirectory)
21import System.Environment
23import System.Environment
22import System.Exit (ExitCode (..), exitWith)
24import System.Exit (ExitCode (..), exitWith)
23import System.Info
25import System.Info
@@ -28,6 +30,8 @@ import Test.Hspec
28import Test.HUnit.Base
30import Test.HUnit.Base
29import System.Process (readProcessWithExitCode)
31import System.Process (readProcessWithExitCode)
33+import Obelisk.Run (getConfigRoute)
31data ObRunState
35data ObRunState
32 = ObRunState_Init
36 = ObRunState_Init
33 | ObRunState_Startup
37 | ObRunState_Startup
@@ -81,6 +85,10 @@ main = do
81 errExit False $ run "ob" ["init", "--symlink", "/dev/null"]
85 errExit False $ run "ob" ["init", "--symlink", "/dev/null"]
82 ls tmp >>= liftIO . assertEqual "" []
86 ls tmp >>= liftIO . assertEqual "" []
88+ it "produces a valid route config" $ inTmp $ \tmp -> do
90+ liftIO $ withCurrentDirectory (T.unpack $ toTextIgnore tmp) $ getConfigRoute `shouldNotReturn` Nothing
84 describe "ob run" $ do
92 describe "ob run" $ do
85 it "works in root directory" $ inTmp $ \_ -> do
93 it "works in root directory" $ inTmp $ \_ -> do
86 run "ob" ["init"]
94 run "ob" ["init"]