on master help sign in
WIP compilation checkpoint for tests now requiring parser-combinators
commit1d20536bb6dcc216af6bf541073b8cb0c262f5d1 authorAgentM <agentm@themactionfaction.com> dateTue 4 Feb 2020, 23:17 (7 years ago) parentaea1262
3 files changed+13−13
project-m36.cabal+6−6 src/lib/ProjectM36/Base.hs+1−1 test/TransactionGraph/Persist.hs+6−6
project-m36.cabal+6−6
@@ -257,7 +257,7 @@ Test-Suite test-tutoriald-atomfunctionscript
257257 type: exitcode-stdio-1.0
258258 Other-Modules: TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.DatabaseContextIOOperator, TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.TestBase, TutorialD.Interpreter.TransGraphRelationalOperator, TutorialD.Interpreter.TransactionGraphOperator, TutorialD.Interpreter.Types, TutorialD.Interpreter.SchemaOperator
259259 main-is: test/TutorialD/Interpreter/AtomFunctionScript.hs
260− Build-Depends: base, HUnit, project-m36, uuid, containers, megaparsec, text, vector, directory, bytestring, mtl, haskeline, random, MonadRandom, semigroups, time
260+ Build-Depends: base, HUnit, project-m36, uuid, containers, megaparsec, text, vector, directory, bytestring, mtl, haskeline, random, MonadRandom, semigroups, time, parser-combinators
261261 GHC-Options: -Wall -threaded
262262 Hs-Source-Dirs: ./src/bin, ./test, .
263263
@@ -267,7 +267,7 @@ Test-Suite test-tutoriald-databasecontextfunctionscript
267267 type: exitcode-stdio-1.0
268268 Other-Modules: TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.DatabaseContextIOOperator, TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.TestBase, TutorialD.Interpreter.TransGraphRelationalOperator, TutorialD.Interpreter.TransactionGraphOperator, TutorialD.Interpreter.Types, TutorialD.Interpreter.SchemaOperator
269269 main-is: test/TutorialD/Interpreter/DatabaseContextFunctionScript.hs
270− Build-Depends: base, HUnit, project-m36, uuid, containers, megaparsec, text, vector, directory, bytestring, mtl, haskeline, random, MonadRandom, semigroups, time
270+ Build-Depends: base, HUnit, project-m36, uuid, containers, megaparsec, text, vector, directory, bytestring, mtl, haskeline, random, MonadRandom, semigroups, time, parser-combinators
271271 GHC-Options: -Wall -threaded
272272 Hs-Source-Dirs: ./src/bin, ./test, .
273273
@@ -292,7 +292,7 @@ Test-Suite test-transactiongraph-persist
292292 Default-Extensions: OverloadedStrings
293293 type: exitcode-stdio-1.0
294294 main-is: test/TransactionGraph/Persist.hs
295− Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, stm-containers, project-m36, random, MonadRandom, semigroups
295+ Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, stm-containers, project-m36, random, MonadRandom, semigroups, parser-combinators
296296 Other-Modules: TutorialD.Interpreter.Base, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.Types, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.Import.BasicExamples
297297 Hs-Source-Dirs: ., ./src/bin
298298 GHC-Options: -Wall -threaded
@@ -310,7 +310,7 @@ Test-Suite test-tutoriald-import-tutoriald
310310 Default-Extensions: OverloadedStrings
311311 type: exitcode-stdio-1.0
312312 main-is: test/TutorialD/Interpreter/Import/TutorialD.hs
313− Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, stm-containers, project-m36, random, MonadRandom, semigroups
313+ Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, stm-containers, project-m36, random, MonadRandom, semigroups, parser-combinators
314314 Other-Modules: TutorialD.Interpreter.Base, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.Types, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.Import.BasicExamples
315315 GHC-Options: -Wall -threaded
316316 Hs-Source-Dirs: ., ./src/bin
@@ -408,7 +408,7 @@ Test-Suite test-websocket-server
408408 Default-Language: Haskell2010
409409 type: exitcode-stdio-1.0
410410 main-is: test/Server/WebSocket.hs
411− Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, websockets, optparse-applicative, network, aeson, project-m36, random, MonadRandom, network-transport-tcp, semigroups
411+ Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, websockets, optparse-applicative, network, aeson, project-m36, random, MonadRandom, network-transport-tcp, semigroups, parser-combinators
412412 Other-Modules: TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.TransactionGraphOperator, ProjectM36.Client.Json, ProjectM36.Server.RemoteCallTypes.Json, ProjectM36.Server.WebSocket, TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.Types, TutorialD.Interpreter.DatabaseContextIOOperator, TutorialD.Interpreter.TransGraphRelationalOperator, TutorialD.Interpreter.SchemaOperator
413413 Default-Extensions: OverloadedStrings
414414 GHC-Options: -Wall -threaded
@@ -446,7 +446,7 @@ Test-Suite test-transactiongraph-automerge
446446 Default-Language: Haskell2010
447447 type: exitcode-stdio-1.0
448448 main-is: test/TransactionGraph/Automerge.hs
449− Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, websockets, optparse-applicative, network, aeson, project-m36, random, MonadRandom, semigroups
449+ Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, vector-binary-instances, time, hashable-time, bytestring, uuid, stm, deepseq, deepseq-generics, binary, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, websockets, optparse-applicative, network, aeson, project-m36, random, MonadRandom, semigroups, parser-combinators
450450 Other-Modules: TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.DatabaseContextIOOperator, TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.SchemaOperator, TutorialD.Interpreter.TestBase, TutorialD.Interpreter.TransGraphRelationalOperator, TutorialD.Interpreter.TransactionGraphOperator, TutorialD.Interpreter.Types
451451 Default-Extensions: OverloadedStrings
452452 GHC-Options: -Wall -threaded
src/lib/ProjectM36/Base.hs+1−1
@@ -431,7 +431,7 @@ data Transaction = Transaction TransactionId TransactionInfo Schemas
431431
432432-- | The disconnected transaction represents an in-progress workspace used by sessions before changes are committed. This is similar to git's "index". After a transaction is committed, it is "connected" in the transaction graph and can no longer be modified.
433433data DisconnectedTransaction = DisconnectedTransaction TransactionId Schemas DatabaseContextExpr
434−--the database context expression represents a difference between the disconnected transaction and its immutable parent transaction
434+--the database context expression represents a difference between the disconnected transaction and its immutable parent transaction- is this diff expr used at all?
435435
436436type DirtyFlag = Bool
437437
test/TransactionGraph/Persist.hs+6−6
@@ -29,8 +29,8 @@ testList = TestList [testBootstrapDB,
2929 testFunctionPersistence]
3030
3131
32−stamp :: UTCTime
33−stamp = UTCTime (fromGregorian 1980 01 01) (secondsToDiffTime 1000)
32+stamp' :: UTCTime
33+stamp' = UTCTime (fromGregorian 1980 01 01) (secondsToDiffTime 1000)
3434
3535{- bootstrap a database, ensure that it can be read -}
3636testBootstrapDB :: Test
@@ -38,7 +38,7 @@ testBootstrapDB = TestCase $ withSystemTempDirectory "m36testdb" $ \tempdir -> d
3838 let dbdir = tempdir </> "dbdir"
3939 freshId <- nextRandom
4040
41− _ <- bootstrapDatabaseDir NoDiskSync dbdir (bootstrapTransactionGraph stamp freshId dateExamples)
41+ _ <- bootstrapDatabaseDir NoDiskSync dbdir (bootstrapTransactionGraph stamp' freshId dateExamples)
4242 loadedGraph <- transactionGraphLoad dbdir emptyTransactionGraph Nothing
4343 assertBool "transactionGraphLoad" $ isRight loadedGraph
4444
@@ -48,17 +48,17 @@ testDBSimplePersistence = TestCase $ withSystemTempDirectory "m36testdb" $ \temp
4848 let dbdir = tempdir </> "dbdir"
4949 freshId <- nextRandom
5050
51− let graph = bootstrapTransactionGraph stamp freshId dateExamples
51+ let graph = bootstrapTransactionGraph stamp' freshId dateExamples
5252 _ <- bootstrapDatabaseDir NoDiskSync dbdir graph
5353 case transactionForHead "master" graph of
5454 Nothing -> assertFailure "Failed to retrieve head transaction for master branch."
5555 Just headTrans ->
56− case interpretDatabaseContextExpr (concreteDatabaseContext headTrans) "x:=s" of
56+ case interpretDatabaseContextExpr (concreteDatabaseContext headTrans) (transactionId headTrans) graph "x:=s" of
5757 Left err -> assertFailure (show err)
5858 Right context' -> do
5959 freshId' <- nextRandom
6060 let newdiscon = DisconnectedTransaction (transactionId headTrans) (Schemas context' M.empty) True
61− addTrans = addDisconnectedTransaction stamp freshId' "master" newdiscon graph
61+ addTrans = addDisconnectedTransaction stamp' freshId' "master" newdiscon graph
6262 --add a transaction to the graph
6363 case addTrans of
6464 Left err -> assertFailure (show err)