keiro-dsl-0.15.0.0: test/conformance-dispatch-full/Generated/HospitalCapacity/AcceptedTransferNeeds/ReadModelHarness.hs
-- @generated by keiro-dsl 0.15.0.0 (language keiro-dsl 4) from readmodel accepted_transfer_needs; do not edit.
module Generated.HospitalCapacity.AcceptedTransferNeeds.ReadModelHarness (readModelFacts, readModelFactResults, runReadModelFacts) where
import Generated.HospitalCapacity.AcceptedTransferNeeds.ReadModel (acceptedTransferNeedsReadModel, acceptedTransferNeedsAsyncProjection)
import Data.Text qualified as T
import Keiro.ReadModel (ReadModel (..), StrongScope (..))
import Keiro.Projection (AsyncProjection (..))
-- | (fact, expected from notation, actual generated runtime value).
readModelFacts :: [(String, String, String)]
readModelFacts =
[ ("registryName", "hospital-capacity-accepted-transfer-needs", T.unpack acceptedTransferNeedsReadModel.name)
, ("subscriptionName", "hospital-capacity-accepted-transfer-needs-sub", T.unpack acceptedTransferNeedsReadModel.subscriptionName)
, ("shapeHash", "fnv1a:fec517dae7760b8a", T.unpack acceptedTransferNeedsReadModel.shapeHash)
, ("asyncProjectionName", "hospital-capacity-accepted-transfer-needs-async", T.unpack acceptedTransferNeedsAsyncProjection.name)
, ("consistency", "Eventual", show acceptedTransferNeedsReadModel.defaultConsistency)
, ("strongScope", "EntireLog", renderStrongScope acceptedTransferNeedsReadModel.strongScope)
]
renderStrongScope :: StrongScope -> String
renderStrongScope EntireLog = "EntireLog"
renderStrongScope (CategoryHead categoryName) = "CategoryHead " <> T.unpack categoryName
readModelFactResults :: [(String, Bool)]
readModelFactResults =
[(fact, expected == actual) | (fact, expected, actual) <- readModelFacts]
runReadModelFacts :: IO Bool
runReadModelFacts = do
let failures = [(fact, expected, actual) | (fact, expected, actual) <- readModelFacts, expected /= actual]
mapM_ (\(fact, expected, actual) -> putStrLn ("FAIL " <> fact <> " expected=" <> show expected <> " actual=" <> show actual)) failures
pure (null failures)