dataframe-3.0.0.0: tests/Main.hs
{-# LANGUAGE ScopedTypeVariables #-}
module Main where
import qualified System.Exit as Exit
import GenDataFrame ()
import Test.HUnit
import Test.QuickCheck
import qualified Functions
import qualified IO.CSV
import qualified IO.CsvGolden
import qualified IO.JSON
import qualified IR.ExprJsonRoundtrip
import qualified Internal.ColumnBuilder
import qualified Internal.DictEncode
import qualified Internal.Markdown
import qualified Internal.PackedText
import qualified Internal.Parsing
import qualified LazyParity
import qualified LazyParquet
import qualified Learn.Denotation
import qualified Learn.Ensembles
import qualified Learn.Metamorphic
import qualified Learn.MetricsTests
import qualified Learn.Models
import qualified Learn.Segmented
import qualified Learn.SklearnParity
import qualified Learn.Synthesis
import qualified Learn.TypedModel
import qualified Monad
import qualified Operations.Aggregations
import qualified Operations.Apply
import qualified Operations.Core
import qualified Operations.Derive
import qualified Operations.Filter
import qualified Operations.GroupBy
import qualified Operations.Inference
import qualified Operations.InsertColumn
import qualified Operations.Join
import qualified Operations.Merge
import qualified Operations.Nullable
import qualified Operations.NullableHashing
import qualified Operations.ParallelGroupBy
import qualified Operations.ParallelJoin
import qualified Operations.Provenance
import qualified Operations.ReadCsv
import qualified Operations.Record
import qualified Operations.SetOps
import qualified Operations.Shuffle
import qualified Operations.Sort
import qualified Operations.Statistics
import qualified Operations.Subset
import qualified Operations.Take
import qualified Operations.Typing
import qualified Operations.VectorKernel
import qualified Operations.Window
import qualified Operations.WriteCsv
import qualified PackedTextMigration
import qualified Parquet
import qualified Plotting
import qualified PrettyPrint
import qualified Properties
import qualified Properties.Categorical
import qualified Simplify
import qualified Typed.IOReaders
import qualified Typed.Parity
tests :: Test
tests =
TestList $
Internal.ColumnBuilder.tests
++ Internal.DictEncode.tests
++ Internal.Markdown.tests
++ Internal.PackedText.tests
++ Internal.Parsing.tests
++ Learn.Denotation.tests
++ Learn.Models.tests
++ Learn.TypedModel.tests
++ Learn.Ensembles.tests
++ Learn.SklearnParity.tests
++ Learn.Synthesis.tests
++ Learn.MetricsTests.tests
++ Learn.Metamorphic.tests
++ Learn.Segmented.tests
++ Operations.Aggregations.tests
++ Operations.Apply.tests
++ Operations.Core.tests
++ Operations.Derive.tests
++ Operations.Filter.tests
++ Operations.GroupBy.tests
++ Operations.ParallelGroupBy.tests
++ Operations.ParallelJoin.tests
++ Operations.Inference.tests
++ Operations.InsertColumn.tests
++ Operations.Join.tests
++ Operations.Merge.tests
++ Operations.Nullable.tests
++ Operations.NullableHashing.tests
++ Operations.Provenance.tests
++ Operations.ReadCsv.tests
++ Operations.Record.tests
++ Operations.WriteCsv.tests
++ Operations.SetOps.tests
++ Operations.Shuffle.tests
++ Operations.Sort.tests
++ Operations.Statistics.tests
++ Operations.Subset.hunitTests
++ Operations.Take.tests
++ Operations.Typing.tests
++ Operations.VectorKernel.tests
++ Operations.Window.tests
++ Functions.tests
++ IO.CSV.tests
++ IO.CsvGolden.tests
++ IO.JSON.tests
++ IR.ExprJsonRoundtrip.tests
++ Parquet.tests
++ LazyParquet.tests
++ LazyParity.tests
++ Plotting.tests
++ Simplify.tests
++ PackedTextMigration.tests
++ PrettyPrint.tests
++ Typed.Parity.tests
++ Typed.IOReaders.tests
isSuccessful :: Result -> Bool
isSuccessful (Success{}) = True
isSuccessful _ = False
main :: IO ()
main = do
result <- runTestTT tests
if failures result > 0 || errors result > 0
then Exit.exitFailure
else do
propRes <-
mapM
(quickCheckWithResult stdArgs)
Operations.Subset.tests
monadRes <- mapM (quickCheckWithResult stdArgs) Monad.tests
cbRes <-
mapM
(quickCheckWithResult stdArgs)
Internal.ColumnBuilder.props
propsRes <- mapM (quickCheckWithResult stdArgs) Properties.tests
catRes <- mapM (quickCheckWithResult stdArgs) Properties.Categorical.tests
if not (all isSuccessful propRes)
|| not (all isSuccessful cbRes)
|| not (all isSuccessful monadRes)
|| not (all isSuccessful propsRes)
|| not (all isSuccessful catRes)
then Exit.exitFailure
else Exit.exitSuccess