Inference tested and linted

This commit is contained in:
Steffen Jost 2019-03-20 13:36:26 +01:00
parent 7177631236
commit d310e5a8c3
4 changed files with 15 additions and 9 deletions

View File

@ -170,6 +170,7 @@ default-extensions:
ghc-options: ghc-options:
- -Wall - -Wall
- -fno-warn-type-defaults - -fno-warn-type-defaults
- -fno-warn-unrecognised-pragmas
- -fno-warn-partial-type-signatures - -fno-warn-partial-type-signatures
when: when:

View File

@ -198,8 +198,8 @@ postAdminFeaturesR = do
(infConflicts,infAmbiguous,infRedundant,infAccepted) <- Candidates.inferHandler (infConflicts,infAmbiguous,infRedundant,infAccepted) <- Candidates.inferHandler
unless (null infAmbiguous) $ addMessageI Info $ MsgAmbiguousCandidatesRemoved $ length infAmbiguous unless (null infAmbiguous) $ addMessageI Info $ MsgAmbiguousCandidatesRemoved $ length infAmbiguous
unless (null infRedundant) $ addMessageI Info $ MsgRedundantCandidatesRemoved $ length infRedundant unless (null infRedundant) $ addMessageI Info $ MsgRedundantCandidatesRemoved $ length infRedundant
if (null infAccepted) if null infAccepted
then addMessageI Info $ MsgNoCandidatesInferred then addMessageI Info MsgNoCandidatesInferred
else addMessageI Success $ MsgCandidatesInferred $ length infAccepted else addMessageI Success $ MsgCandidatesInferred $ length infAccepted
return (infConflicts,infAccepted) return (infConflicts,infAccepted)
_other -> (,[]) <$> runDB Candidates.conflicts _other -> (,[]) <$> runDB Candidates.conflicts
@ -263,7 +263,9 @@ postAdminFeaturesR = do
] ]
dbtFilter = mempty dbtFilter = mempty
dbtFilterUI = mempty dbtFilterUI = mempty
dbtParams = def { dbParamsFormAddSubmit = True } -- dbParamsFormEvaluate = liftHandlerT . (runFormPost . identifyForm "degree-table" - (identForm FIDdegree))} dbtParams = def { dbParamsFormAddSubmit = True
, dbParamsFormAction = Just . SomeRoute $ AdminFeaturesR :#: ("admin-studydegrees-table-wrapper" :: Text)
}
psValidator = def & defaultSorting [SortAscBy "name", SortAscBy "short", SortAscBy "key"] psValidator = def & defaultSorting [SortAscBy "name", SortAscBy "short", SortAscBy "key"]
in dbTable psValidator DBTable{..} in dbTable psValidator DBTable{..}
@ -290,7 +292,9 @@ postAdminFeaturesR = do
] ]
dbtFilter = mempty dbtFilter = mempty
dbtFilterUI = mempty dbtFilterUI = mempty
dbtParams = def { dbParamsFormAddSubmit = True } -- , dbParamsFormEvaluate = liftHandlerT . runFormPost } dbtParams = def { dbParamsFormAddSubmit = True
, dbParamsFormAction = Just . SomeRoute $ AdminFeaturesR :#: ("admin-studyterms-table-wrapper" :: Text)
}
psValidator = def & defaultSorting [SortAscBy "name", SortAscBy "short", SortAscBy "key"] psValidator = def & defaultSorting [SortAscBy "name", SortAscBy "short", SortAscBy "key"]
in dbTable psValidator DBTable{..} in dbTable psValidator DBTable{..}

View File

@ -27,6 +27,7 @@ import qualified Data.Map as Map
import qualified Database.Esqueleto as E import qualified Database.Esqueleto as E
-- import Database.Esqueleto.Utils as E -- import Database.Esqueleto.Utils as E
{-# ANN module ("HLint: ignore Use newtype instead of data"::String) #-}
type STKey = Int -- for convenience, assmued identical to field StudyTermCandidateKey type STKey = Int -- for convenience, assmued identical to field StudyTermCandidateKey
@ -62,7 +63,7 @@ inferHandler = runDB $ inferAcc ([],[],[])
redundants <- removeRedundant redundants <- removeRedundant
accepted <- acceptSingletons accepted <- acceptSingletons
problems <- conflicts problems <- conflicts
when (not $ null problems) $ throwM $ FailedCandidateInference problems unless (null problems) $ throwM $ FailedCandidateInference problems
return (ambiguous, redundants, accepted) return (ambiguous, redundants, accepted)
{- {-

View File

@ -291,9 +291,9 @@ fillDb = do
void . insert $ StudyTermCandidate incidence9 79 "Informatik" void . insert $ StudyTermCandidate incidence9 79 "Informatik"
incidence10 <- liftIO getRandom incidence10 <- liftIO getRandom
void . insert $ StudyTermCandidate incidence10 103 "Deutsch" void . insert $ StudyTermCandidate incidence10 103 "Deutsch"
void . insert $ StudyTermCandidate incidence10 103 "Betriebswirtschafslehre" void . insert $ StudyTermCandidate incidence10 103 "Betriebswirtschaftslehre"
void . insert $ StudyTermCandidate incidence10 21 "Deutsch" void . insert $ StudyTermCandidate incidence10 21 "Deutsch"
void . insert $ StudyTermCandidate incidence10 21 "Betriebswirtschafslehre" void . insert $ StudyTermCandidate incidence10 21 "Betriebswirtschaftslehre"
incidence11 <- liftIO getRandom incidence11 <- liftIO getRandom
void . insert $ StudyTermCandidate incidence11 221 "Bioinformatik" void . insert $ StudyTermCandidate incidence11 221 "Bioinformatik"
void . insert $ StudyTermCandidate incidence11 221 "Chemie" void . insert $ StudyTermCandidate incidence11 221 "Chemie"
@ -306,9 +306,9 @@ fillDb = do
void . insert $ StudyTermCandidate incidence11 26 "Biologie" void . insert $ StudyTermCandidate incidence11 26 "Biologie"
incidence12 <- liftIO getRandom incidence12 <- liftIO getRandom
void . insert $ StudyTermCandidate incidence12 103 "Deutsch" void . insert $ StudyTermCandidate incidence12 103 "Deutsch"
void . insert $ StudyTermCandidate incidence12 103 "Betriebswirtschafslehre" void . insert $ StudyTermCandidate incidence12 103 "Betriebswirtschaftslehre"
void . insert $ StudyTermCandidate incidence12 21 "Deutsch" void . insert $ StudyTermCandidate incidence12 21 "Deutsch"
void . insert $ StudyTermCandidate incidence12 21 "Betriebswirtschafslehre" void . insert $ StudyTermCandidate incidence12 21 "Betriebswirtschaftslehre"
sfMMp <- insert $ StudyFeatures -- keyword type prevents record syntax here sfMMp <- insert $ StudyFeatures -- keyword type prevents record syntax here
maxMuster maxMuster