Skip to content

Commit

Permalink
Explicitly list testTargets
Browse files Browse the repository at this point in the history
`testTarget` is a space separated list of test-suites.

We explicitly list all test suites.
This allows us to implement logic in the nixpkgs builder to run test
suites in separate passthru.test derivations.
  • Loading branch information
TeofilC committed Apr 19, 2024
1 parent 89857ea commit 58341dd
Show file tree
Hide file tree
Showing 179 changed files with 179 additions and 2 deletions.
2 changes: 1 addition & 1 deletion cabal2nix/src/Distribution/Nixpkgs/Haskell/FromCabal.hs
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ fromPackageDescription haskellResolver nixpkgsResolver missingDeps flags Package
& jailbreak .~ False
& doCheck .~ True
& doBenchmark .~ False
& testTarget .~ mempty
& testTarget .~ unwords (map (unUnqualComponentName . testName) testSuites)
& hyperlinkSource .~ True
& enableSplitObjs .~ True
& enableLibraryProfiling .~ False
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -358,7 +358,7 @@ opencvOverrides = set phaseOverrides "hardeningDisable = [ \"bindnow\" ];"
. over (libraryDepends . pkgconfig) (replace (pkg "opencv") (pkg "opencv3"))

hspecCoreOverrides :: Derivation -> Derivation -- https://github.com/hspec/hspec/issues/330
hspecCoreOverrides = set phaseOverrides "testTarget = \"--test-option=--skip --test-option='Test.Hspec.Core.Runner.hspecResult runs specs in parallel'\";"
hspecCoreOverrides = set testTarget "--test-option=--skip --test-option='Test.Hspec.Core.Runner.hspecResult runs specs in parallel'"

cabal2nixOverrides :: Derivation -> Derivation
cabal2nixOverrides = set phaseOverrides $ unlines
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/ChasingBottoms.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ mkDerivation {
testHaskellDepends = [
array base containers mtl QuickCheck random syb
];
testTarget = "ChasingBottomsTestSuite";
description = "For testing partial and infinite values";
license = lib.licenses.mit;
}
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/FenwickTree.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ mkDerivation {
enableSeparateDataOutput = true;
libraryHaskellDepends = [ base QuickCheck template-haskell ];
testHaskellDepends = [ base QuickCheck template-haskell ];
testTarget = "test_FenwickTree";
homepage = "https://github.com/mgajda/FenwickTree";
description = "Data structure for fast query and update of cumulative sums";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/HPDF.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ mkDerivation {
mtl random vector zlib
];
testHaskellDepends = [ base HTF ];
testTarget = "HPDF-Tests";
homepage = "http://www.alpheccar.org";
description = "Generation of PDF documents";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/HTF.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ mkDerivation {
process random regex-compat template-haskell temporary text
unordered-containers
];
testTarget = "MiscTests TestHTF TestThreadPools";
homepage = "https://github.com/skogsbaer/HTF/";
description = "The Haskell Test Framework";
license = "LGPL";
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/HTTP.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ mkDerivation {
http-types httpd-shed HUnit mtl network network-uri pureMD5 split
test-framework test-framework-hunit wai warp
];
testTarget = "test";
homepage = "https://github.com/haskell/HTTP";
description = "A library for client-side HTTP";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/MissingH.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ mkDerivation {
hslogger HUnit mtl network old-locale old-time parsec process
QuickCheck random regex-compat testpack time unix
];
testTarget = "runtests";
homepage = "http://software.complete.org/missingh";
description = "Large utility library";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/QuickCheck.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ mkDerivation {
transformers
];
testHaskellDepends = [ base ];
testTarget = "test-quickcheck test-quickcheck-gcoarbitrary test-quickcheck-generators test-quickcheck-gshrink";
homepage = "https://github.com/nick8325/quickcheck";
description = "Automatic testing of Haskell programs";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/ReadArgs.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ mkDerivation {
libraryHaskellDepends = [ base system-filepath text ];
executableHaskellDepends = [ base system-filepath text ];
testHaskellDepends = [ base hspec system-filepath text ];
testTarget = "ReadArgsSpec";
homepage = "http://github.com/rampion/ReadArgs";
description = "Simple command line argument parsing";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/SHA.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ mkDerivation {
array base binary bytestring QuickCheck test-framework
test-framework-quickcheck2
];
testTarget = "test-sha";
description = "Implementations of the SHA suite of message digest functions";
license = lib.licenses.bsd3;
}
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/active.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ mkDerivation {
testHaskellDepends = [
base lens linear QuickCheck semigroupoids semigroups vector
];
testTarget = "active-tests";
description = "Abstractions for animation";
license = lib.licenses.bsd3;
}
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/aeson-diff.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ mkDerivation {
aeson base bytestring directory doctest filepath Glob hlint
QuickCheck quickcheck-instances text unordered-containers vector
];
testTarget = "properties examples doctests hlint-check";
homepage = "https://github.com/thsutton/aeson-diff";
description = "Extract and apply patches to JSON documents";
license = lib.licenses.bsd3;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ mkDerivation {
libraryHaskellDepends = [ array base containers ];
testHaskellDepends = [ base containers extra QuickCheck ];
benchmarkHaskellDepends = [ base containers criterion ];
testTarget = "test-alga";
homepage = "https://github.com/snowleopard/alga";
description = "A library for algebraic graph construction and transformation";
license = lib.licenses.mit;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ mkDerivation {
amazonka-core amazonka-test base bytestring tasty tasty-hunit text
time unordered-containers
];
testTarget = "amazonka-cloudtrail-test";
homepage = "https://github.com/brendanhay/amazonka";
description = "Amazon CloudTrail SDK";
license = lib.licenses.mpl20;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ mkDerivation {
amazonka-core amazonka-test base bytestring tasty tasty-hunit text
time unordered-containers
];
testTarget = "amazonka-cloudwatch-logs-test";
homepage = "https://github.com/brendanhay/amazonka";
description = "Amazon CloudWatch Logs SDK";
license = lib.licenses.mpl20;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ mkDerivation {
amazonka-core amazonka-test base bytestring tasty tasty-hunit text
time unordered-containers
];
testTarget = "amazonka-codedeploy-test";
homepage = "https://github.com/brendanhay/amazonka";
description = "Amazon CodeDeploy SDK";
license = lib.licenses.mpl20;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ mkDerivation {
amazonka-core amazonka-test base bytestring tasty tasty-hunit text
time unordered-containers
];
testTarget = "amazonka-cognito-idp-test";
homepage = "https://github.com/brendanhay/amazonka";
description = "Amazon Cognito Identity Provider SDK";
license = lib.licenses.mpl20;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/amazonka-ecs.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ mkDerivation {
amazonka-core amazonka-test base bytestring tasty tasty-hunit text
time unordered-containers
];
testTarget = "amazonka-ecs-test";
homepage = "https://github.com/brendanhay/amazonka";
description = "Amazon EC2 Container Service SDK";
license = lib.licenses.mpl20;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/amazonka-kms.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ mkDerivation {
amazonka-core amazonka-test base bytestring tasty tasty-hunit text
time unordered-containers
];
testTarget = "amazonka-kms-test";
homepage = "https://github.com/brendanhay/amazonka";
description = "Amazon Key Management Service SDK";
license = lib.licenses.mpl20;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ mkDerivation {
amazonka-core amazonka-test base bytestring tasty tasty-hunit text
time unordered-containers
];
testTarget = "amazonka-lightsail-test";
homepage = "https://github.com/brendanhay/amazonka";
description = "Amazon Lightsail SDK";
license = lib.licenses.mpl20;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ mkDerivation {
amazonka-core amazonka-test base bytestring tasty tasty-hunit text
time unordered-containers
];
testTarget = "amazonka-route53-domains-test";
homepage = "https://github.com/brendanhay/amazonka";
description = "Amazon Route 53 Domains SDK";
license = lib.licenses.mpl20;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/amazonka-waf.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ mkDerivation {
amazonka-core amazonka-test base bytestring tasty tasty-hunit text
time unordered-containers
];
testTarget = "amazonka-waf-test";
homepage = "https://github.com/brendanhay/amazonka";
description = "Amazon WAF SDK";
license = lib.licenses.mpl20;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ mkDerivation {
aeson base lens split template-haskell text
];
testHaskellDepends = [ aeson base HUnit lens ];
testTarget = "api-field-json-th-test";
homepage = "https://github.com/nakaji-dayo/api-field-json-th";
description = "option of aeson's deriveJSON";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/app-settings.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ mkDerivation {
testHaskellDepends = [
base containers directory hspec HUnit mtl parsec text
];
testTarget = "tests";
homepage = "https://github.com/emmanueltouzery/app-settings";
description = "A library to manage application settings (INI file-like)";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/apply-refact.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ mkDerivation {
tasty-expected-failure tasty-golden temporary transformers
unix-compat
];
testTarget = "test";
description = "Perform refactorings specified by the refact library";
license = lib.licenses.bsd3;
mainProgram = "refactor";
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/async.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ mkDerivation {
testHaskellDepends = [
base HUnit test-framework test-framework-hunit
];
testTarget = "test-async";
homepage = "https://github.com/simonmar/async";
description = "Run IO operations asynchronously and wait for their results";
license = lib.licenses.bsd3;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ mkDerivation {
testHaskellDepends = [
base base-prelude directory doctest filepath
];
testTarget = "doctests";
homepage = "https://github.com/nikita-volkov/attoparsec-time";
description = "Attoparsec parsers of time";
license = lib.licenses.mit;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/aws.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ mkDerivation {
quickcheck-instances resourcet tagged tasty tasty-hunit
tasty-quickcheck text time transformers transformers-base
];
testTarget = "sqs-tests dynamodb-tests s3-tests";
homepage = "http://github.com/aristidb/aws";
description = "Amazon Web Services (AWS) for Haskell";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/bbdb.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ mkDerivation {
sha256 = "deadbeef";
libraryHaskellDepends = [ base parsec ];
testHaskellDepends = [ base hspec parsec ];
testTarget = "bbdb-tests";
homepage = "https://github.com/henrylaxen/bbdb";
description = "Ability to read, write, and modify BBDB files";
license = lib.licenses.gpl3Only;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/binary-bits.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ mkDerivation {
base binary bytestring QuickCheck random test-framework
test-framework-quickcheck2
];
testTarget = "qc";
description = "Bit parsing/writing on top of binary";
license = lib.licenses.bsd3;
}
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/binary-tagged.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ mkDerivation {
containers criterion deepseq generics-sop hashable nats scientific
semigroups SHA tagged text time unordered-containers vector
];
testTarget = "binary-tagged-test";
homepage = "https://github.com/phadej/binary-tagged#readme";
description = "Tagged binary serialisation";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/bits.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ mkDerivation {
setupHaskellDepends = [ base Cabal cabal-doctest ];
libraryHaskellDepends = [ base bytes mtl transformers ];
testHaskellDepends = [ base doctest ];
testTarget = "doctests";
homepage = "http://github.com/ekmett/bits";
description = "Various bit twiddling and bitwise serialization primitives";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/blank-canvas.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ mkDerivation {
testHaskellDepends = [
base containers directory process shake stm text time unix vector
];
testTarget = "wiki-suite";
homepage = "https://github.com/ku-fpg/blank-canvas/wiki";
description = "HTML5 Canvas Graphics Library";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/blaze-html.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ mkDerivation {
QuickCheck test-framework test-framework-hunit
test-framework-quickcheck2 text
];
testTarget = "blaze-html-tests";
homepage = "http://jaspervdj.be/blaze";
description = "A blazingly fast HTML combinator library for Haskell";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/blaze-markup.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ mkDerivation {
base blaze-builder bytestring containers HUnit QuickCheck
test-framework test-framework-hunit test-framework-quickcheck2 text
];
testTarget = "blaze-markup-tests";
homepage = "http://jaspervdj.be/blaze";
description = "A blazingly fast markup combinator library for Haskell";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/boxes.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ mkDerivation {
sha256 = "deadbeef";
libraryHaskellDepends = [ base split ];
testHaskellDepends = [ base QuickCheck split ];
testTarget = "test-boxes";
description = "2D text pretty-printing library";
license = lib.licenses.bsd3;
}
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/brittany.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ mkDerivation {
neat-interpolation parsec pretty safe semigroups strict syb text
transformers uniplate unsafe yaml
];
testTarget = "unittests littests libinterfacetests";
homepage = "https://github.com/lspitzner/brittany/";
description = "Haskell source code formatter";
license = lib.licenses.agpl3Only;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/butcher.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ mkDerivation {
base bifunctors containers deque either extra free microlens
microlens-th mtl multistate pretty transformers unsafe void
];
testTarget = "tests";
homepage = "https://github.com/lspitzner/butcher/";
description = "Chops a command or program invocation into digestable pieces";
license = lib.licenses.bsd3;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ mkDerivation {
base bytestring HUnit test-framework test-framework-hunit text
];
benchmarkHaskellDepends = [ base bytestring criterion deepseq ];
testTarget = "test-case-insensitive";
homepage = "https://github.com/basvandijk/case-insensitive";
description = "Case insensitive string comparison";
license = lib.licenses.bsd3;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ mkDerivation {
base bytestring cassava conduit conduit-extra QuickCheck text
];
benchmarkHaskellDepends = [ base criterion ];
testTarget = "quickcheck";
homepage = "https://github.com/domdere/cassava-conduit";
description = "Conduit interface for cassava package";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/code-page.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ mkDerivation {
sha256 = "deadbeef";
libraryHaskellDepends = [ base ];
testHaskellDepends = [ base ];
testTarget = "tests";
homepage = "https://github.com/RyanGlScott/code-page";
description = "Windows code page library for Haskell";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/countable.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ mkDerivation {
testHaskellDepends = [
base bytestring silently tasty tasty-golden tasty-hunit
];
testTarget = "tests";
homepage = "https://github.com/AshleyYakeley/countable";
description = "Countable, Searchable, Finite, Empty classes";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/criterion.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ mkDerivation {
aeson base bytestring deepseq directory HUnit QuickCheck statistics
tasty tasty-hunit tasty-quickcheck vector
];
testTarget = "sanity tests cleanup";
homepage = "http://www.serpentine.com/criterion";
description = "Robust, reliable performance measurement and analysis";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/crypt-sha512.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ mkDerivation {
tasty-quickcheck
];
testSystemDepends = [ libxcrypt ];
testTarget = "example";
homepage = "https://github.com/phadej/crypt-sha512";
description = "Pure Haskell implelementation for GNU SHA512 crypt algorithm";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/data-msgpack.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ mkDerivation {
benchmarkHaskellDepends = [
base bytestring criterion deepseq QuickCheck
];
testTarget = "testsuite";
homepage = "http://msgpack.org/";
description = "A Haskell implementation of MessagePack";
license = lib.licenses.bsd3;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ mkDerivation {
testHaskellDepends = [
base binary bytestring cereal tasty tasty-quickcheck
];
testTarget = "tests";
homepage = "https://github.com/mvv/data-serializer";
description = "Common API for serialization libraries";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/diagrams-solve.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ mkDerivation {
testHaskellDepends = [
base deepseq tasty tasty-hunit tasty-quickcheck
];
testTarget = "tests";
homepage = "http://projects.haskell.org/diagrams";
description = "Pure Haskell solver routines used by diagrams";
license = lib.licenses.bsd3;
Expand Down
1 change: 1 addition & 0 deletions cabal2nix/test/golden-test-cases/dotenv.nix.golden
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ mkDerivation {
base base-compat directory exceptions hspec hspec-megaparsec
megaparsec process text transformers yaml
];
testTarget = "dotenv-test";
homepage = "https://github.com/stackbuilders/dotenv-hs";
description = "Loads environment variables from dotenv files";
license = lib.licenses.mit;
Expand Down
Loading

0 comments on commit 58341dd

Please sign in to comment.