packages feed

arithmoi-0.4.2.0: test-suite/Test.hs

import Test.Tasty

import qualified Math.NumberTheory.GCDTests as GCD
import qualified Math.NumberTheory.GCD.LowLevelTests as GCDLowLevel

import qualified Math.NumberTheory.LogarithmsTests as Logarithms

import qualified Math.NumberTheory.LucasTests as Lucas

import qualified Math.NumberTheory.ModuliTests as Moduli

import qualified Math.NumberTheory.MoebiusInversionTests as MoebiusInversion
import qualified Math.NumberTheory.MoebiusInversion.IntTests as MoebiusInversionInt

import qualified Math.NumberTheory.Powers.CubesTests as Cubes
import qualified Math.NumberTheory.Powers.FourthTests as Fourth
import qualified Math.NumberTheory.Powers.GeneralTests as General
import qualified Math.NumberTheory.Powers.IntegerTests as Integer
import qualified Math.NumberTheory.Powers.SquaresTests as Squares

import qualified Math.NumberTheory.PrimesTests as Primes
import qualified Math.NumberTheory.Primes.CountingTests as Counting
import qualified Math.NumberTheory.Primes.HeapTests as Heap
import qualified Math.NumberTheory.Primes.SieveTests as Sieve

import qualified Math.NumberTheory.GaussianIntegersTests as Gaussian

main :: IO ()
main = defaultMain tests

tests :: TestTree
tests = testGroup "All"
  [ testGroup "Powers"
    [ Cubes.testSuite
    , Fourth.testSuite
    , General.testSuite
    , Integer.testSuite
    , Squares.testSuite
    ]
  , testGroup "GCD"
    [ GCD.testSuite
    , GCDLowLevel.testSuite
    ]
  , testGroup "Logarithms"
    [ Logarithms.testSuite
    ]
  , testGroup "Lucas"
    [ Lucas.testSuite
    ]
  , testGroup "Moduli"
    [ Moduli.testSuite
    ]
  , testGroup "MoebiusInversion"
    [ MoebiusInversion.testSuite
    , MoebiusInversionInt.testSuite
    ]
  , testGroup "Primes"
    [ Primes.testSuite
    , Counting.testSuite
    , Heap.testSuite
    , Sieve.testSuite
    ]
  , testGroup "Gaussian"
    [ Gaussian.testSuite
    ]
  ]