module Arbiter.Test.Worker.Backend (TestBackend (..)) where
import Arbiter.Core.Job.Types (JobRead)
import Arbiter.Core.MonadArbiter (JobHandler, ResultOf)
import Data.ByteString (ByteString)
import Data.Text (Text)
data TestBackend payload m env = TestBackend
{ forall payload (m :: * -> *) env. TestBackend payload m env -> Text
schema :: Text
, forall payload (m :: * -> *) env. TestBackend payload m env -> Text
table :: Text
, forall payload (m :: * -> *) env.
TestBackend payload m env -> ByteString
connStr :: ByteString
, forall payload (m :: * -> *) env.
TestBackend payload m env -> Text -> payload
mkSimple :: Text -> payload
, forall payload (m :: * -> *) env.
TestBackend payload m env -> Int -> payload
mkFailing :: Int -> payload
, forall payload (m :: * -> *) env.
TestBackend payload m env -> IO env
mkEnv :: IO env
, forall payload (m :: * -> *) env.
TestBackend payload m env -> env -> env
pollOnly :: env -> env
, forall payload (m :: * -> *) env.
TestBackend payload m env -> IO env
mkFreshEnv :: IO env
, forall payload (m :: * -> *) env.
TestBackend payload m env -> env -> IO ()
destroyEnv :: env -> IO ()
, forall payload (m :: * -> *) env.
TestBackend payload m env
-> (JobRead payload -> m (ResultOf m payload))
-> JobHandler m payload (ResultOf m payload)
mkHandler :: (JobRead payload -> m (ResultOf m payload)) -> JobHandler m payload (ResultOf m payload)
, forall payload (m :: * -> *) env.
TestBackend payload m env -> Text -> m ()
runCommand :: Text -> m ()
, forall payload (m :: * -> *) env.
TestBackend payload m env -> forall a. env -> m a -> IO a
runM :: forall a. env -> m a -> IO a
}