haskell.nix/test
Hamish Mackenzie cda15dc5b7
Add ghc8102-plutus as a compiler-nix-name (#848)
This change introduces a `ghc8102-experimental` compiler-nix-name that behaves much like the `ghc8102` version but includes @JoshMeredith's patch `./patches/ghc/ghc-8.10-ubxt.patch` that writes the `cg_binds` field with:

```haskell
  liftIO $ registerInterfaceDataWith "ghc/phase/core" hsc_env $ \bh ->
    putWithUserData (const $ return ()) bh (map toIfaceBind $ cg_binds cg_guts)
```

Some of the places where we used to depend on the output of `plan-to-nix` containing the correct `nix-name` for the compiler have been update to avoid using incompatible interface files from the `compiler-nix-name = "ghc8102"` version of GHC.
2020-10-21 17:04:47 +13:00
..
buildable Add support for coverage (#762) 2020-09-29 11:56:24 +08:00
builder-haddock Spelling, typo and whitespace fixes (#833) 2020-08-31 11:08:25 +12:00
cabal-22 Add support for coverage (#762) 2020-09-29 11:56:24 +08:00
cabal-hpack Add support for coverage (#762) 2020-09-29 11:56:24 +08:00
cabal-simple Add support for coverage (#762) 2020-09-29 11:56:24 +08:00
cabal-simple-prof Remove components.all (#776) 2020-07-21 16:06:54 +12:00
cabal-source-repo Add support for coverage (#762) 2020-09-29 11:56:24 +08:00
cabal-source-repo-comments Add support for coverage (#762) 2020-09-29 11:56:24 +08:00
cabal-sublib Add support for coverage (#762) 2020-09-29 11:56:24 +08:00
call-cabal-project-to-nix Add support for coverage (#762) 2020-09-29 11:56:24 +08:00
call-stack-to-nix Add support for coverage (#762) 2020-09-29 11:56:24 +08:00
compiler-nix-name Replace ghc 8.8.3 with 8.8.4 (#766) 2020-07-21 14:10:23 +12:00
coverage Fix ghc 8.10 windows cross (boot with 8.6.5) (#865) 2020-10-07 15:42:32 +13:00
exe-only Add support for coverage (#762) 2020-09-29 11:56:24 +08:00
extra-hackage Add support for coverage (#762) 2020-09-29 11:56:24 +08:00
fully-static Remove internal deps on default ghc and stackage (#738) 2020-07-08 22:54:01 +12:00
ghc-options Add support for coverage (#762) 2020-09-29 11:56:24 +08:00
haskell-language-server Add ghc8102-plutus as a compiler-nix-name (#848) 2020-10-21 17:04:47 +13:00
index-state Fix ghc 8.10 windows cross (boot with 8.6.5) (#865) 2020-10-07 15:42:32 +13:00
lookup-sha256 Spelling, typo and whitespace fixes (#833) 2020-08-31 11:08:25 +12:00
project-flags Add support for coverage (#762) 2020-09-29 11:56:24 +08:00
setup-deps Remove internal deps on default ghc and stackage (#738) 2020-07-08 22:54:01 +12:00
shell-for Spelling, typo and whitespace fixes (#833) 2020-08-31 11:08:25 +12:00
shell-for-setup-deps Spelling, typo and whitespace fixes (#833) 2020-08-31 11:08:25 +12:00
snapshots Add pins and materialization for ghc-boot-packages and ghc-extra-packages (#546) 2020-04-20 13:27:52 +12:00
stack-local-resolver Add haskell-nix.project (and project') (#703) 2020-06-19 20:07:19 +12:00
stack-remote-resolver download stack resolver if a sha256 is provided (#748) 2020-07-04 14:35:52 +12:00
stack-simple Spelling, typo and whitespace fixes (#833) 2020-08-31 11:08:25 +12:00
stack-source-repo Add pins and materialization for ghc-boot-packages and ghc-extra-packages (#546) 2020-04-20 13:27:52 +12:00
sublib-docs Add support for coverage (#762) 2020-09-29 11:56:24 +08:00
with-packages Spelling, typo and whitespace fixes (#833) 2020-08-31 11:08:25 +12:00
default.nix Add ghc8102-plutus as a compiler-nix-name (#848) 2020-10-21 17:04:47 +13:00
README.md Add cross-compiled musl libc builds of tests (#157) 2019-07-02 18:25:40 +10:00
regen.nix Spelling, typo and whitespace fixes (#833) 2020-08-31 11:08:25 +12:00
tests.sh Remove components.all (#776) 2020-07-21 16:06:54 +12:00
unit.nix Fix use of multiple subdirs in cabal.project (#790) 2020-07-28 14:19:58 +12:00
util.nix tests: Add more tests for "all" component merging 2019-02-07 09:39:12 +08:00

Haskell infrastructure test cases

To build the test cases, run from the test directory:

nix-build --no-out-link default.nix

To run all tests (includes impure tests), use the script:

./tests.sh

Generated code

If you change the test Cabal files or need to regenerate the code with nix-tools, then see regen.nix. Run it like this:

$(nix-build --no-out-link regen.nix)