diff --git a/test/Handler/Utils/SubmissionSpec.hs b/test/Handler/Utils/SubmissionSpec.hs index 3e708b165..ed50724ba 100644 --- a/test/Handler/Utils/SubmissionSpec.hs +++ b/test/Handler/Utils/SubmissionSpec.hs @@ -1,4 +1,4 @@ --- SPDX-FileCopyrightText: 2022 Gregor Kleen ,Sarah Vaupel ,Steffen Jost +-- SPDX-FileCopyrightText: 2022-23 Gregor Kleen ,Sarah Vaupel ,Steffen Jost -- -- SPDX-License-Identifier: AGPL-3.0-or-later @@ -48,10 +48,10 @@ makeUsers (fromIntegral -> n) = do users' <- liftIO . replicateM n $ generate arbitrary users <- forM users' $ \u -> do i <- atomically $ readTVar userNumber <* modifyTVar userNumber succ - let baseid = CI.mk $ "user." <> tshow i - u' = u { userIdent = baseid - , userEmail = baseid <> "@example.com" - , userLdapPrimaryKey = baseid <> ".ldap" + let baseid = "user." <> tshow i + u' = u { userIdent = CI.mk baseid + , userEmail = CI.mk $ baseid <> "@example.com" + , userLdapPrimaryKey = Just $ baseid <> ".ldap" } return u' uids <- insertMany users @@ -102,18 +102,19 @@ distributionExample mkParameters setupHook cont = do mapM_ (\(n, (subs, corrs)) -> setupHook n subs corrs) . zip [1..] $ map snd situations - situations' <- forM situations $ \(sid, (submissions, sheetCorrectors)) -> (sid, ) <$> do + -- situations' <- + forM situations $ \(sid, (submissions, sheetCorrectors)) -> (sid, ) <$> do submissions' <- mapM (fmap fromJust . getEntity . entityKey) submissions sheetCorrectors' <- mapM (fmap fromJust . getEntity . entityKey) sheetCorrectors return (submissions', sheetCorrectors') - return situations' + -- return situations' let subIds :: [SubmissionId] subIds = concatMap (\(_, (subs, _)) -> mapMaybe (\(Entity subId Submission{..}) -> guardOn (is _Nothing submissionRatingBy) subId) subs) situations - results <- runHandler . Yesod.runDB . mapM (\sid -> assignSubmissions sid Nothing) $ map fst situations + results <- runHandler . Yesod.runDB $ mapM ((`assignSubmissions` Nothing) . fst) situations submissions <- fmap concat . forM results $ \(assigned, unassigned) -> runDB $ selectList ([ SubmissionId <-. Set.toList assigned ] ||. [ SubmissionId <-. Set.toList unassigned ]) [] @@ -122,7 +123,7 @@ distributionExample mkParameters setupHook cont = do Set.union assigned unassigned `shouldBe` Set.fromList subIds cont . Map.fromListWith mappend $ do Entity subId Submission{..} <- submissions - let key = listToMaybe . filter (\(Entity _ (SheetCorrector uid _ _ _)) -> Just uid == submissionRatingBy) $ concatMap (\(_, (_, corrs)) -> corrs) situations + let key = find (\ (Entity _ (SheetCorrector uid _ _ _)) -> Just uid == submissionRatingBy) $ concatMap (\(_, (_, corrs)) -> corrs) situations sheet = getFirst . foldMap (\(n, (sid, _)) -> First $ guardOn (sid == submissionSheet) n) $ zip [1..] situations return (entityVal <$> key, Set.singleton (subId, sheet))