deleteAll,
insert_,
migrate,
- runMigration,
- silentMigrationLogger,
update )
import Database.Groundhog.Core ( DefaultKey )
-import Database.Groundhog.Generic ( runDbConn )
+import Database.Groundhog.Generic ( runDbConn, runMigrationSilent )
import Database.Groundhog.Sqlite ( withSqliteConn )
import Database.Groundhog.TH (
groundhog,
import TSN.Codegen ( tsn_codegen_config )
import TSN.Database ( insert_or_select )
import TSN.DbImport ( DbImport(..), ImportResult(..), run_dbmigrate )
-import TSN.Picklers ( xp_date_padded, xp_tba_time, xp_time_stamp )
+import TSN.Picklers (
+ xp_attr_option,
+ xp_date_padded,
+ xp_tba_time,
+ xp_time_stamp )
import TSN.Team ( FromXmlFkTeams(..), Team(..) )
import TSN.XmlImport ( XmlImport(..), XmlImportFkTeams(..) )
import Xml (
xpElem "Casino" $
xpWrap (from_tuple, H.convert) $
xpTriple
- (xpAttr "ClientID" $ xpOption xpInt)
+ (xpAttr "ClientID" xp_attr_option)
(xpAttr "Name" $ xpOption xpText)
(xpOption xpText)
where
"test/xml/Odds_XML-tba-game-time.xml",
check "pickle composed with unpickle is the identity (empty casino)"
- "test/xml/Odds_XML-empty-casino.xml" ]
+ "test/xml/Odds_XML-empty-casino.xml",
+
+ check "pickle composed with unpickle is the identity (long import)"
+ "test/xml/Odds_XML-long-import.xml" ]
where
check desc path = testCase desc $ do
(expected, actual) <- pickle_unpickle pickle_message path
"test/xml/Odds_XML-tba-game-time.xml",
check "unpickling succeeds (empty casino)"
- "test/xml/Odds_XML-empty-casino.xml" ]
+ "test/xml/Odds_XML-empty-casino.xml",
+
+ check "unpickling succeeds (long-import)"
+ "test/xml/Odds_XML-long-import.xml" ]
where
check desc path = testCase desc $ do
actual <- unpickleable path pickle_message
check "deleting odds deleted its children (empty casino)"
"test/xml/Odds_XML-empty-casino.xml"
11 -- 5 casinos, 6 teams
+ ,
+ check "deleting odds deleted its children (long import)"
+ "test/xml/Odds_XML-long-import.xml"
+ 219 -- 5 casinos, 214 teams
]
where
check desc path expected = testCase desc $ do
let d = undefined :: OddsGame
let e = undefined :: OddsGameLine
actual <- withSqliteConn ":memory:" $ runDbConn $ do
- runMigration silentMigrationLogger $ do
+ runMigrationSilent $ do
migrate a
migrate b
migrate c