0.02 s
$ /nix/store/vzx1mi9c0xfadmsm9dhd83d005cb1qs9-coreutils-9.8/bin/timeout --kill-after=15s 7200s /nix/store/99b1z08awpxj8b6mzggn59gp1shljnff-nix-2.34.5/bin/nix --extra-experimental-features nix-command --extra-experimental-features flakes --log-format internal-json build --no-link git+https://github.com/NorfairKing/sydtest?ref=parallel-coverage-discovery&rev=79a0dec3d00444ba296a1fa0088fb483ef4cab6b#checks.x86_64-linux.mutation-really-safe-money --print-build-logs
0.08 s
warning: ignoring untrusted flake configuration setting 'extra-substituters'.
0.08 s
Pass '--accept-flake-config' to trust it
0.08 s
warning: ignoring untrusted flake configuration setting 'extra-trusted-public-keys'.
0.08 s
Pass '--accept-flake-config' to trust it
0.11 s
1.60 s
Downloading cached really-safe-money-gen-source from https://cache.staging.nix-ci.com
1.60 s
Downloading cached genvalidity-vector-1.0.0.0-doc from https://cache.staging.nix-ci.com
1.60 s
Downloading cached sydtest-mutation-plugin-0.0.0.0-doc from https://cache.staging.nix-ci.com
1.60 s
Downloading cached really-safe-money-autodocodec-source from https://cache.staging.nix-ci.com
1.60 s
Downloading cached really-safe-money-source from https://cache.staging.nix-ci.com
1.72 s
Building genvalidity-sydtest-source
1.72 s
Progress: 0 of 11 built (1 building), 1 of 8 downloaded from cache (4 downloading)
1.72 s
Progress: 0 of 11 built (1 building), 2 of 8 downloaded from cache (3 downloading)
1.72 s
Progress: 0 of 11 built (1 building), 3 of 8 downloaded from cache (2 downloading)
1.72 s
Progress: 0 of 11 built (1 building), 4 of 8 downloaded from cache (1 downloading)
1.72 s
Progress: 0 of 11 built (1 building), 5 of 8 downloaded from cache
1.72 s
Downloading cached genvalidity-vector from https://cache.staging.nix-ci.com
1.72 s
Downloading cached sydtest-mutation-plugin from https://cache.staging.nix-ci.com
1.75 s
Progress: 0 of 8 built (1 building), 6 of 8 downloaded from cache (1 downloading)
1.77 s
Progress: 0 of 7 built (1 building), 7 of 8 downloaded from cache
1.77 s
Downloading cached really-safe-money from https://cache.staging.nix-ci.com
1.78 s
Waiting for lock on really-safe-money-0.0.0.0-manifest
1.84 s
Progress: 0 of 6 built (1 building), 8 of 8 downloaded from cache
1.89 s
Building really-safe-money-autodocodec
2.18 s
[genvalidity-sydtest-source] Phase: setupCompilerEnvironmentPhase
2.18 s
[genvalidity-sydtest-source] Build with /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3.
2.24 s
[really-safe-money-autodocodec] Phase: setupCompilerEnvironmentPhase
2.24 s
[really-safe-money-autodocodec] Build with /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3.
2.55 s
[really-safe-money-autodocodec] Phase: unpackPhase
2.56 s
[really-safe-money-autodocodec] unpacking source archive /nix/store/1srrgbbc2iqbr13sdgqq1i47z94qrqf2-really-safe-money-autodocodec-source-0.0.0.0/really-safe-money-autodocodec-0.0.0.0.tar.gz
2.56 s
[really-safe-money-autodocodec] source root is really-safe-money-autodocodec-0.0.0.0
2.57 s
[really-safe-money-autodocodec] setting SOURCE_DATE_EPOCH to timestamp 1778620619 of file "really-safe-money-autodocodec-0.0.0.0/test/Spec.hs"
2.58 s
[really-safe-money-autodocodec] Phase: patchPhase
2.59 s
[really-safe-money-autodocodec] Phase: compileBuildDriverPhase
2.59 s
[really-safe-money-autodocodec] setupCompileFlags: -package-db=/build/tmp.NdRouJDogQ/setup-package.conf.d -threaded
2.64 s
[really-safe-money-autodocodec] [1 of 2] Compiling Main ( Setup.hs, /build/tmp.NdRouJDogQ/Main.o )
2.69 s
[genvalidity-sydtest-source] Phase: unpackPhase
2.69 s
[really-safe-money-autodocodec] [2 of 2] Linking Setup
2.70 s
[genvalidity-sydtest-source] unpacking source archive /nix/store/dqdpwym3w17fcyylxh144v7wvc1c621z-genvalidity-sydtest
2.71 s
[genvalidity-sydtest-source] source root is genvalidity-sydtest
2.72 s
[genvalidity-sydtest-source] Phase: patchPhase
2.73 s
[genvalidity-sydtest-source] Phase: compileBuildDriverPhase
2.73 s
[genvalidity-sydtest-source] setupCompileFlags: -package-db=/build/tmp.dDWW7WBEZq/setup-package.conf.d -threaded
2.79 s
[genvalidity-sydtest-source] [1 of 2] Compiling Main ( /nix/store/4mdp8nhyfddh7bllbi7xszz7k9955n79-Setup.hs, /build/tmp.dDWW7WBEZq/Main.o )
2.83 s
[genvalidity-sydtest-source] [2 of 2] Linking Setup
4.00 s
[really-safe-money-autodocodec] Phase: updateAutotoolsGnuConfigScriptsPhase
4.01 s
[really-safe-money-autodocodec] Phase: configurePhase
4.02 s
[really-safe-money-autodocodec] configureFlags: --verbose --prefix=/nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0 --libdir=$prefix/lib/$compiler/lib --libsubdir=$abi/$libname --with-gcc=gcc --package-db=/build/tmp.NdRouJDogQ/package.conf.d --ghc-option=-j16 --ghc-option=+RTS --ghc-option=-A64M --ghc-option=-RTS --enable-library-profiling --profiling-detail=exported-functions --disable-profiling --enable-shared --disable-coverage --disable-static --disable-executable-dynamic --disable-tests --enable-benchmarks --enable-library-vanilla --disable-library-for-ghci --enable-split-sections --enable-library-stripping --enable-executable-stripping --ghc-options=-O2 --ghc-options=-Wall --ghc-options=-Wincomplete-uni-patterns --ghc-options=-Wincomplete-record-updates --ghc-options=-Wpartial-fields --ghc-options=-Widentities --ghc-options=-Wredundant-constraints --ghc-options=-Wcpp-undef --ghc-options=-Werror --ghc-options=-fplugin-opt=Test.Syd.Mutation.Plugin:--debug --disable-optimization --ghc-option=-j1 --ghc-option=+RTS --ghc-option=-A32M --ghc-option=-M16g --ghc-option=-RTS --extra-lib-dirs=/nix/store/ffyzkisqs4vc4mg28bwwlyqjf8i9ph6b-ncurses-6.5/lib --extra-lib-dirs=/nix/store/n28qgdj8c1q41kf7n4y1jxa6ckp85m3c-libffi-3.5.2/lib --extra-lib-dirs=/nix/store/1b6h99dw7bk4wbn77kbalih42zbc67m1-elfutils-0.194/lib --extra-lib-dirs=/nix/store/hi0ar880110k6jsmmili7dh1gq3cg2a9-gmp-with-cxx-6.3.0/lib --extra-lib-dirs=/nix/store/g09cflpnp4g80q56sj9dng1qzv4v4ybc-numactl-2.0.18/lib --extra-lib-dirs=/nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/lib
4.02 s
[really-safe-money-autodocodec] Using Parsec parser
4.02 s
[really-safe-money-autodocodec] Configuring really-safe-money-autodocodec-0.0.0.0...
4.14 s
[genvalidity-sydtest-source] Phase: updateAutotoolsGnuConfigScriptsPhase
4.15 s
[genvalidity-sydtest-source] Phase: configurePhase
4.16 s
[genvalidity-sydtest-source] configureFlags: --verbose --prefix=/nix/store/ydlw2a7lpdv928ai6dlh28q4qb1059jn-genvalidity-sydtest-source-1.0.1.0 --libdir=$prefix/lib/$compiler/lib --libsubdir=$abi/$libname --docdir=/share/doc/genvalidity-sydtest-1.0.1.0 --with-gcc=gcc --package-db=/build/tmp.dDWW7WBEZq/package.conf.d --ghc-option=-j16 --ghc-option=+RTS --ghc-option=-A64M --ghc-option=-RTS --enable-library-profiling --profiling-detail=exported-functions --disable-profiling --enable-shared --disable-coverage --enable-static --disable-executable-dynamic --enable-tests --disable-benchmarks --enable-library-vanilla --disable-library-for-ghci --enable-split-sections --enable-library-stripping --enable-executable-stripping --ghc-option=-haddock --ghc-option=-Wall --ghc-option=-Werror --extra-lib-dirs=/nix/store/ffyzkisqs4vc4mg28bwwlyqjf8i9ph6b-ncurses-6.5/lib --extra-lib-dirs=/nix/store/n28qgdj8c1q41kf7n4y1jxa6ckp85m3c-libffi-3.5.2/lib --extra-lib-dirs=/nix/store/1b6h99dw7bk4wbn77kbalih42zbc67m1-elfutils-0.194/lib --extra-lib-dirs=/nix/store/hi0ar880110k6jsmmili7dh1gq3cg2a9-gmp-with-cxx-6.3.0/lib --extra-lib-dirs=/nix/store/g09cflpnp4g80q56sj9dng1qzv4v4ybc-numactl-2.0.18/lib
4.17 s
[genvalidity-sydtest-source] Using Parsec parser
4.17 s
[genvalidity-sydtest-source] Configuring genvalidity-sydtest-1.0.1.0...
4.68 s
[really-safe-money-autodocodec] Dependency autodocodec: using autodocodec-0.5.0.0
4.68 s
[really-safe-money-autodocodec] Dependency base >=4.7 && <5: using base-4.20.2.0
4.68 s
[really-safe-money-autodocodec] Dependency really-safe-money: using really-safe-money-0.0.0.0
4.68 s
[really-safe-money-autodocodec] Source component graph: component lib
4.68 s
[really-safe-money-autodocodec] Configured component graph:
4.68 s
[really-safe-money-autodocodec] component really-safe-money-autodocodec-0.0.0.0-6uQz3PYxbwUCTmvro4lDZk
4.68 s
[really-safe-money-autodocodec] include autodocodec-0.5.0.0-1mMvp4WI6JDKv9IH8Klk8Y
4.68 s
[really-safe-money-autodocodec] include base-4.20.2.0-64da
4.68 s
[really-safe-money-autodocodec] include really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9
4.69 s
[really-safe-money-autodocodec] Linked component graph:
4.69 s
[really-safe-money-autodocodec] unit really-safe-money-autodocodec-0.0.0.0-6uQz3PYxbwUCTmvro4lDZk
4.69 s
[really-safe-money-autodocodec] include autodocodec-0.5.0.0-1mMvp4WI6JDKv9IH8Klk8Y
4.69 s
[really-safe-money-autodocodec] include base-4.20.2.0-64da
4.69 s
[really-safe-money-autodocodec] include really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9
4.69 s
[really-safe-money-autodocodec] Money.Account.Codec=really-safe-money-autodocodec-0.0.0.0-6uQz3PYxbwUCTmvro4lDZk:Money.Account.Codec,Money.AccountOf.Codec=really-safe-money-autodocodec-0.0.0.0-6uQz3PYxbwUCTmvro4lDZk:Money.AccountOf.Codec,Money.Amount.Codec=really-safe-money-autodocodec-0.0.0.0-6uQz3PYxbwUCTmvro4lDZk:Money.Amount.Codec,Money.AmountOf.Codec=really-safe-money-autodocodec-0.0.0.0-6uQz3PYxbwUCTmvro4lDZk:Money.AmountOf.Codec,Money.QuantisationFactor.Codec=really-safe-money-autodocodec-0.0.0.0-6uQz3PYxbwUCTmvro4lDZk:Money.QuantisationFactor.Codec,Numeric.DecimalLiteral.Codec=really-safe-money-autodocodec-0.0.0.0-6uQz3PYxbwUCTmvro4lDZk:Numeric.DecimalLiteral.Codec
4.69 s
[really-safe-money-autodocodec] Ready component graph:
4.69 s
[really-safe-money-autodocodec] definite really-safe-money-autodocodec-0.0.0.0-6uQz3PYxbwUCTmvro4lDZk
4.69 s
[really-safe-money-autodocodec] depends autodocodec-0.5.0.0-1mMvp4WI6JDKv9IH8Klk8Y
4.69 s
[really-safe-money-autodocodec] depends base-4.20.2.0-64da
4.69 s
[really-safe-money-autodocodec] depends really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9
4.69 s
[really-safe-money-autodocodec] Using Cabal-3.12.1.0 compiled by ghc-9.10
4.69 s
[really-safe-money-autodocodec] Using compiler: ghc-9.10.3
4.69 s
[really-safe-money-autodocodec] Using install prefix:
4.69 s
[really-safe-money-autodocodec] /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0
4.69 s
[really-safe-money-autodocodec] Executables installed in:
4.69 s
[really-safe-money-autodocodec] /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0/bin
4.69 s
[really-safe-money-autodocodec] Libraries installed in:
4.69 s
[really-safe-money-autodocodec] /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6/really-safe-money-autodocodec-0.0.0.0-6uQz3PYxbwUCTmvro4lDZk
4.69 s
[really-safe-money-autodocodec] Dynamic Libraries installed in:
4.69 s
[really-safe-money-autodocodec] /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6
4.69 s
[really-safe-money-autodocodec] Private executables installed in:
4.69 s
[really-safe-money-autodocodec] /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0/libexec/x86_64-linux-ghc-9.10.3-05f6/really-safe-money-autodocodec-0.0.0.0
4.69 s
[really-safe-money-autodocodec] Data files installed in:
4.69 s
[really-safe-money-autodocodec] /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0/share/x86_64-linux-ghc-9.10.3-05f6/really-safe-money-autodocodec-0.0.0.0
4.69 s
[really-safe-money-autodocodec] Documentation installed in:
4.69 s
[really-safe-money-autodocodec] /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0/share/doc/x86_64-linux-ghc-9.10.3-05f6/really-safe-money-autodocodec-0.0.0.0
4.69 s
[really-safe-money-autodocodec] Configuration files installed in:
4.69 s
[really-safe-money-autodocodec] /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0/etc
4.69 s
[really-safe-money-autodocodec] No alex found
4.69 s
[really-safe-money-autodocodec] Using ar found on system at:
4.69 s
[really-safe-money-autodocodec] /nix/store/iz5lckcsg66r223si2gck7csk2hihj0m-binutils-wrapper-2.44/bin/ar
4.69 s
[really-safe-money-autodocodec] No c2hs found
4.69 s
[really-safe-money-autodocodec] No cpphs found
4.69 s
[really-safe-money-autodocodec] No doctest found
4.69 s
[really-safe-money-autodocodec] Using gcc version 14.3.0 given by user at:
4.69 s
[really-safe-money-autodocodec] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/gcc
4.69 s
[really-safe-money-autodocodec] Using ghc version 9.10.3 found on system at:
4.69 s
[really-safe-money-autodocodec] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/ghc
4.69 s
[really-safe-money-autodocodec] Using ghc-pkg version 9.10.3 found on system at:
4.69 s
[really-safe-money-autodocodec] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/ghc-pkg-9.10.3
4.69 s
[really-safe-money-autodocodec] No ghcjs found
4.69 s
[really-safe-money-autodocodec] No ghcjs-pkg found
4.69 s
[really-safe-money-autodocodec] No greencard found
4.69 s
[really-safe-money-autodocodec] Using haddock version 2.31.1 found on system at:
4.69 s
[really-safe-money-autodocodec] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/haddock-ghc-9.10.3
4.69 s
[really-safe-money-autodocodec] No happy found
4.69 s
[really-safe-money-autodocodec] Using haskell-suite found on system at: haskell-suite-dummy-location
4.69 s
[really-safe-money-autodocodec] Using haskell-suite-pkg found on system at: haskell-suite-pkg-dummy-location
4.69 s
[really-safe-money-autodocodec] No hmake found
4.69 s
[really-safe-money-autodocodec] Using hpc version 0.69 found on system at:
4.69 s
[really-safe-money-autodocodec] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/hpc-ghc-9.10.3
4.69 s
[really-safe-money-autodocodec] Using hsc2hs version 0.68.10 found on system at:
4.69 s
[really-safe-money-autodocodec] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/hsc2hs-ghc-9.10.3
4.69 s
[really-safe-money-autodocodec] Using hscolour version 1.25 found on system at:
4.69 s
[really-safe-money-autodocodec] /nix/store/f755skyzf4jvfx3crwq9mmh3x4lsaz8i-hscolour-1.25/bin/HsColour
4.69 s
[really-safe-money-autodocodec] No jhc found
4.69 s
[really-safe-money-autodocodec] Using ld found on system at:
4.69 s
[really-safe-money-autodocodec] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/ld
4.69 s
[really-safe-money-autodocodec] No pkg-config found
4.69 s
[really-safe-money-autodocodec] Using runghc version 9.10.3 found on system at:
4.69 s
[really-safe-money-autodocodec] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/runghc-9.10.3
4.69 s
[really-safe-money-autodocodec] Using strip version 2.44 found on system at:
4.69 s
[really-safe-money-autodocodec] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/strip
4.69 s
[really-safe-money-autodocodec] Using tar found on system at:
4.69 s
[really-safe-money-autodocodec] /nix/store/xl6pd2spjajwcpq09fnmnjv5psqmlmma-gnutar-1.35/bin/tar
4.69 s
[really-safe-money-autodocodec] No uhc found
4.83 s
[genvalidity-sydtest-source] Dependency QuickCheck: using QuickCheck-2.15.0.1
4.83 s
[genvalidity-sydtest-source] Dependency base >=4.7 && <5: using base-4.20.2.0
4.83 s
[genvalidity-sydtest-source] Dependency genvalidity >=1.0: using genvalidity-1.1.1.0
4.83 s
[genvalidity-sydtest-source] Dependency sydtest: using sydtest-0.23.0.2
4.83 s
[genvalidity-sydtest-source] Dependency QuickCheck: using QuickCheck-2.15.0.1
4.83 s
[genvalidity-sydtest-source] Dependency base >=4.7 && <5: using base-4.20.2.0
4.83 s
[genvalidity-sydtest-source] Dependency genvalidity: using genvalidity-1.1.1.0
4.83 s
[genvalidity-sydtest-source] Dependency genvalidity-sydtest: using genvalidity-sydtest-1.0.1.0
4.83 s
[genvalidity-sydtest-source] Dependency sydtest: using sydtest-0.23.0.2
4.83 s
[genvalidity-sydtest-source] Source component graph:
4.83 s
[genvalidity-sydtest-source] component lib
4.83 s
[genvalidity-sydtest-source] component test:genvalidity-sydtest-test dependency lib
4.83 s
[genvalidity-sydtest-source] Configured component graph:
4.83 s
[genvalidity-sydtest-source] component genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
4.83 s
[genvalidity-sydtest-source] include QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
4.83 s
[genvalidity-sydtest-source] include base-4.20.2.0-64da
4.83 s
[genvalidity-sydtest-source] include genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
4.83 s
[genvalidity-sydtest-source] include sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
4.83 s
[genvalidity-sydtest-source] component genvalidity-sydtest-1.0.1.0-1ny4a51zXrh2vGWfyFa5xL-genvalidity-sydtest-test
4.83 s
[genvalidity-sydtest-source] include QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
4.83 s
[genvalidity-sydtest-source] include base-4.20.2.0-64da
4.83 s
[genvalidity-sydtest-source] include genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
4.83 s
[genvalidity-sydtest-source] include genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
4.83 s
[genvalidity-sydtest-source] include sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
4.83 s
[genvalidity-sydtest-source] Linked component graph:
4.83 s
[genvalidity-sydtest-source] unit genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
4.83 s
[genvalidity-sydtest-source] include QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
4.83 s
[genvalidity-sydtest-source] include base-4.20.2.0-64da
4.83 s
[genvalidity-sydtest-source] include genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
4.83 s
[genvalidity-sydtest-source] include sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
4.83 s
[genvalidity-sydtest-source] Test.Syd.Validity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity,Test.Syd.Validity.Applicative=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Applicative,Test.Syd.Validity.Arbitrary=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Arbitrary,Test.Syd.Validity.Eq=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Eq,Test.Syd.Validity.Functions=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Functions,Test.Syd.Validity.Functions.CanFail=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Functions.CanFail,Test.Syd.Validity.Functions.Equivalence=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Functions.Equivalence,Test.Syd.Validity.Functions.Idempotence=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Functions.Idempotence,Test.Syd.Validity.Functions.Inverse=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Functions.Inverse,Test.Syd.Validity.Functions.Validity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Functions.Validity,Test.Syd.Validity.Functor=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Functor,Test.Syd.Validity.GenValidity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.GenValidity,Test.Syd.Validity.GenValidity.Property=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.GenValidity.Property,Test.Syd.Validity.Monad=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Monad,Test.Syd.Validity.Monoid=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Monoid,Test.Syd.Validity.Operations=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Operations,Test.Syd.Validity.Operations.Associativity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Operations.Associativity,Test.Syd.Validity.Operations.Commutativity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Operations.Commutativity,Test.Syd.Validity.Operations.Identity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Operations.Identity,Test.Syd.Validity.Ord=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Ord,Test.Syd.Validity.Property=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Property,Test.Syd.Validity.Property.Utils=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Property.Utils,Test.Syd.Validity.Relations=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Relations,Test.Syd.Validity.Relations.Antireflexivity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Relations.Antireflexivity,Test.Syd.Validity.Relations.Antisymmetry=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Relations.Antisymmetry,Test.Syd.Validity.Relations.Reflexivity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Relations.Reflexivity,Test.Syd.Validity.Relations.Symmetry=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Relations.Symmetry,Test.Syd.Validity.Relations.Transitivity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Relations.Transitivity,Test.Syd.Validity.Show=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Show,Test.Syd.Validity.Shrinking=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Shrinking,Test.Syd.Validity.Shrinking.Property=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Shrinking.Property,Test.Syd.Validity.Types=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Types,Test.Syd.Validity.Utils=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Utils
4.83 s
[genvalidity-sydtest-source] unit genvalidity-sydtest-1.0.1.0-1ny4a51zXrh2vGWfyFa5xL-genvalidity-sydtest-test
4.83 s
[genvalidity-sydtest-source] include QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
4.83 s
[genvalidity-sydtest-source] include base-4.20.2.0-64da
4.83 s
[genvalidity-sydtest-source] include genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
4.83 s
[genvalidity-sydtest-source] include genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
4.83 s
[genvalidity-sydtest-source] include sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
4.83 s
[genvalidity-sydtest-source] Ready component graph:
4.83 s
[genvalidity-sydtest-source] definite genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
4.83 s
[genvalidity-sydtest-source] depends QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
4.83 s
[genvalidity-sydtest-source] depends base-4.20.2.0-64da
4.83 s
[genvalidity-sydtest-source] depends genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
4.83 s
[genvalidity-sydtest-source] depends sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
4.83 s
[genvalidity-sydtest-source] definite genvalidity-sydtest-1.0.1.0-1ny4a51zXrh2vGWfyFa5xL-genvalidity-sydtest-test
4.83 s
[genvalidity-sydtest-source] depends QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
4.83 s
[genvalidity-sydtest-source] depends base-4.20.2.0-64da
4.83 s
[genvalidity-sydtest-source] depends genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
4.83 s
[genvalidity-sydtest-source] depends genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
4.83 s
[genvalidity-sydtest-source] depends sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
4.83 s
[genvalidity-sydtest-source] Using Cabal-3.12.1.0 compiled by ghc-9.10
4.83 s
[genvalidity-sydtest-source] Using compiler: ghc-9.10.3
4.83 s
[genvalidity-sydtest-source] Using install prefix:
4.83 s
[genvalidity-sydtest-source] /nix/store/ydlw2a7lpdv928ai6dlh28q4qb1059jn-genvalidity-sydtest-source-1.0.1.0
4.84 s
[genvalidity-sydtest-source] Executables installed in:
4.84 s
[genvalidity-sydtest-source] /nix/store/ydlw2a7lpdv928ai6dlh28q4qb1059jn-genvalidity-sydtest-source-1.0.1.0/bin
4.84 s
[genvalidity-sydtest-source] Libraries installed in:
4.84 s
[genvalidity-sydtest-source] /nix/store/ydlw2a7lpdv928ai6dlh28q4qb1059jn-genvalidity-sydtest-source-1.0.1.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6/genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
4.84 s
[genvalidity-sydtest-source] Dynamic Libraries installed in:
4.84 s
[genvalidity-sydtest-source] /nix/store/ydlw2a7lpdv928ai6dlh28q4qb1059jn-genvalidity-sydtest-source-1.0.1.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6
4.84 s
[genvalidity-sydtest-source] Private executables installed in:
4.84 s
[genvalidity-sydtest-source] /nix/store/ydlw2a7lpdv928ai6dlh28q4qb1059jn-genvalidity-sydtest-source-1.0.1.0/libexec/x86_64-linux-ghc-9.10.3-05f6/genvalidity-sydtest-1.0.1.0
4.84 s
[genvalidity-sydtest-source] Data files installed in:
4.84 s
[genvalidity-sydtest-source] /nix/store/ydlw2a7lpdv928ai6dlh28q4qb1059jn-genvalidity-sydtest-source-1.0.1.0/share/x86_64-linux-ghc-9.10.3-05f6/genvalidity-sydtest-1.0.1.0
4.84 s
[genvalidity-sydtest-source] Documentation installed in: /share/doc/genvalidity-sydtest-1.0.1.0
4.84 s
[genvalidity-sydtest-source] Configuration files installed in:
4.84 s
[genvalidity-sydtest-source] /nix/store/ydlw2a7lpdv928ai6dlh28q4qb1059jn-genvalidity-sydtest-source-1.0.1.0/etc
4.84 s
[genvalidity-sydtest-source] No alex found
4.84 s
[genvalidity-sydtest-source] Using ar found on system at:
4.84 s
[genvalidity-sydtest-source] /nix/store/iz5lckcsg66r223si2gck7csk2hihj0m-binutils-wrapper-2.44/bin/ar
4.84 s
[genvalidity-sydtest-source] No c2hs found
4.84 s
[genvalidity-sydtest-source] No cpphs found
4.84 s
[genvalidity-sydtest-source] No doctest found
4.84 s
[genvalidity-sydtest-source] Using gcc version 14.3.0 given by user at:
4.84 s
[genvalidity-sydtest-source] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/gcc
4.84 s
[genvalidity-sydtest-source] Using ghc version 9.10.3 found on system at:
4.84 s
[genvalidity-sydtest-source] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/ghc
4.84 s
[genvalidity-sydtest-source] Using ghc-pkg version 9.10.3 found on system at:
4.84 s
[genvalidity-sydtest-source] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/ghc-pkg-9.10.3
4.84 s
[genvalidity-sydtest-source] No ghcjs found
4.84 s
[genvalidity-sydtest-source] No ghcjs-pkg found
4.84 s
[genvalidity-sydtest-source] No greencard found
4.84 s
[genvalidity-sydtest-source] Using haddock version 2.31.1 found on system at:
4.86 s
[genvalidity-sydtest-source] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/haddock-ghc-9.10.3
4.86 s
[genvalidity-sydtest-source] No happy found
4.86 s
[genvalidity-sydtest-source] Using haskell-suite found on system at: haskell-suite-dummy-location
4.86 s
[genvalidity-sydtest-source] Using haskell-suite-pkg found on system at: haskell-suite-pkg-dummy-location
4.86 s
[genvalidity-sydtest-source] No hmake found
4.86 s
[genvalidity-sydtest-source] Using hpc version 0.69 found on system at:
4.86 s
[genvalidity-sydtest-source] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/hpc-ghc-9.10.3
4.86 s
[genvalidity-sydtest-source] Using hsc2hs version 0.68.10 found on system at:
4.86 s
[genvalidity-sydtest-source] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/hsc2hs-ghc-9.10.3
4.86 s
[genvalidity-sydtest-source] Using hscolour version 1.25 found on system at:
4.86 s
[genvalidity-sydtest-source] /nix/store/f755skyzf4jvfx3crwq9mmh3x4lsaz8i-hscolour-1.25/bin/HsColour
4.86 s
[genvalidity-sydtest-source] No jhc found
4.86 s
[genvalidity-sydtest-source] Using ld found on system at:
4.86 s
[genvalidity-sydtest-source] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/ld
4.86 s
[genvalidity-sydtest-source] No pkg-config found
4.86 s
[genvalidity-sydtest-source] Using runghc version 9.10.3 found on system at:
4.86 s
[genvalidity-sydtest-source] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/runghc-9.10.3
4.86 s
[genvalidity-sydtest-source] Using strip version 2.44 found on system at:
4.86 s
[genvalidity-sydtest-source] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/strip
4.86 s
[genvalidity-sydtest-source] Using tar found on system at:
4.86 s
[genvalidity-sydtest-source] /nix/store/xl6pd2spjajwcpq09fnmnjv5psqmlmma-gnutar-1.35/bin/tar
4.86 s
[genvalidity-sydtest-source] No uhc found
4.97 s
[really-safe-money-autodocodec] Phase: buildPhase
4.97 s
[really-safe-money-autodocodec] mutation-nix: setting MUTATION_MANIFEST_DIR=/nix/store/s9m0jw9z271i7scnw7646i45l8qn0bhb-really-safe-money-autodocodec-0.0.0.0-manifest
5.03 s
[really-safe-money-autodocodec] Preprocessing library for really-safe-money-autodocodec-0.0.0.0...
5.04 s
[really-safe-money-autodocodec] Building library for really-safe-money-autodocodec-0.0.0.0...
5.20 s
[really-safe-money-autodocodec] [1 of 7] Compiling Money.Account.Codec ( src/Money/Account/Codec.hs, dist/build/Money/Account/Codec.o, dist/build/Money/Account/Codec.dyn_o )
5.28 s
[genvalidity-sydtest-source] Phase: buildPhase
5.28 s
[really-safe-money-autodocodec] mutation: instrumenting Money.Account.Codec
5.28 s
[really-safe-money-autodocodec] mutation: recording Money.Account.Codec/ListLit at 51:33-76
5.28 s
[really-safe-money-autodocodec] mutation: recording Money.Account.Codec/ListLit at 51:33-76
5.29 s
[genvalidity-sydtest-source] Distribution quality warnings:
5.29 s
[genvalidity-sydtest-source] [no-description] No 'description' field.
5.29 s
[genvalidity-sydtest-source] [missing-upper-bounds] On library, these packages miss upper bounds:
5.29 s
[genvalidity-sydtest-source] - QuickCheck
5.29 s
[genvalidity-sydtest-source] - genvalidity
5.29 s
[genvalidity-sydtest-source] - sydtest
5.29 s
[genvalidity-sydtest-source] Please add them. There is more information at https://pvp.haskell.org/
5.29 s
[genvalidity-sydtest-source] Building source dist for genvalidity-sydtest-1.0.1.0...
5.31 s
[genvalidity-sydtest-source] Source tarball created: dist/genvalidity-sydtest-1.0.1.0.tar.gz
5.32 s
[genvalidity-sydtest-source] Phase: checkPhase
5.32 s
[genvalidity-sydtest-source] Phase: haddockPhase
5.33 s
[genvalidity-sydtest-source] Phase: installPhase
5.33 s
[genvalidity-sydtest-source] Phase: fixupPhase
5.38 s
[post-build-hook] Uploading to cachix cache "sydtest": /nix/store/ydlw2a7lpdv928ai6dlh28q4qb1059jn-genvalidity-sydtest-source-1.0.1.0
5.76 s
[post-build-hook] Pushing 1 paths (0 are already present) using zstd to cache sydtest ⏳
5.76 s
[post-build-hook]
6.14 s
[post-build-hook] Pushing /nix/store/ydlw2a7lpdv928ai6dlh28q4qb1059jn-genvalidity-sydtest-source-1.0.1.0 (18.23 KiB)
7.02 s
[post-build-hook]
7.02 s
[post-build-hook] All done.
7.04 s
[post-build-hook] Uploading to the NixCI staging cache: /nix/store/ydlw2a7lpdv928ai6dlh28q4qb1059jn-genvalidity-sydtest-source-1.0.1.0
7.12 s
[post-build-hook] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
7.13 s
[post-build-hook] copying 1 paths...
7.13 s
[post-build-hook] copying path '/nix/store/ydlw2a7lpdv928ai6dlh28q4qb1059jn-genvalidity-sydtest-source-1.0.1.0' to 'https://cache.staging.nix-ci.com'...
7.44 s
[post-build-hook] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
7.71 s
[post-build-hook] copying 1 paths...
7.71 s
[post-build-hook] copying path '/nix/store/y7dmgzd1lq3pm84dh78sq3zn32yr2a0g-genvalidity-sydtest-source-1.0.1.0.drv' to 'https://cache.staging.nix-ci.com'...
8.30 s
Progress: 1 of 6 built (1 building), 8 of 8 downloaded from cache
8.35 s
Building genvalidity-sydtest
8.36 s
[really-safe-money-autodocodec] [2 of 7] Compiling Money.AccountOf.Codec ( src/Money/AccountOf/Codec.hs, dist/build/Money/AccountOf/Codec.o, dist/build/Money/AccountOf/Codec.dyn_o )
8.36 s
[really-safe-money-autodocodec] mutation: instrumenting Money.AccountOf.Codec
8.36 s
[really-safe-money-autodocodec] [3 of 7] Compiling Money.Amount.Codec ( src/Money/Amount/Codec.hs, dist/build/Money/Amount/Codec.o, dist/build/Money/Amount/Codec.dyn_o )
8.36 s
[really-safe-money-autodocodec] mutation: instrumenting Money.Amount.Codec
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ListLit at 47:33-75
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ListLit at 47:33-75
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ConstBool at 49:12-59
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ConstBool at 49:12-59
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/Negate at 49:12-59
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ListLit at 50:31-84
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ListLit at 50:31-84
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ConstBool at 52:16-63
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ConstBool at 52:16-63
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/Negate at 52:16-63
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ListLit at 53:35-90
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ListLit at 53:35-90
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/CondFlip at 52:13-86
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/CondFlip at 49:9-86
8.36 s
[really-safe-money-autodocodec] [4 of 7] Compiling Money.AmountOf.Codec ( src/Money/AmountOf/Codec.hs, dist/build/Money/AmountOf/Codec.o, dist/build/Money/AmountOf/Codec.dyn_o )
8.36 s
[really-safe-money-autodocodec] mutation: instrumenting Money.AmountOf.Codec
8.36 s
[really-safe-money-autodocodec] [5 of 7] Compiling Money.QuantisationFactor.Codec ( src/Money/QuantisationFactor/Codec.hs, dist/build/Money/QuantisationFactor/Codec.o, dist/build/Money/QuantisationFactor/Codec.dyn_o )
8.36 s
[really-safe-money-autodocodec] mutation: instrumenting Money.QuantisationFactor.Codec
8.36 s
[really-safe-money-autodocodec] [6 of 7] Compiling Numeric.DecimalLiteral.Codec ( src/Numeric/DecimalLiteral/Codec.hs, dist/build/Numeric/DecimalLiteral/Codec.o, dist/build/Numeric/DecimalLiteral/Codec.dyn_o )
8.36 s
[really-safe-money-autodocodec] mutation: instrumenting Numeric.DecimalLiteral.Codec
8.36 s
[really-safe-money-autodocodec] mutation: recording Numeric.DecimalLiteral.Codec/ListLit at 40:33-82
8.36 s
[really-safe-money-autodocodec] mutation: recording Numeric.DecimalLiteral.Codec/ListLit at 40:33-82
8.36 s
[really-safe-money-autodocodec] [7 of 7] Compiling Paths_really_safe_money_autodocodec ( dist/build/autogen/Paths_really_safe_money_autodocodec.hs, dist/build/Paths_really_safe_money_autodocodec.o, dist/build/Paths_really_safe_money_autodocodec.dyn_o )
8.36 s
[really-safe-money-autodocodec] [1 of 7] Compiling Money.Account.Codec ( src/Money/Account/Codec.hs, dist/build/Money/Account/Codec.p_o )
8.36 s
[really-safe-money-autodocodec] mutation: instrumenting Money.Account.Codec
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Account.Codec/ListLit at 51:33-76
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Account.Codec/ListLit at 51:33-76
8.36 s
[really-safe-money-autodocodec] [2 of 7] Compiling Money.AccountOf.Codec ( src/Money/AccountOf/Codec.hs, dist/build/Money/AccountOf/Codec.p_o )
8.36 s
[really-safe-money-autodocodec] mutation: instrumenting Money.AccountOf.Codec
8.36 s
[really-safe-money-autodocodec] [3 of 7] Compiling Money.Amount.Codec ( src/Money/Amount/Codec.hs, dist/build/Money/Amount/Codec.p_o )
8.36 s
[really-safe-money-autodocodec] mutation: instrumenting Money.Amount.Codec
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ListLit at 47:33-75
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ListLit at 47:33-75
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ConstBool at 49:12-59
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ConstBool at 49:12-59
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/Negate at 49:12-59
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ListLit at 50:31-84
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ListLit at 50:31-84
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ConstBool at 52:16-63
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ConstBool at 52:16-63
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/Negate at 52:16-63
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ListLit at 53:35-90
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/ListLit at 53:35-90
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/CondFlip at 52:13-86
8.36 s
[really-safe-money-autodocodec] mutation: recording Money.Amount.Codec/CondFlip at 49:9-86
8.36 s
[really-safe-money-autodocodec] [4 of 7] Compiling Money.AmountOf.Codec ( src/Money/AmountOf/Codec.hs, dist/build/Money/AmountOf/Codec.p_o )
8.36 s
[really-safe-money-autodocodec] mutation: instrumenting Money.AmountOf.Codec
8.36 s
[really-safe-money-autodocodec] [5 of 7] Compiling Money.QuantisationFactor.Codec ( src/Money/QuantisationFactor/Codec.hs, dist/build/Money/QuantisationFactor/Codec.p_o )
8.36 s
[really-safe-money-autodocodec] mutation: instrumenting Money.QuantisationFactor.Codec
8.42 s
Building really-safe-money
8.42 s
[really-safe-money-autodocodec] [6 of 7] Compiling Numeric.DecimalLiteral.Codec ( src/Numeric/DecimalLiteral/Codec.hs, dist/build/Numeric/DecimalLiteral/Codec.p_o )
8.42 s
[really-safe-money-autodocodec] mutation: instrumenting Numeric.DecimalLiteral.Codec
8.42 s
[really-safe-money-autodocodec] mutation: recording Numeric.DecimalLiteral.Codec/ListLit at 40:33-82
8.42 s
[really-safe-money-autodocodec] mutation: recording Numeric.DecimalLiteral.Codec/ListLit at 40:33-82
8.43 s
[really-safe-money-autodocodec] [7 of 7] Compiling Paths_really_safe_money_autodocodec ( dist/build/autogen/Paths_really_safe_money_autodocodec.hs, dist/build/Paths_really_safe_money_autodocodec.p_o )
8.71 s
[really-safe-money] Phase: setupCompilerEnvironmentPhase
8.71 s
[really-safe-money] Build with /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3.
8.76 s
[genvalidity-sydtest] Phase: setupCompilerEnvironmentPhase
8.76 s
[genvalidity-sydtest] Build with /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3.
8.85 s
[really-safe-money-autodocodec] Warning: ignoring unrecognised input `dist/build/Money/Account/Codec.dyn_o'
8.85 s
[really-safe-money-autodocodec] Warning: ignoring unrecognised input `dist/build/Money/AccountOf/Codec.dyn_o'
8.85 s
[really-safe-money-autodocodec] Warning: ignoring unrecognised input `dist/build/Money/Amount/Codec.dyn_o'
8.85 s
[really-safe-money-autodocodec] Warning: ignoring unrecognised input `dist/build/Money/AmountOf/Codec.dyn_o'
8.85 s
[really-safe-money-autodocodec] Warning: ignoring unrecognised input `dist/build/Money/QuantisationFactor/Codec.dyn_o'
8.85 s
[really-safe-money-autodocodec] Warning: ignoring unrecognised input `dist/build/Numeric/DecimalLiteral/Codec.dyn_o'
8.85 s
[really-safe-money-autodocodec] Warning: ignoring unrecognised input `dist/build/Paths_really_safe_money_autodocodec.dyn_o'
8.98 s
[really-safe-money] Phase: unpackPhase
8.99 s
[really-safe-money] unpacking source archive /nix/store/pxkha6z3d3bjfgkdar4ma3wx2c1f8pmm-really-safe-money-source-0.0.0.0/really-safe-money-0.0.0.0.tar.gz
8.99 s
[really-safe-money] source root is really-safe-money-0.0.0.0
9.00 s
[really-safe-money] setting SOURCE_DATE_EPOCH to timestamp 1778358092 of file "really-safe-money-0.0.0.0/src/Numeric/DecimalLiteral.hs"
9.00 s
[really-safe-money] Phase: patchPhase
9.01 s
[really-safe-money] Phase: compileBuildDriverPhase
9.02 s
[really-safe-money] setupCompileFlags: -package-db=/build/tmp.X7Bw0rIyHa/setup-package.conf.d -threaded
9.07 s
[really-safe-money] [1 of 2] Compiling Main ( Setup.hs, /build/tmp.X7Bw0rIyHa/Main.o )
9.13 s
[really-safe-money] [2 of 2] Linking Setup
9.27 s
[genvalidity-sydtest] Phase: unpackPhase
9.27 s
[genvalidity-sydtest] unpacking source archive /nix/store/ydlw2a7lpdv928ai6dlh28q4qb1059jn-genvalidity-sydtest-source-1.0.1.0/genvalidity-sydtest-1.0.1.0.tar.gz
9.28 s
[genvalidity-sydtest] source root is genvalidity-sydtest-1.0.1.0
9.28 s
[genvalidity-sydtest] setting SOURCE_DATE_EPOCH to timestamp 1778666387 of file "genvalidity-sydtest-1.0.1.0/test/Test/Syd/Validity/ShrinkingSpec.hs"
9.29 s
[genvalidity-sydtest] warning: file "genvalidity-sydtest-1.0.1.0/test/Test/Syd/Validity/ShrinkingSpec.hs" may be generated; SOURCE_DATE_EPOCH may be non-deterministic
9.29 s
[genvalidity-sydtest] Phase: patchPhase
9.30 s
[genvalidity-sydtest] Phase: compileBuildDriverPhase
9.30 s
[genvalidity-sydtest] setupCompileFlags: -package-db=/build/tmp.AcNT2VnVfD/setup-package.conf.d -threaded
9.36 s
[genvalidity-sydtest] [1 of 2] Compiling Main ( Setup.hs, /build/tmp.AcNT2VnVfD/Main.o )
9.41 s
[genvalidity-sydtest] [2 of 2] Linking Setup
9.65 s
[really-safe-money-autodocodec] mutation-nix: manifest output at /nix/store/s9m0jw9z271i7scnw7646i45l8qn0bhb-really-safe-money-autodocodec-0.0.0.0-manifest:
9.65 s
[really-safe-money-autodocodec] total 60
9.65 s
[really-safe-money-autodocodec] drwxr-xr-x 2 nixbld nixbld 4096 May 13 09:59 .
9.65 s
[really-safe-money-autodocodec] drwxrwxr-t 239 nobody nixbld 24576 May 13 09:59 ..
9.65 s
[really-safe-money-autodocodec] -rw-r--r-- 1 nixbld nixbld 1383 May 13 09:59 Money.Account.Codec.json
9.65 s
[really-safe-money-autodocodec] -rw-r--r-- 1 nixbld nixbld 2 May 13 09:59 Money.AccountOf.Codec.json
9.65 s
[really-safe-money-autodocodec] -rw-r--r-- 1 nixbld nixbld 10633 May 13 09:59 Money.Amount.Codec.json
9.65 s
[really-safe-money-autodocodec] -rw-r--r-- 1 nixbld nixbld 2 May 13 09:59 Money.AmountOf.Codec.json
9.65 s
[really-safe-money-autodocodec] -rw-r--r-- 1 nixbld nixbld 2 May 13 09:59 Money.QuantisationFactor.Codec.json
9.65 s
[really-safe-money-autodocodec] -rw-r--r-- 1 nixbld nixbld 1279 May 13 09:59 Numeric.DecimalLiteral.Codec.json
9.65 s
[really-safe-money-autodocodec] Phase: haddockPhase
9.66 s
[really-safe-money-autodocodec] Phase: installPhase
9.73 s
[really-safe-money-autodocodec] Installing library in /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6/really-safe-money-autodocodec-0.0.0.0-6uQz3PYxbwUCTmvro4lDZk
9.92 s
[really-safe-money-autodocodec] Phase: fixupPhase
9.95 s
[really-safe-money-autodocodec] shrinking RPATHs of ELF executables and libraries in /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0
9.95 s
[really-safe-money-autodocodec] shrinking /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6/libHSreally-safe-money-autodocodec-0.0.0.0-6uQz3PYxbwUCTmvro4lDZk-ghc9.10.3.so
9.97 s
[really-safe-money-autodocodec] checking for references to /build/ in /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0...
9.99 s
[really-safe-money-autodocodec] patching script interpreter paths in /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0
10.00 s
[really-safe-money-autodocodec] stripping (with command strip and flags -S -p) in /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0/lib
10.05 s
[really-safe-money-autodocodec] shrinking RPATHs of ELF executables and libraries in /nix/store/s9m0jw9z271i7scnw7646i45l8qn0bhb-really-safe-money-autodocodec-0.0.0.0-manifest
10.10 s
[really-safe-money-autodocodec] checking for references to /build/ in /nix/store/s9m0jw9z271i7scnw7646i45l8qn0bhb-really-safe-money-autodocodec-0.0.0.0-manifest...
10.10 s
[really-safe-money-autodocodec] patching script interpreter paths in /nix/store/s9m0jw9z271i7scnw7646i45l8qn0bhb-really-safe-money-autodocodec-0.0.0.0-manifest
10.16 s
[post-build-hook] Uploading to cachix cache "sydtest": /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0 /nix/store/s9m0jw9z271i7scnw7646i45l8qn0bhb-really-safe-money-autodocodec-0.0.0.0-manifest
10.66 s
[post-build-hook] Pushing 3 paths (195 are already present) using zstd to cache sydtest ⏳
10.66 s
[post-build-hook]
11.02 s
[post-build-hook] Pushing /nix/store/s9m0jw9z271i7scnw7646i45l8qn0bhb-really-safe-money-autodocodec-0.0.0.0-manifest (14.33 KiB)
11.05 s
[post-build-hook] Pushing /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0 (11.19 MiB)
11.15 s
[post-build-hook] Pushing /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0 (1.29 MiB)
12.60 s
[post-build-hook]
12.60 s
[post-build-hook] All done.
12.63 s
[post-build-hook] Uploading to the NixCI staging cache: /nix/store/2ka8yjmi7q117r5lqix5jk23z996ws7a-really-safe-money-autodocodec-0.0.0.0 /nix/store/s9m0jw9z271i7scnw7646i45l8qn0bhb-really-safe-money-autodocodec-0.0.0.0-manifest
12.70 s
[post-build-hook] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
12.77 s
[post-build-hook] copying 1 paths...
12.77 s
[post-build-hook] copying path '/nix/store/s9m0jw9z271i7scnw7646i45l8qn0bhb-really-safe-money-autodocodec-0.0.0.0-manifest' to 'https://cache.staging.nix-ci.com'...
12.92 s
[post-build-hook] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
13.09 s
[post-build-hook] copying 0 paths...
13.22 s
Progress: 2 of 6 built (2 building), 8 of 8 downloaded from cache
13.22 s
[genvalidity-sydtest] Phase: updateAutotoolsGnuConfigScriptsPhase
13.22 s
[genvalidity-sydtest] Phase: configurePhase
13.22 s
[genvalidity-sydtest] configureFlags: --verbose --prefix=/nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0 --libdir=$prefix/lib/$compiler/lib --libsubdir=$abi/$libname --docdir=/nix/store/md56vgr9pbgrhvl49wyc0kfh1cqd0rxd-genvalidity-sydtest-1.0.1.0-doc/share/doc/genvalidity-sydtest-1.0.1.0 --with-gcc=gcc --package-db=/build/tmp.AcNT2VnVfD/package.conf.d --ghc-option=-j16 --ghc-option=+RTS --ghc-option=-A64M --ghc-option=-RTS --enable-library-profiling --profiling-detail=exported-functions --disable-profiling --enable-shared --disable-coverage --enable-static --disable-executable-dynamic --enable-tests --enable-benchmarks --enable-library-vanilla --disable-library-for-ghci --enable-split-sections --enable-library-stripping --enable-executable-stripping --ghc-option=-haddock --ghc-option=-Wall --ghc-option=-Werror --extra-lib-dirs=/nix/store/ffyzkisqs4vc4mg28bwwlyqjf8i9ph6b-ncurses-6.5/lib --extra-lib-dirs=/nix/store/n28qgdj8c1q41kf7n4y1jxa6ckp85m3c-libffi-3.5.2/lib --extra-lib-dirs=/nix/store/1b6h99dw7bk4wbn77kbalih42zbc67m1-elfutils-0.194/lib --extra-lib-dirs=/nix/store/hi0ar880110k6jsmmili7dh1gq3cg2a9-gmp-with-cxx-6.3.0/lib --extra-lib-dirs=/nix/store/g09cflpnp4g80q56sj9dng1qzv4v4ybc-numactl-2.0.18/lib
13.22 s
[genvalidity-sydtest] Using Parsec parser
13.22 s
[genvalidity-sydtest] Configuring genvalidity-sydtest-1.0.1.0...
13.22 s
[genvalidity-sydtest] Dependency QuickCheck: using QuickCheck-2.15.0.1
13.22 s
[genvalidity-sydtest] Dependency base >=4.7 && <5: using base-4.20.2.0
13.22 s
[genvalidity-sydtest] Dependency genvalidity >=1.0: using genvalidity-1.1.1.0
13.22 s
[genvalidity-sydtest] Dependency sydtest: using sydtest-0.23.0.2
13.22 s
[genvalidity-sydtest] Dependency QuickCheck: using QuickCheck-2.15.0.1
13.22 s
[genvalidity-sydtest] Dependency base >=4.7 && <5: using base-4.20.2.0
13.22 s
[genvalidity-sydtest] Dependency genvalidity: using genvalidity-1.1.1.0
13.22 s
[genvalidity-sydtest] Dependency genvalidity-sydtest: using genvalidity-sydtest-1.0.1.0
13.22 s
[genvalidity-sydtest] Dependency sydtest: using sydtest-0.23.0.2
13.22 s
[genvalidity-sydtest] Source component graph:
13.22 s
[genvalidity-sydtest] component lib
13.22 s
[genvalidity-sydtest] component test:genvalidity-sydtest-test dependency lib
13.22 s
[genvalidity-sydtest] Configured component graph:
13.22 s
[genvalidity-sydtest] component genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
13.22 s
[genvalidity-sydtest] include QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
13.22 s
[genvalidity-sydtest] include base-4.20.2.0-64da
13.22 s
[genvalidity-sydtest] include genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
13.22 s
[genvalidity-sydtest] include sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
13.22 s
[genvalidity-sydtest] component genvalidity-sydtest-1.0.1.0-1ny4a51zXrh2vGWfyFa5xL-genvalidity-sydtest-test
13.22 s
[genvalidity-sydtest] include QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
13.22 s
[genvalidity-sydtest] include base-4.20.2.0-64da
13.22 s
[genvalidity-sydtest] include genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
13.22 s
[genvalidity-sydtest] include genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
13.22 s
[genvalidity-sydtest] include sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
13.22 s
[genvalidity-sydtest] Linked component graph:
13.22 s
[genvalidity-sydtest] unit genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
13.22 s
[genvalidity-sydtest] include QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
13.23 s
[genvalidity-sydtest] include base-4.20.2.0-64da
13.23 s
[genvalidity-sydtest] include genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
13.23 s
[genvalidity-sydtest] include sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
13.23 s
[really-safe-money] Phase: updateAutotoolsGnuConfigScriptsPhase
13.23 s
[really-safe-money] Phase: configurePhase
13.23 s
[really-safe-money] configureFlags: --verbose --prefix=/nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0 --libdir=$prefix/lib/$compiler/lib --libsubdir=$abi/$libname --with-gcc=gcc --package-db=/build/tmp.X7Bw0rIyHa/package.conf.d --ghc-option=-j16 --ghc-option=+RTS --ghc-option=-A64M --ghc-option=-RTS --enable-library-profiling --profiling-detail=exported-functions --disable-profiling --enable-shared --disable-coverage --disable-static --disable-executable-dynamic --disable-tests --enable-benchmarks --enable-library-vanilla --disable-library-for-ghci --enable-split-sections --enable-library-stripping --enable-executable-stripping --ghc-options=-O2 --ghc-options=-Wall --ghc-options=-Wincomplete-uni-patterns --ghc-options=-Wincomplete-record-updates --ghc-options=-Wpartial-fields --ghc-options=-Widentities --ghc-options=-Wredundant-constraints --ghc-options=-Wcpp-undef --ghc-options=-Werror --ghc-options=-fplugin-opt=Test.Syd.Mutation.Plugin:--debug --disable-optimization --ghc-option=-j1 --ghc-option=+RTS --ghc-option=-A32M --ghc-option=-M16g --ghc-option=-RTS --extra-lib-dirs=/nix/store/ffyzkisqs4vc4mg28bwwlyqjf8i9ph6b-ncurses-6.5/lib --extra-lib-dirs=/nix/store/n28qgdj8c1q41kf7n4y1jxa6ckp85m3c-libffi-3.5.2/lib --extra-lib-dirs=/nix/store/1b6h99dw7bk4wbn77kbalih42zbc67m1-elfutils-0.194/lib --extra-lib-dirs=/nix/store/hi0ar880110k6jsmmili7dh1gq3cg2a9-gmp-with-cxx-6.3.0/lib --extra-lib-dirs=/nix/store/g09cflpnp4g80q56sj9dng1qzv4v4ybc-numactl-2.0.18/lib --extra-lib-dirs=/nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/lib
13.23 s
[really-safe-money] Using Parsec parser
13.23 s
[really-safe-money] Configuring really-safe-money-0.0.0.0...
13.23 s
[really-safe-money] Dependency base >=4.7 && <5: using base-4.20.2.0
13.23 s
[really-safe-money] Dependency containers: using containers-0.7
13.23 s
[really-safe-money] Dependency deepseq: using deepseq-1.5.0.0
13.23 s
[really-safe-money] Dependency validity: using validity-0.12.1.0
13.23 s
[really-safe-money] Dependency validity-containers: using validity-containers-0.5.0.5
13.23 s
[really-safe-money] Dependency validity-scientific: using validity-scientific-0.2.0.3
13.23 s
[really-safe-money] Source component graph: component lib
13.23 s
[really-safe-money] Configured component graph:
13.23 s
[really-safe-money] component really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9
13.23 s
[really-safe-money] include base-4.20.2.0-64da
13.23 s
[really-safe-money] include containers-0.7-504a
13.23 s
[really-safe-money] include deepseq-1.5.0.0-9a2c
13.23 s
[really-safe-money] include validity-0.12.1.0-2vJMqyxn6Ae2B1jlP90HgP
13.23 s
[really-safe-money] include validity-containers-0.5.0.5-JMisIHg6jT0HAhS7h7vTA4
13.23 s
[really-safe-money] include validity-scientific-0.2.0.3-6oQtdkDOQFR80MBRT1UQ1R
13.23 s
[really-safe-money] Linked component graph:
13.23 s
[really-safe-money] unit really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9
13.23 s
[really-safe-money] include base-4.20.2.0-64da
13.23 s
[really-safe-money] include containers-0.7-504a
13.23 s
[really-safe-money] include deepseq-1.5.0.0-9a2c
13.23 s
[really-safe-money] include validity-0.12.1.0-2vJMqyxn6Ae2B1jlP90HgP
13.23 s
[really-safe-money] include validity-containers-0.5.0.5-JMisIHg6jT0HAhS7h7vTA4
13.23 s
[really-safe-money] include validity-scientific-0.2.0.3-6oQtdkDOQFR80MBRT1UQ1R
13.23 s
[really-safe-money] Money.Account=really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9:Money.Account,Money.AccountOf=really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9:Money.AccountOf,Money.Amount=really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9:Money.Amount,Money.AmountOf=really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9:Money.AmountOf,Money.ConversionRate=really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9:Money.ConversionRate,Money.ConversionRateOf=really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9:Money.ConversionRateOf,Money.Currency=really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9:Money.Currency,Money.MultiAccount=really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9:Money.MultiAccount,Money.MultiAmount=really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9:Money.MultiAmount,Money.QuantisationFactor=really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9:Money.QuantisationFactor,Numeric.DecimalLiteral=really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9:Numeric.DecimalLiteral
13.23 s
[really-safe-money] Ready component graph:
13.23 s
[really-safe-money] definite really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9
13.23 s
[really-safe-money] depends base-4.20.2.0-64da
13.23 s
[really-safe-money] depends containers-0.7-504a
13.23 s
[genvalidity-sydtest] Test.Syd.Validity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity,Test.Syd.Validity.Applicative=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Applicative,Test.Syd.Validity.Arbitrary=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Arbitrary,Test.Syd.Validity.Eq=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Eq,Test.Syd.Validity.Functions=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Functions,Test.Syd.Validity.Functions.CanFail=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Functions.CanFail,Test.Syd.Validity.Functions.Equivalence=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Functions.Equivalence,Test.Syd.Validity.Functions.Idempotence=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Functions.Idempotence,Test.Syd.Validity.Functions.Inverse=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Functions.Inverse,Test.Syd.Validity.Functions.Validity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Functions.Validity,Test.Syd.Validity.Functor=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Functor,Test.Syd.Validity.GenValidity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.GenValidity,Test.Syd.Validity.GenValidity.Property=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.GenValidity.Property,Test.Syd.Validity.Monad=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Monad,Test.Syd.Validity.Monoid=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Monoid,Test.Syd.Validity.Operations=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Operations,Test.Syd.Validity.Operations.Associativity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Operations.Associativity,Test.Syd.Validity.Operations.Commutativity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Operations.Commutativity,Test.Syd.Validity.Operations.Identity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Operations.Identity,Test.Syd.Validity.Ord=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Ord,Test.Syd.Validity.Property=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Property,Test.Syd.Validity.Property.Utils=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Property.Utils,Test.Syd.Validity.Relations=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Relations,Test.Syd.Validity.Relations.Antireflexivity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Relations.Antireflexivity,Test.Syd.Validity.Relations.Antisymmetry=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Relations.Antisymmetry,Test.Syd.Validity.Relations.Reflexivity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Relations.Reflexivity,Test.Syd.Validity.Relations.Symmetry=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Relations.Symmetry,Test.Syd.Validity.Relations.Transitivity=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Relations.Transitivity,Test.Syd.Validity.Show=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Show,Test.Syd.Validity.Shrinking=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Shrinking,Test.Syd.Validity.Shrinking.Property=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Shrinking.Property,Test.Syd.Validity.Types=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Types,Test.Syd.Validity.Utils=genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1:Test.Syd.Validity.Utils
13.23 s
[genvalidity-sydtest] unit genvalidity-sydtest-1.0.1.0-1ny4a51zXrh2vGWfyFa5xL-genvalidity-sydtest-test
13.23 s
[genvalidity-sydtest] include QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
13.23 s
[genvalidity-sydtest] include base-4.20.2.0-64da
13.23 s
[genvalidity-sydtest] include genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
13.23 s
[genvalidity-sydtest] include genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
13.23 s
[genvalidity-sydtest] include sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
13.23 s
[genvalidity-sydtest] Ready component graph:
13.23 s
[genvalidity-sydtest] definite genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
13.23 s
[genvalidity-sydtest] depends QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
13.23 s
[genvalidity-sydtest] depends base-4.20.2.0-64da
13.23 s
[genvalidity-sydtest] depends genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
13.23 s
[genvalidity-sydtest] depends sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
13.23 s
[genvalidity-sydtest] definite genvalidity-sydtest-1.0.1.0-1ny4a51zXrh2vGWfyFa5xL-genvalidity-sydtest-test
13.23 s
[genvalidity-sydtest] depends QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
13.23 s
[genvalidity-sydtest] depends base-4.20.2.0-64da
13.23 s
[genvalidity-sydtest] depends genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
13.23 s
[genvalidity-sydtest] depends genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
13.23 s
[genvalidity-sydtest] depends sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
13.23 s
[genvalidity-sydtest] Using Cabal-3.12.1.0 compiled by ghc-9.10
13.23 s
[genvalidity-sydtest] Using compiler: ghc-9.10.3
13.23 s
[genvalidity-sydtest] Using install prefix:
13.23 s
[genvalidity-sydtest] /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0
13.23 s
[genvalidity-sydtest] Executables installed in:
13.23 s
[genvalidity-sydtest] /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0/bin
13.23 s
[genvalidity-sydtest] Libraries installed in:
13.23 s
[really-safe-money] depends deepseq-1.5.0.0-9a2c
13.23 s
[really-safe-money] depends validity-0.12.1.0-2vJMqyxn6Ae2B1jlP90HgP
13.23 s
[really-safe-money] depends validity-containers-0.5.0.5-JMisIHg6jT0HAhS7h7vTA4
13.23 s
[really-safe-money] depends validity-scientific-0.2.0.3-6oQtdkDOQFR80MBRT1UQ1R
13.23 s
[really-safe-money] Using Cabal-3.12.1.0 compiled by ghc-9.10
13.23 s
[really-safe-money] Using compiler: ghc-9.10.3
13.23 s
[really-safe-money] Using install prefix:
13.23 s
[really-safe-money] /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0
13.23 s
[really-safe-money] Executables installed in:
13.23 s
[really-safe-money] /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0/bin
13.23 s
[really-safe-money] Libraries installed in:
13.23 s
[really-safe-money] /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6/really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9
13.23 s
[really-safe-money] Dynamic Libraries installed in:
13.23 s
[really-safe-money] /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6
13.23 s
[really-safe-money] Private executables installed in:
13.23 s
[really-safe-money] /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0/libexec/x86_64-linux-ghc-9.10.3-05f6/really-safe-money-0.0.0.0
13.23 s
[really-safe-money] Data files installed in:
13.24 s
[really-safe-money] /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0/share/x86_64-linux-ghc-9.10.3-05f6/really-safe-money-0.0.0.0
13.24 s
[really-safe-money] Documentation installed in:
13.24 s
[really-safe-money] /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0/share/doc/x86_64-linux-ghc-9.10.3-05f6/really-safe-money-0.0.0.0
13.24 s
[really-safe-money] Configuration files installed in:
13.24 s
[really-safe-money] /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0/etc
13.24 s
[really-safe-money] No alex found
13.24 s
[really-safe-money] Using ar found on system at:
13.24 s
[really-safe-money] /nix/store/iz5lckcsg66r223si2gck7csk2hihj0m-binutils-wrapper-2.44/bin/ar
13.24 s
[really-safe-money] No c2hs found
13.24 s
[really-safe-money] No cpphs found
13.24 s
[really-safe-money] No doctest found
13.24 s
[really-safe-money] Using gcc version 14.3.0 given by user at:
13.24 s
[really-safe-money] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/gcc
13.24 s
[really-safe-money] Using ghc version 9.10.3 found on system at:
13.24 s
[really-safe-money] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/ghc
13.24 s
[really-safe-money] Using ghc-pkg version 9.10.3 found on system at:
13.24 s
[really-safe-money] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/ghc-pkg-9.10.3
13.24 s
[really-safe-money] No ghcjs found
13.24 s
[really-safe-money] No ghcjs-pkg found
13.24 s
[really-safe-money] No greencard found
13.24 s
[really-safe-money] Using haddock version 2.31.1 found on system at:
13.24 s
[really-safe-money] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/haddock-ghc-9.10.3
13.24 s
[really-safe-money] No happy found
13.24 s
[really-safe-money] Using haskell-suite found on system at: haskell-suite-dummy-location
13.24 s
[really-safe-money] Using haskell-suite-pkg found on system at: haskell-suite-pkg-dummy-location
13.24 s
[really-safe-money] No hmake found
13.24 s
[really-safe-money] Using hpc version 0.69 found on system at:
13.24 s
[really-safe-money] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/hpc-ghc-9.10.3
13.24 s
[really-safe-money] Using hsc2hs version 0.68.10 found on system at:
13.24 s
[really-safe-money] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/hsc2hs-ghc-9.10.3
13.24 s
[really-safe-money] Using hscolour version 1.25 found on system at:
13.24 s
[really-safe-money] /nix/store/f755skyzf4jvfx3crwq9mmh3x4lsaz8i-hscolour-1.25/bin/HsColour
13.24 s
[really-safe-money] No jhc found
13.24 s
[really-safe-money] Using ld found on system at:
13.24 s
[really-safe-money] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/ld
13.24 s
[really-safe-money] No pkg-config found
13.24 s
[really-safe-money] Using runghc version 9.10.3 found on system at:
13.24 s
[really-safe-money] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/runghc-9.10.3
13.24 s
[really-safe-money] Using strip version 2.44 found on system at:
13.24 s
[really-safe-money] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/strip
13.24 s
[really-safe-money] Using tar found on system at:
13.24 s
[really-safe-money] /nix/store/xl6pd2spjajwcpq09fnmnjv5psqmlmma-gnutar-1.35/bin/tar
13.24 s
[really-safe-money] No uhc found
13.24 s
[really-safe-money] Phase: buildPhase
13.24 s
[really-safe-money] mutation-nix: setting MUTATION_MANIFEST_DIR=/nix/store/1kba83gl6vham8yih6z5pc00qv1vlnxd-really-safe-money-0.0.0.0-manifest
13.24 s
[really-safe-money] Preprocessing library for really-safe-money-0.0.0.0...
13.24 s
[really-safe-money] Building library for really-safe-money-0.0.0.0...
13.24 s
[really-safe-money] [ 1 of 12] Compiling Numeric.DecimalLiteral ( src/Numeric/DecimalLiteral.hs, dist/build/Numeric/DecimalLiteral.o, dist/build/Numeric/DecimalLiteral.dyn_o )
13.24 s
[really-safe-money] mutation: instrumenting Numeric.DecimalLiteral
13.24 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 396:23-27
13.24 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 396:23-27
13.24 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 396:23-27
13.24 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 368:10-39
13.24 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 368:10-39
13.24 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 368:10-39
13.24 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/CondFlip at 368:7-62
13.24 s
[genvalidity-sydtest] /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6/genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
13.24 s
[genvalidity-sydtest] Dynamic Libraries installed in:
13.24 s
[genvalidity-sydtest] /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6
13.24 s
[genvalidity-sydtest] Private executables installed in:
13.24 s
[genvalidity-sydtest] /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0/libexec/x86_64-linux-ghc-9.10.3-05f6/genvalidity-sydtest-1.0.1.0
13.24 s
[genvalidity-sydtest] Data files installed in:
13.24 s
[genvalidity-sydtest] /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0/share/x86_64-linux-ghc-9.10.3-05f6/genvalidity-sydtest-1.0.1.0
13.24 s
[genvalidity-sydtest] Documentation installed in:
13.24 s
[genvalidity-sydtest] /nix/store/md56vgr9pbgrhvl49wyc0kfh1cqd0rxd-genvalidity-sydtest-1.0.1.0-doc/share/doc/genvalidity-sydtest-1.0.1.0
13.24 s
[genvalidity-sydtest] Configuration files installed in:
13.24 s
[genvalidity-sydtest] /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0/etc
13.24 s
[genvalidity-sydtest] No alex found
13.24 s
[genvalidity-sydtest] Using ar found on system at:
13.24 s
[genvalidity-sydtest] /nix/store/iz5lckcsg66r223si2gck7csk2hihj0m-binutils-wrapper-2.44/bin/ar
13.24 s
[genvalidity-sydtest] No c2hs found
13.24 s
[genvalidity-sydtest] No cpphs found
13.24 s
[genvalidity-sydtest] No doctest found
13.24 s
[genvalidity-sydtest] Using gcc version 14.3.0 given by user at:
13.24 s
[genvalidity-sydtest] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/gcc
13.24 s
[genvalidity-sydtest] Using ghc version 9.10.3 found on system at:
13.24 s
[genvalidity-sydtest] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/ghc
13.24 s
[genvalidity-sydtest] Using ghc-pkg version 9.10.3 found on system at:
13.24 s
[genvalidity-sydtest] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/ghc-pkg-9.10.3
13.24 s
[genvalidity-sydtest] No ghcjs found
13.24 s
[genvalidity-sydtest] No ghcjs-pkg found
13.24 s
[genvalidity-sydtest] No greencard found
13.24 s
[genvalidity-sydtest] Using haddock version 2.31.1 found on system at:
13.24 s
[genvalidity-sydtest] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/haddock-ghc-9.10.3
13.24 s
[genvalidity-sydtest] No happy found
13.24 s
[genvalidity-sydtest] Using haskell-suite found on system at: haskell-suite-dummy-location
13.24 s
[genvalidity-sydtest] Using haskell-suite-pkg found on system at: haskell-suite-pkg-dummy-location
13.24 s
[genvalidity-sydtest] No hmake found
13.24 s
[genvalidity-sydtest] Using hpc version 0.69 found on system at:
13.24 s
[genvalidity-sydtest] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/hpc-ghc-9.10.3
13.24 s
[genvalidity-sydtest] Using hsc2hs version 0.68.10 found on system at:
13.24 s
[genvalidity-sydtest] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/hsc2hs-ghc-9.10.3
13.24 s
[genvalidity-sydtest] Using hscolour version 1.25 found on system at:
13.24 s
[genvalidity-sydtest] /nix/store/f755skyzf4jvfx3crwq9mmh3x4lsaz8i-hscolour-1.25/bin/HsColour
13.24 s
[genvalidity-sydtest] No jhc found
13.24 s
[genvalidity-sydtest] Using ld found on system at:
13.24 s
[genvalidity-sydtest] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/ld
13.24 s
[genvalidity-sydtest] No pkg-config found
13.24 s
[genvalidity-sydtest] Using runghc version 9.10.3 found on system at:
13.24 s
[genvalidity-sydtest] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/runghc-9.10.3
13.24 s
[genvalidity-sydtest] Using strip version 2.44 found on system at:
13.24 s
[genvalidity-sydtest] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/strip
13.24 s
[genvalidity-sydtest] Using tar found on system at:
13.24 s
[genvalidity-sydtest] /nix/store/xl6pd2spjajwcpq09fnmnjv5psqmlmma-gnutar-1.35/bin/tar
13.25 s
[genvalidity-sydtest] No uhc found
13.25 s
[genvalidity-sydtest] Phase: buildPhase
13.25 s
[genvalidity-sydtest] Preprocessing library for genvalidity-sydtest-1.0.1.0...
13.25 s
[genvalidity-sydtest] Building library for genvalidity-sydtest-1.0.1.0...
13.25 s
[genvalidity-sydtest] [ 1 of 34] Compiling Paths_genvalidity_sydtest ( dist/build/autogen/Paths_genvalidity_sydtest.hs, dist/build/Paths_genvalidity_sydtest.o, dist/build/Paths_genvalidity_sydtest.dyn_o )
13.25 s
[genvalidity-sydtest] [ 2 of 34] Compiling Test.Syd.Validity.Functions.Idempotence ( src/Test/Syd/Validity/Functions/Idempotence.hs, dist/build/Test/Syd/Validity/Functions/Idempotence.o, dist/build/Test/Syd/Validity/Functions/Idempotence.dyn_o )
13.25 s
[genvalidity-sydtest] [ 3 of 34] Compiling Test.Syd.Validity.Operations.Associativity ( src/Test/Syd/Validity/Operations/Associativity.hs, dist/build/Test/Syd/Validity/Operations/Associativity.o, dist/build/Test/Syd/Validity/Operations/Associativity.dyn_o )
13.25 s
[genvalidity-sydtest] [ 4 of 34] Compiling Test.Syd.Validity.Operations.Commutativity ( src/Test/Syd/Validity/Operations/Commutativity.hs, dist/build/Test/Syd/Validity/Operations/Commutativity.o, dist/build/Test/Syd/Validity/Operations/Commutativity.dyn_o )
13.25 s
[genvalidity-sydtest] [ 5 of 34] Compiling Test.Syd.Validity.Operations.Identity ( src/Test/Syd/Validity/Operations/Identity.hs, dist/build/Test/Syd/Validity/Operations/Identity.o, dist/build/Test/Syd/Validity/Operations/Identity.dyn_o )
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 375:80-82
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 375:80-82
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 337:21-22
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 337:16-22
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 337:16-22
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 337:16-22
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 337:46-51
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 337:46-51
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 337:46-51
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/CondFlip at 337:13-51
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 332:11-46
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 332:11-46
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 332:11-46
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 333:11-46
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 333:11-46
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 333:11-46
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 315:67-68
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 304:42-43
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 299:11-47
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 299:11-47
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 299:11-47
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 289:33-35
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 289:33-35
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 289:33-35
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 236:41-44
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 236:41-44
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 236:41-44
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 244:14-15
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 244:9-15
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 244:9-15
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 244:9-15
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 245:9-18
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 245:9-18
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 245:9-18
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 264:13-26
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 264:13-26
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 264:13-26
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 266:13-19
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 266:13-19
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 266:13-19
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 267:13-18
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 267:13-18
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 267:13-18
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 269:41-43
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 269:41-43
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 269:63-65
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 269:63-65
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 270:13-22
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 270:13-22
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 270:13-22
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 252:36-37
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 252:38-39
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 223:39-41
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 223:39-41
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 223:39-41
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 208:9-10
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 208:5-10
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 208:5-10
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 208:5-10
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 208:62-67
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 208:62-67
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 208:62-67
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 209:5-14
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 209:5-14
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 209:5-14
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ListLit at 186:15-25
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ListLit at 186:15-25
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 145:28-30
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 145:28-30
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 145:28-30
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 152:9-23
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 152:9-23
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 152:9-23
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 154:36-38
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 154:36-38
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 154:36-38
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 158:9-18
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 158:9-18
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 158:9-18
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 139:27-29
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 139:27-29
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 136:39-41
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 136:39-41
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 119:22-30
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 119:22-30
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 119:22-30
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 119:34-42
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 119:34-42
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 119:34-42
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 119:22-42
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 119:22-42
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 119:22-42
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 123:19-34
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 123:19-34
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 123:19-34
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 125:29-30
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 127:44-45
13.25 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 130:48-49
13.26 s
[genvalidity-sydtest] [ 6 of 34] Compiling Test.Syd.Validity.Operations ( src/Test/Syd/Validity/Operations.hs, dist/build/Test/Syd/Validity/Operations.o, dist/build/Test/Syd/Validity/Operations.dyn_o )
13.29 s
[genvalidity-sydtest] [ 7 of 34] Compiling Test.Syd.Validity.Property.Utils ( src/Test/Syd/Validity/Property/Utils.hs, dist/build/Test/Syd/Validity/Property/Utils.o, dist/build/Test/Syd/Validity/Property/Utils.dyn_o )
13.29 s
[genvalidity-sydtest] [ 8 of 34] Compiling Test.Syd.Validity.GenValidity.Property ( src/Test/Syd/Validity/GenValidity/Property.hs, dist/build/Test/Syd/Validity/GenValidity/Property.o, dist/build/Test/Syd/Validity/GenValidity/Property.dyn_o )
13.29 s
[genvalidity-sydtest] [ 9 of 34] Compiling Test.Syd.Validity.Functions.Validity ( src/Test/Syd/Validity/Functions/Validity.hs, dist/build/Test/Syd/Validity/Functions/Validity.o, dist/build/Test/Syd/Validity/Functions/Validity.dyn_o )
13.35 s
[genvalidity-sydtest] [10 of 34] Compiling Test.Syd.Validity.Relations.Antireflexivity ( src/Test/Syd/Validity/Relations/Antireflexivity.hs, dist/build/Test/Syd/Validity/Relations/Antireflexivity.o, dist/build/Test/Syd/Validity/Relations/Antireflexivity.dyn_o )
13.35 s
[genvalidity-sydtest] [11 of 34] Compiling Test.Syd.Validity.Relations.Antisymmetry ( src/Test/Syd/Validity/Relations/Antisymmetry.hs, dist/build/Test/Syd/Validity/Relations/Antisymmetry.o, dist/build/Test/Syd/Validity/Relations/Antisymmetry.dyn_o )
13.35 s
[genvalidity-sydtest] [12 of 34] Compiling Test.Syd.Validity.Relations.Reflexivity ( src/Test/Syd/Validity/Relations/Reflexivity.hs, dist/build/Test/Syd/Validity/Relations/Reflexivity.o, dist/build/Test/Syd/Validity/Relations/Reflexivity.dyn_o )
13.35 s
[genvalidity-sydtest] [13 of 34] Compiling Test.Syd.Validity.Relations.Symmetry ( src/Test/Syd/Validity/Relations/Symmetry.hs, dist/build/Test/Syd/Validity/Relations/Symmetry.o, dist/build/Test/Syd/Validity/Relations/Symmetry.dyn_o )
13.35 s
[genvalidity-sydtest] [14 of 34] Compiling Test.Syd.Validity.Relations.Transitivity ( src/Test/Syd/Validity/Relations/Transitivity.hs, dist/build/Test/Syd/Validity/Relations/Transitivity.o, dist/build/Test/Syd/Validity/Relations/Transitivity.dyn_o )
13.35 s
[genvalidity-sydtest] [15 of 34] Compiling Test.Syd.Validity.Relations ( src/Test/Syd/Validity/Relations.hs, dist/build/Test/Syd/Validity/Relations.o, dist/build/Test/Syd/Validity/Relations.dyn_o )
13.35 s
[genvalidity-sydtest] [16 of 34] Compiling Test.Syd.Validity.Shrinking.Property ( src/Test/Syd/Validity/Shrinking/Property.hs, dist/build/Test/Syd/Validity/Shrinking/Property.o, dist/build/Test/Syd/Validity/Shrinking/Property.dyn_o )
13.35 s
[genvalidity-sydtest] [17 of 34] Compiling Test.Syd.Validity.Types ( src/Test/Syd/Validity/Types.hs, dist/build/Test/Syd/Validity/Types.o, dist/build/Test/Syd/Validity/Types.dyn_o )
13.35 s
[genvalidity-sydtest] [18 of 34] Compiling Test.Syd.Validity.Functions.Inverse ( src/Test/Syd/Validity/Functions/Inverse.hs, dist/build/Test/Syd/Validity/Functions/Inverse.o, dist/build/Test/Syd/Validity/Functions/Inverse.dyn_o )
13.35 s
[genvalidity-sydtest] [19 of 34] Compiling Test.Syd.Validity.Functions.Equivalence ( src/Test/Syd/Validity/Functions/Equivalence.hs, dist/build/Test/Syd/Validity/Functions/Equivalence.o, dist/build/Test/Syd/Validity/Functions/Equivalence.dyn_o )
13.62 s
[genvalidity-sydtest] [20 of 34] Compiling Test.Syd.Validity.Functions.CanFail ( src/Test/Syd/Validity/Functions/CanFail.hs, dist/build/Test/Syd/Validity/Functions/CanFail.o, dist/build/Test/Syd/Validity/Functions/CanFail.dyn_o )
13.62 s
[genvalidity-sydtest] [21 of 34] Compiling Test.Syd.Validity.Functions ( src/Test/Syd/Validity/Functions.hs, dist/build/Test/Syd/Validity/Functions.o, dist/build/Test/Syd/Validity/Functions.dyn_o )
13.67 s
[genvalidity-sydtest] [22 of 34] Compiling Test.Syd.Validity.Property ( src/Test/Syd/Validity/Property.hs, dist/build/Test/Syd/Validity/Property.o, dist/build/Test/Syd/Validity/Property.dyn_o )
13.72 s
[genvalidity-sydtest] [23 of 34] Compiling Test.Syd.Validity.Utils ( src/Test/Syd/Validity/Utils.hs, dist/build/Test/Syd/Validity/Utils.o, dist/build/Test/Syd/Validity/Utils.dyn_o )
13.72 s
[genvalidity-sydtest] [24 of 34] Compiling Test.Syd.Validity.Shrinking ( src/Test/Syd/Validity/Shrinking.hs, dist/build/Test/Syd/Validity/Shrinking.o, dist/build/Test/Syd/Validity/Shrinking.dyn_o )
13.72 s
[genvalidity-sydtest] [25 of 34] Compiling Test.Syd.Validity.Show ( src/Test/Syd/Validity/Show.hs, dist/build/Test/Syd/Validity/Show.o, dist/build/Test/Syd/Validity/Show.dyn_o )
13.72 s
[genvalidity-sydtest] [26 of 34] Compiling Test.Syd.Validity.Ord ( src/Test/Syd/Validity/Ord.hs, dist/build/Test/Syd/Validity/Ord.o, dist/build/Test/Syd/Validity/Ord.dyn_o )
14.28 s
[genvalidity-sydtest] [27 of 34] Compiling Test.Syd.Validity.Monoid ( src/Test/Syd/Validity/Monoid.hs, dist/build/Test/Syd/Validity/Monoid.o, dist/build/Test/Syd/Validity/Monoid.dyn_o )
14.28 s
[genvalidity-sydtest] [28 of 34] Compiling Test.Syd.Validity.Monad ( src/Test/Syd/Validity/Monad.hs, dist/build/Test/Syd/Validity/Monad.o, dist/build/Test/Syd/Validity/Monad.dyn_o )
14.31 s
[really-safe-money] [ 2 of 12] Compiling Money.QuantisationFactor ( src/Money/QuantisationFactor.hs, dist/build/Money/QuantisationFactor.o, dist/build/Money/QuantisationFactor.dyn_o )
14.34 s
[really-safe-money] mutation: instrumenting Money.QuantisationFactor
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 87:27-28
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 87:12-28
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 87:12-28
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/Negate at 87:12-28
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/CondFlip at 87:9-22
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 92:13-14
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 92:13-14
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 93:16-17
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 93:12-17
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 93:12-17
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/Negate at 93:12-17
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/CondFlip at 93:9-22
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 98:27-28
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 98:27-28
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 98:8-28
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 98:8-28
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/Negate at 98:8-28
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/CondFlip at 98:5-19
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 102:6-46
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 102:6-46
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/Negate at 102:6-46
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 67:67-68
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 67:67-68
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 40:62-63
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 40:57-63
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 40:57-63
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/Negate at 40:57-63
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ListLit at 39:7-8
14.34 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ListLit at 39:7-8
14.37 s
[genvalidity-sydtest] [29 of 34] Compiling Test.Syd.Validity.GenValidity ( src/Test/Syd/Validity/GenValidity.hs, dist/build/Test/Syd/Validity/GenValidity.o, dist/build/Test/Syd/Validity/GenValidity.dyn_o )
14.37 s
[genvalidity-sydtest] [30 of 34] Compiling Test.Syd.Validity.Functor ( src/Test/Syd/Validity/Functor.hs, dist/build/Test/Syd/Validity/Functor.o, dist/build/Test/Syd/Validity/Functor.dyn_o )
14.37 s
[genvalidity-sydtest] [31 of 34] Compiling Test.Syd.Validity.Eq ( src/Test/Syd/Validity/Eq.hs, dist/build/Test/Syd/Validity/Eq.o, dist/build/Test/Syd/Validity/Eq.dyn_o )
14.37 s
[genvalidity-sydtest] [32 of 34] Compiling Test.Syd.Validity.Arbitrary ( src/Test/Syd/Validity/Arbitrary.hs, dist/build/Test/Syd/Validity/Arbitrary.o, dist/build/Test/Syd/Validity/Arbitrary.dyn_o )
14.37 s
[genvalidity-sydtest] [33 of 34] Compiling Test.Syd.Validity.Applicative ( src/Test/Syd/Validity/Applicative.hs, dist/build/Test/Syd/Validity/Applicative.o, dist/build/Test/Syd/Validity/Applicative.dyn_o )
14.37 s
[genvalidity-sydtest] [34 of 34] Compiling Test.Syd.Validity ( src/Test/Syd/Validity.hs, dist/build/Test/Syd/Validity.o, dist/build/Test/Syd/Validity.dyn_o )
14.80 s
[genvalidity-sydtest] [ 1 of 34] Compiling Paths_genvalidity_sydtest ( dist/build/autogen/Paths_genvalidity_sydtest.hs, dist/build/Paths_genvalidity_sydtest.p_o )
14.84 s
[really-safe-money] [ 3 of 12] Compiling Money.Currency ( src/Money/Currency.hs, dist/build/Money/Currency.o, dist/build/Money/Currency.dyn_o )
14.85 s
[really-safe-money] mutation: instrumenting Money.Currency
15.31 s
[genvalidity-sydtest] [ 2 of 34] Compiling Test.Syd.Validity.Functions.Idempotence ( src/Test/Syd/Validity/Functions/Idempotence.hs, dist/build/Test/Syd/Validity/Functions/Idempotence.p_o )
15.39 s
[genvalidity-sydtest] [ 3 of 34] Compiling Test.Syd.Validity.Operations.Associativity ( src/Test/Syd/Validity/Operations/Associativity.hs, dist/build/Test/Syd/Validity/Operations/Associativity.p_o )
15.39 s
[genvalidity-sydtest] [ 4 of 34] Compiling Test.Syd.Validity.Operations.Commutativity ( src/Test/Syd/Validity/Operations/Commutativity.hs, dist/build/Test/Syd/Validity/Operations/Commutativity.p_o )
15.39 s
[genvalidity-sydtest] [ 5 of 34] Compiling Test.Syd.Validity.Operations.Identity ( src/Test/Syd/Validity/Operations/Identity.hs, dist/build/Test/Syd/Validity/Operations/Identity.p_o )
15.39 s
[genvalidity-sydtest] [ 6 of 34] Compiling Test.Syd.Validity.Operations ( src/Test/Syd/Validity/Operations.hs, dist/build/Test/Syd/Validity/Operations.p_o )
15.39 s
[really-safe-money] [ 4 of 12] Compiling Money.ConversionRate ( src/Money/ConversionRate.hs, dist/build/Money/ConversionRate.o, dist/build/Money/ConversionRate.dyn_o )
15.39 s
[really-safe-money] mutation: instrumenting Money.ConversionRate
15.39 s
[really-safe-money] mutation: recording Money.ConversionRate/IntLit at 116:45-46
15.40 s
[really-safe-money] mutation: recording Money.ConversionRate/IntLit at 116:45-46
15.40 s
[really-safe-money] mutation: recording Money.ConversionRate/IntLit at 109:27-28
15.40 s
[really-safe-money] mutation: recording Money.ConversionRate/IntLit at 109:27-28
15.40 s
[really-safe-money] mutation: recording Money.ConversionRate/IntLit at 72:25-26
15.40 s
[really-safe-money] mutation: recording Money.ConversionRate/ConstBool at 72:21-26
15.40 s
[really-safe-money] mutation: recording Money.ConversionRate/ConstBool at 72:21-26
15.40 s
[really-safe-money] mutation: recording Money.ConversionRate/Negate at 72:21-26
15.40 s
[really-safe-money] mutation: recording Money.ConversionRate/CondFlip at 72:18-69
15.40 s
[really-safe-money] mutation: recording Money.ConversionRate/IntLit at 38:56-57
15.40 s
[really-safe-money] mutation: recording Money.ConversionRate/ConstBool at 38:41-57
15.40 s
[really-safe-money] mutation: recording Money.ConversionRate/ConstBool at 38:41-57
15.40 s
[really-safe-money] mutation: recording Money.ConversionRate/Negate at 38:41-57
15.40 s
[really-safe-money] mutation: recording Money.ConversionRate/ListLit at 37:7-8
15.40 s
[really-safe-money] mutation: recording Money.ConversionRate/ListLit at 37:7-8
15.58 s
[genvalidity-sydtest] [ 7 of 34] Compiling Test.Syd.Validity.Property.Utils ( src/Test/Syd/Validity/Property/Utils.hs, dist/build/Test/Syd/Validity/Property/Utils.p_o )
15.58 s
[genvalidity-sydtest] [ 8 of 34] Compiling Test.Syd.Validity.GenValidity.Property ( src/Test/Syd/Validity/GenValidity/Property.hs, dist/build/Test/Syd/Validity/GenValidity/Property.p_o )
15.61 s
[genvalidity-sydtest] [ 9 of 34] Compiling Test.Syd.Validity.Functions.Validity ( src/Test/Syd/Validity/Functions/Validity.hs, dist/build/Test/Syd/Validity/Functions/Validity.p_o )
15.65 s
[really-safe-money] [ 5 of 12] Compiling Money.ConversionRateOf ( src/Money/ConversionRateOf.hs, dist/build/Money/ConversionRateOf.o, dist/build/Money/ConversionRateOf.dyn_o )
15.66 s
[really-safe-money] mutation: instrumenting Money.ConversionRateOf
15.74 s
[genvalidity-sydtest] [10 of 34] Compiling Test.Syd.Validity.Relations.Antireflexivity ( src/Test/Syd/Validity/Relations/Antireflexivity.hs, dist/build/Test/Syd/Validity/Relations/Antireflexivity.p_o )
15.74 s
[genvalidity-sydtest] [11 of 34] Compiling Test.Syd.Validity.Relations.Antisymmetry ( src/Test/Syd/Validity/Relations/Antisymmetry.hs, dist/build/Test/Syd/Validity/Relations/Antisymmetry.p_o )
15.74 s
[genvalidity-sydtest] [12 of 34] Compiling Test.Syd.Validity.Relations.Reflexivity ( src/Test/Syd/Validity/Relations/Reflexivity.hs, dist/build/Test/Syd/Validity/Relations/Reflexivity.p_o )
15.74 s
[genvalidity-sydtest] [13 of 34] Compiling Test.Syd.Validity.Relations.Symmetry ( src/Test/Syd/Validity/Relations/Symmetry.hs, dist/build/Test/Syd/Validity/Relations/Symmetry.p_o )
15.74 s
[genvalidity-sydtest] [14 of 34] Compiling Test.Syd.Validity.Relations.Transitivity ( src/Test/Syd/Validity/Relations/Transitivity.hs, dist/build/Test/Syd/Validity/Relations/Transitivity.p_o )
15.74 s
[genvalidity-sydtest] [15 of 34] Compiling Test.Syd.Validity.Relations ( src/Test/Syd/Validity/Relations.hs, dist/build/Test/Syd/Validity/Relations.p_o )
15.78 s
[really-safe-money] [ 6 of 12] Compiling Money.Amount ( src/Money/Amount.hs, dist/build/Money/Amount.o, dist/build/Money/Amount.dyn_o )
15.94 s
[genvalidity-sydtest] [16 of 34] Compiling Test.Syd.Validity.Shrinking.Property ( src/Test/Syd/Validity/Shrinking/Property.hs, dist/build/Test/Syd/Validity/Shrinking/Property.p_o )
15.94 s
[genvalidity-sydtest] [17 of 34] Compiling Test.Syd.Validity.Types ( src/Test/Syd/Validity/Types.hs, dist/build/Test/Syd/Validity/Types.p_o )
15.94 s
[genvalidity-sydtest] [18 of 34] Compiling Test.Syd.Validity.Functions.Inverse ( src/Test/Syd/Validity/Functions/Inverse.hs, dist/build/Test/Syd/Validity/Functions/Inverse.p_o )
15.94 s
[genvalidity-sydtest] [19 of 34] Compiling Test.Syd.Validity.Functions.Equivalence ( src/Test/Syd/Validity/Functions/Equivalence.hs, dist/build/Test/Syd/Validity/Functions/Equivalence.p_o )
15.95 s
[really-safe-money] mutation: instrumenting Money.Amount
15.95 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 801:36-38
15.95 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 801:36-38
15.95 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 801:36-38
15.95 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 569:18-19
15.95 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 569:10-19
15.95 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 569:10-19
15.95 s
[really-safe-money] mutation: recording Money.Amount/Negate at 569:10-19
15.95 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 569:7-29
15.95 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 544:10-23
15.95 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 544:10-23
15.95 s
[really-safe-money] mutation: recording Money.Amount/Negate at 544:10-23
15.95 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 544:7-66
15.95 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 518:14-15
15.95 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 518:10-15
15.95 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 518:10-15
15.95 s
[really-safe-money] mutation: recording Money.Amount/Negate at 518:10-15
15.95 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 518:7-66
15.95 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 476:10-23
15.95 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 476:10-23
15.95 s
[really-safe-money] mutation: recording Money.Amount/Negate at 476:10-23
15.96 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 476:7-66
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 388:5-16
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 388:5-16
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 388:5-16
15.96 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 389:9-10
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 389:5-10
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 389:5-10
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 389:5-10
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 390:5-14
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 390:5-14
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 390:5-14
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 397:14-31
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 397:14-31
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 397:14-31
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 399:18-83
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 399:18-83
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 399:18-83
15.96 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 399:15-57
15.96 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 397:11-25
15.96 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 320:9-10
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 320:5-10
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 320:5-10
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 320:5-10
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 321:5-14
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 321:5-14
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 321:5-14
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 327:9-16
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 327:9-16
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 327:9-16
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 328:9-21
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 328:9-21
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 328:9-21
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 329:9-18
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 329:9-18
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 329:9-18
15.96 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 332:38-40
15.96 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 332:38-40
15.96 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 332:38-40
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 332:14-40
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 332:14-40
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 332:14-40
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 339:22-39
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 339:22-39
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 339:22-39
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 341:26-91
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 341:26-91
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 341:26-91
15.96 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 341:23-65
15.96 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 339:19-33
15.96 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 332:11-33
15.96 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 290:79-80
15.96 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 494:96-97
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 495:10-23
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 495:10-23
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 495:10-23
15.96 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 495:7-66
15.96 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 250:15-16
15.96 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 661:30-31
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 681:12-37
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 681:12-37
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 681:12-37
15.96 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 681:9-27
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 806:79-92
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 806:79-92
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 806:79-92
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 607:15-22
15.96 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 607:15-22
15.96 s
[really-safe-money] mutation: recording Money.Amount/Negate at 607:15-22
15.96 s
[really-safe-money] mutation: recording Money.Amount/ListLit at 603:7-8
15.96 s
[really-safe-money] mutation: recording Money.Amount/ListLit at 603:7-8
16.02 s
[genvalidity-sydtest] [20 of 34] Compiling Test.Syd.Validity.Functions.CanFail ( src/Test/Syd/Validity/Functions/CanFail.hs, dist/build/Test/Syd/Validity/Functions/CanFail.p_o )
16.02 s
[genvalidity-sydtest] [21 of 34] Compiling Test.Syd.Validity.Functions ( src/Test/Syd/Validity/Functions.hs, dist/build/Test/Syd/Validity/Functions.p_o )
16.19 s
[genvalidity-sydtest] [22 of 34] Compiling Test.Syd.Validity.Property ( src/Test/Syd/Validity/Property.hs, dist/build/Test/Syd/Validity/Property.p_o )
16.45 s
[genvalidity-sydtest] [23 of 34] Compiling Test.Syd.Validity.Utils ( src/Test/Syd/Validity/Utils.hs, dist/build/Test/Syd/Validity/Utils.p_o )
16.45 s
[genvalidity-sydtest] [24 of 34] Compiling Test.Syd.Validity.Shrinking ( src/Test/Syd/Validity/Shrinking.hs, dist/build/Test/Syd/Validity/Shrinking.p_o )
16.45 s
[genvalidity-sydtest] [25 of 34] Compiling Test.Syd.Validity.Show ( src/Test/Syd/Validity/Show.hs, dist/build/Test/Syd/Validity/Show.p_o )
16.45 s
[genvalidity-sydtest] [26 of 34] Compiling Test.Syd.Validity.Ord ( src/Test/Syd/Validity/Ord.hs, dist/build/Test/Syd/Validity/Ord.p_o )
17.07 s
[genvalidity-sydtest] [27 of 34] Compiling Test.Syd.Validity.Monoid ( src/Test/Syd/Validity/Monoid.hs, dist/build/Test/Syd/Validity/Monoid.p_o )
17.07 s
[genvalidity-sydtest] [28 of 34] Compiling Test.Syd.Validity.Monad ( src/Test/Syd/Validity/Monad.hs, dist/build/Test/Syd/Validity/Monad.p_o )
17.21 s
[genvalidity-sydtest] [29 of 34] Compiling Test.Syd.Validity.GenValidity ( src/Test/Syd/Validity/GenValidity.hs, dist/build/Test/Syd/Validity/GenValidity.p_o )
17.21 s
[genvalidity-sydtest] [30 of 34] Compiling Test.Syd.Validity.Functor ( src/Test/Syd/Validity/Functor.hs, dist/build/Test/Syd/Validity/Functor.p_o )
17.21 s
[genvalidity-sydtest] [31 of 34] Compiling Test.Syd.Validity.Eq ( src/Test/Syd/Validity/Eq.hs, dist/build/Test/Syd/Validity/Eq.p_o )
17.21 s
[genvalidity-sydtest] [32 of 34] Compiling Test.Syd.Validity.Arbitrary ( src/Test/Syd/Validity/Arbitrary.hs, dist/build/Test/Syd/Validity/Arbitrary.p_o )
17.21 s
[genvalidity-sydtest] [33 of 34] Compiling Test.Syd.Validity.Applicative ( src/Test/Syd/Validity/Applicative.hs, dist/build/Test/Syd/Validity/Applicative.p_o )
17.21 s
[genvalidity-sydtest] [34 of 34] Compiling Test.Syd.Validity ( src/Test/Syd/Validity.hs, dist/build/Test/Syd/Validity.p_o )
17.87 s
[really-safe-money] [ 7 of 12] Compiling Money.MultiAmount ( src/Money/MultiAmount.hs, dist/build/Money/MultiAmount.o, dist/build/Money/MultiAmount.dyn_o )
17.93 s
[really-safe-money] mutation: instrumenting Money.MultiAmount
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 168:20-45
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 168:20-45
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/Negate at 168:20-45
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/CondFlip at 168:17-57
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 119:12-28
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 119:12-28
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/Negate at 119:12-28
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/CondFlip at 119:9-37
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 106:12-28
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 106:12-28
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/Negate at 106:12-28
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/CondFlip at 106:9-37
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 73:6-27
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 73:6-27
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/Negate at 73:6-27
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/CondFlip at 73:3-51
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 66:13-29
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 66:13-29
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/Negate at 66:13-29
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/ListLit at 63:7-8
17.93 s
[really-safe-money] mutation: recording Money.MultiAmount/ListLit at 63:7-8
18.80 s
[really-safe-money] [ 8 of 12] Compiling Money.AmountOf ( src/Money/AmountOf.hs, dist/build/Money/AmountOf.o, dist/build/Money/AmountOf.dyn_o )
18.81 s
[really-safe-money] mutation: instrumenting Money.AmountOf
19.21 s
[really-safe-money] [ 9 of 12] Compiling Money.Account ( src/Money/Account.hs, dist/build/Money/Account.o, dist/build/Money/Account.dyn_o )
19.25 s
[really-safe-money] mutation: instrumenting Money.Account
19.25 s
[really-safe-money] mutation: recording Money.Account/IntLit at 421:32-33
19.25 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 451:14-23
19.25 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 451:14-23
19.25 s
[really-safe-money] mutation: recording Money.Account/Negate at 451:14-23
19.25 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 451:11-76
19.25 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 455:14-23
19.25 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 455:14-23
19.25 s
[really-safe-money] mutation: recording Money.Account/Negate at 455:14-23
19.25 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 455:11-136
19.25 s
[really-safe-money] mutation: recording Money.Account/IntLit at 495:17-18
19.25 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 495:12-18
19.25 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 495:12-18
19.25 s
[really-safe-money] mutation: recording Money.Account/Negate at 495:12-18
19.25 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 495:9-41
19.25 s
[really-safe-money] mutation: recording Money.Account/IntLit at 503:15-16
19.25 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 503:10-16
19.25 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 503:10-16
19.25 s
[really-safe-money] mutation: recording Money.Account/Negate at 503:10-16
19.25 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 503:7-33
19.25 s
[really-safe-money] mutation: recording Money.Account/IntLit at 233:19-20
19.25 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 233:14-20
19.25 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 233:14-20
19.25 s
[really-safe-money] mutation: recording Money.Account/Negate at 233:14-20
19.25 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 233:11-48
19.25 s
[really-safe-money] mutation: recording Money.Account/IntLit at 197:19-20
19.25 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 197:14-20
19.25 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 197:14-20
19.25 s
[really-safe-money] mutation: recording Money.Account/Negate at 197:14-20
19.26 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 197:11-48
19.26 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 123:10-23
19.26 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 123:10-23
19.26 s
[really-safe-money] mutation: recording Money.Account/Negate at 123:10-23
19.26 s
[really-safe-money] mutation: recording Money.Account/IntLit at 131:25-26
19.26 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 131:20-26
19.26 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 131:20-26
19.26 s
[really-safe-money] mutation: recording Money.Account/Negate at 131:20-26
19.26 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 131:17-39
19.26 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 123:7-39
20.30 s
[really-safe-money] [10 of 12] Compiling Money.MultiAccount ( src/Money/MultiAccount.hs, dist/build/Money/MultiAccount.o, dist/build/Money/MultiAccount.dyn_o )
20.32 s
[really-safe-money] mutation: instrumenting Money.MultiAccount
20.32 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 134:12-29
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 134:12-29
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/Negate at 134:12-29
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/CondFlip at 134:9-37
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 120:12-29
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 120:12-29
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/Negate at 120:12-29
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/CondFlip at 120:9-37
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 78:6-28
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 78:6-28
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/Negate at 78:6-28
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/CondFlip at 78:3-52
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 69:13-30
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 69:13-30
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/Negate at 69:13-30
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/ListLit at 66:7-8
20.37 s
[really-safe-money] mutation: recording Money.MultiAccount/ListLit at 66:7-8
20.72 s
[genvalidity-sydtest] Preprocessing test suite 'genvalidity-sydtest-test' for genvalidity-sydtest-1.0.1.0...
20.72 s
[genvalidity-sydtest] Building test suite 'genvalidity-sydtest-test' for genvalidity-sydtest-1.0.1.0...
20.91 s
[really-safe-money] [11 of 12] Compiling Money.AccountOf ( src/Money/AccountOf.hs, dist/build/Money/AccountOf.o, dist/build/Money/AccountOf.dyn_o )
20.93 s
[really-safe-money] mutation: instrumenting Money.AccountOf
20.97 s
[genvalidity-sydtest] [ 1 of 15] Compiling Paths_genvalidity_sydtest ( dist/build/genvalidity-sydtest-test/autogen/Paths_genvalidity_sydtest.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Paths_genvalidity_sydtest.o )
21.23 s
[really-safe-money] [12 of 12] Compiling Paths_really_safe_money ( dist/build/autogen/Paths_really_safe_money.hs, dist/build/Paths_really_safe_money.o, dist/build/Paths_really_safe_money.dyn_o )
21.51 s
[genvalidity-sydtest] [ 2 of 15] Compiling Test.Syd.Validity.ApplicativeSpec ( test/Test/Syd/Validity/ApplicativeSpec.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Test/Syd/Validity/ApplicativeSpec.o )
21.56 s
[genvalidity-sydtest] [ 3 of 15] Compiling Test.Syd.Validity.ArbitrarySpec ( test/Test/Syd/Validity/ArbitrarySpec.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Test/Syd/Validity/ArbitrarySpec.o )
21.56 s
[genvalidity-sydtest] [ 4 of 15] Compiling Test.Syd.Validity.EqSpec ( test/Test/Syd/Validity/EqSpec.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Test/Syd/Validity/EqSpec.o )
21.56 s
[genvalidity-sydtest] [ 5 of 15] Compiling Test.Syd.Validity.FunctorSpec ( test/Test/Syd/Validity/FunctorSpec.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Test/Syd/Validity/FunctorSpec.o )
21.56 s
[genvalidity-sydtest] [ 6 of 15] Compiling Test.Syd.Validity.GenRelativeValiditySpec ( test/Test/Syd/Validity/GenRelativeValiditySpec.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Test/Syd/Validity/GenRelativeValiditySpec.o )
21.56 s
[genvalidity-sydtest] [ 7 of 15] Compiling Test.Syd.Validity.GenValiditySpec ( test/Test/Syd/Validity/GenValiditySpec.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Test/Syd/Validity/GenValiditySpec.o )
21.57 s
[genvalidity-sydtest] [ 8 of 15] Compiling Test.Syd.Validity.MonadSpec ( test/Test/Syd/Validity/MonadSpec.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Test/Syd/Validity/MonadSpec.o )
21.78 s
[really-safe-money] [ 1 of 12] Compiling Numeric.DecimalLiteral ( src/Numeric/DecimalLiteral.hs, dist/build/Numeric/DecimalLiteral.p_o )
21.83 s
[genvalidity-sydtest] [ 9 of 15] Compiling Test.Syd.Validity.MonoidSpec ( test/Test/Syd/Validity/MonoidSpec.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Test/Syd/Validity/MonoidSpec.o )
21.83 s
[genvalidity-sydtest] [10 of 15] Compiling Test.Syd.Validity.Operations.CommutativitySpec ( test/Test/Syd/Validity/Operations/CommutativitySpec.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Test/Syd/Validity/Operations/CommutativitySpec.o )
21.83 s
[genvalidity-sydtest] [11 of 15] Compiling Test.Syd.Validity.OrdSpec ( test/Test/Syd/Validity/OrdSpec.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Test/Syd/Validity/OrdSpec.o )
21.83 s
[genvalidity-sydtest] [12 of 15] Compiling Test.Syd.Validity.RelativeValiditySpec ( test/Test/Syd/Validity/RelativeValiditySpec.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Test/Syd/Validity/RelativeValiditySpec.o )
21.83 s
[genvalidity-sydtest] [13 of 15] Compiling Test.Syd.Validity.ShowSpec ( test/Test/Syd/Validity/ShowSpec.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Test/Syd/Validity/ShowSpec.o )
21.83 s
[genvalidity-sydtest] [14 of 15] Compiling Test.Syd.Validity.ShrinkingSpec ( test/Test/Syd/Validity/ShrinkingSpec.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Test/Syd/Validity/ShrinkingSpec.o )
21.83 s
[genvalidity-sydtest] [15 of 15] Compiling Main ( test/Spec.hs, dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test-tmp/Main.o )
22.29 s
[really-safe-money] mutation: instrumenting Numeric.DecimalLiteral
22.29 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 396:23-27
22.29 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 396:23-27
22.29 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 396:23-27
22.29 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 368:10-39
22.29 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 368:10-39
22.29 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 368:10-39
22.29 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/CondFlip at 368:7-62
22.29 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 375:80-82
22.29 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 375:80-82
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 337:21-22
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 337:16-22
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 337:16-22
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 337:16-22
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 337:46-51
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 337:46-51
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 337:46-51
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/CondFlip at 337:13-51
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 332:11-46
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 332:11-46
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 332:11-46
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 333:11-46
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 333:11-46
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 333:11-46
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 315:67-68
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 304:42-43
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 299:11-47
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 299:11-47
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 299:11-47
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 289:33-35
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 289:33-35
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 289:33-35
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 236:41-44
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 236:41-44
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 236:41-44
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 244:14-15
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 244:9-15
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 244:9-15
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 244:9-15
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 245:9-18
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 245:9-18
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 245:9-18
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 264:13-26
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 264:13-26
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 264:13-26
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 266:13-19
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 266:13-19
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 266:13-19
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 267:13-18
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 267:13-18
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 267:13-18
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 269:41-43
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 269:41-43
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 269:63-65
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 269:63-65
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 270:13-22
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 270:13-22
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 270:13-22
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 252:36-37
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 252:38-39
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 223:39-41
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 223:39-41
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 223:39-41
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 208:9-10
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 208:5-10
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 208:5-10
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 208:5-10
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 208:62-67
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 208:62-67
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 208:62-67
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 209:5-14
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 209:5-14
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 209:5-14
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ListLit at 186:15-25
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ListLit at 186:15-25
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 145:28-30
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 145:28-30
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 145:28-30
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 152:9-23
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 152:9-23
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 152:9-23
22.30 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 154:36-38
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 154:36-38
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 154:36-38
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 158:9-18
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 158:9-18
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 158:9-18
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 139:27-29
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 139:27-29
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 136:39-41
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 136:39-41
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 119:22-30
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 119:22-30
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 119:22-30
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 119:34-42
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 119:34-42
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 119:34-42
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 119:22-42
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 119:22-42
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 119:22-42
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 123:19-34
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/ConstBool at 123:19-34
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/Negate at 123:19-34
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 125:29-30
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 127:44-45
22.31 s
[really-safe-money] mutation: recording Numeric.DecimalLiteral/IntLit at 130:48-49
22.41 s
[genvalidity-sydtest] [16 of 16] Linking dist/build/genvalidity-sydtest-test/genvalidity-sydtest-test
24.22 s
[really-safe-money] [ 2 of 12] Compiling Money.QuantisationFactor ( src/Money/QuantisationFactor.hs, dist/build/Money/QuantisationFactor.p_o )
24.24 s
[really-safe-money] mutation: instrumenting Money.QuantisationFactor
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 87:27-28
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 87:12-28
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 87:12-28
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/Negate at 87:12-28
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/CondFlip at 87:9-22
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 92:13-14
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 92:13-14
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 93:16-17
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 93:12-17
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 93:12-17
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/Negate at 93:12-17
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/CondFlip at 93:9-22
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 98:27-28
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 98:27-28
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 98:8-28
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 98:8-28
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/Negate at 98:8-28
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/CondFlip at 98:5-19
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 102:6-46
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 102:6-46
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/Negate at 102:6-46
24.24 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 67:67-68
24.25 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 67:67-68
24.25 s
[really-safe-money] mutation: recording Money.QuantisationFactor/IntLit at 40:62-63
24.25 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 40:57-63
24.25 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ConstBool at 40:57-63
24.25 s
[really-safe-money] mutation: recording Money.QuantisationFactor/Negate at 40:57-63
24.25 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ListLit at 39:7-8
24.25 s
[really-safe-money] mutation: recording Money.QuantisationFactor/ListLit at 39:7-8
24.34 s
[genvalidity-sydtest] Phase: checkPhase
24.77 s
[genvalidity-sydtest] Running 1 test suites...
24.78 s
[genvalidity-sydtest] Test suite genvalidity-sydtest-test: RUNNING...
24.81 s
[really-safe-money] [ 3 of 12] Compiling Money.Currency ( src/Money/Currency.hs, dist/build/Money/Currency.p_o )
24.81 s
[really-safe-money] mutation: instrumenting Money.Currency
24.85 s
[genvalidity-sydtest] Tests:
24.85 s
[genvalidity-sydtest]
24.85 s
[genvalidity-sydtest] Test.Syd.Validity.MonoidSpec
24.85 s
[genvalidity-sydtest] Monoid [Int]
24.85 s
[genvalidity-sydtest] mappend :: [Int] -> [Int] -> [Int]
24.85 s
[genvalidity-sydtest] ✓ is an associative operation for "valid :: ([Int],[Int],[Int])" 7.04 ms
24.85 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.85 s
[genvalidity-sydtest] mempty :: [Int]
24.85 s
[genvalidity-sydtest] ✓ is the identity for mappend :: [Int] -> [Int] -> [Int] for "valid :: [Int]" 6.27 ms
24.85 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.85 s
[genvalidity-sydtest] mconcat :: [[Int]] -> [Int]
24.85 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation for "valid :: [[Int]]" 9.72 ms
24.85 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.85 s
[genvalidity-sydtest] Monoid [Int]
24.85 s
[genvalidity-sydtest] mconcat :: [[Int]] -> [Int]
24.85 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation for "arbitrary :: [[Int]]" 6.08 ms
24.85 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.85 s
[genvalidity-sydtest] mempty :: [Int]
24.85 s
[genvalidity-sydtest] ✓ is the identity for mappend :: [Int] -> [Int] -> [Int] for "arbitrary :: [Int]" 4.80 ms
24.85 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.85 s
[genvalidity-sydtest] mappend :: [Int] -> [Int] -> [Int]
24.85 s
[genvalidity-sydtest] ✓ is an associative operation for "arbitrary :: ([Int],[Int],[Int])" 6.60 ms
24.85 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.85 s
[genvalidity-sydtest] Monoid ([Ratio Integer])
24.85 s
[genvalidity-sydtest] mappend :: ([Ratio Integer]) -> ([Ratio Integer]) -> ([Ratio Integer])
24.85 s
[genvalidity-sydtest] ✓ is an associative operation for "valid :: (([Ratio Integer],[Ratio Integer],[Ratio Integer]))" 47.39 ms
24.85 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.85 s
[genvalidity-sydtest] mempty :: ([Ratio Integer])
24.85 s
[genvalidity-sydtest] ✓ is the identity for mappend :: ([Ratio Integer]) -> ([Ratio Integer]) -> ([Ratio Integer]) for "valid :: ([Ratio Integer])" 25.57 ms
24.85 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.85 s
[genvalidity-sydtest] mconcat :: [([Ratio Integer])] -> ([Ratio Integer])
24.85 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation for "valid :: ([[Ratio Integer]])" 11.48 ms
24.85 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.85 s
[genvalidity-sydtest] Monoid [Char]
24.85 s
[genvalidity-sydtest] mappend :: [Char] -> [Char] -> [Char]
24.85 s
[genvalidity-sydtest] ✓ is an associative operation for "singleton list of 'a' :: ([Char],[Char],[Char])" 4.77 ms
24.85 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.85 s
[genvalidity-sydtest] mempty :: [Char]
24.85 s
[genvalidity-sydtest] ✓ is the identity for mappend :: [Char] -> [Char] -> [Char] for "singleton list of 'a' :: [Char]" 2.51 ms
24.85 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.85 s
[genvalidity-sydtest] mconcat :: [[Char]] -> [Char]
24.85 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation for "singleton list of 'a' :: [[Char]]" 5.80 ms
24.85 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.85 s
[genvalidity-sydtest] Test.Syd.Validity.OrdSpec
24.85 s
[genvalidity-sydtest] Ord (Ratio Integer)
24.86 s
[genvalidity-sydtest] "max :: (Ratio Integer -> Ratio Integer -> Ratio Integer)"
24.86 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> if a >= b then a else b) for "valid (Ratio Integer)"'s 10.82 ms
24.86 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.86 s
[genvalidity-sydtest] (>=) :: (Ratio Integer) -> (Ratio Integer) -> Bool
24.86 s
[genvalidity-sydtest] ✓ is transitive for "valid (Ratio Integer)"'s 9.14 ms
24.86 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.86 s
[genvalidity-sydtest] ✓ is antisymmetric for "valid (Ratio Integer)"'s 10.11 ms
24.86 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.86 s
[genvalidity-sydtest] ✓ is reflexive for "valid (Ratio Integer)"'s 9.74 ms
24.86 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.86 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b /= LT) for "valid (Ratio Integer)"'s 10.12 ms
24.86 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.86 s
[genvalidity-sydtest] "min :: (Ratio Integer -> Ratio Integer -> Ratio Integer)"
24.86 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> if a <= b then a else b) for "valid (Ratio Integer)"'s 9.70 ms
24.86 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.86 s
[genvalidity-sydtest] (<=) :: (Ratio Integer) -> (Ratio Integer) -> Bool
24.86 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b /= GT) for "valid (Ratio Integer)"'s 10.06 ms
24.86 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] ✓ is reflexive for "valid (Ratio Integer)"'s 9.06 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] ✓ is transitive for "valid (Ratio Integer)"'s 9.10 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] ✓ is antisymmetric for "valid (Ratio Integer)"'s 10.00 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] (>) :: (Ratio Integer) -> (Ratio Integer) -> Bool
24.87 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b == GT) for "valid (Ratio Integer)"'s 10.28 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] ✓ is transitive for "valid (Ratio Integer)"'s 8.73 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] ✓ is antireflexive for "valid (Ratio Integer)"'s 4.94 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] (<) :: (Ratio Integer) -> (Ratio Integer) -> Bool
24.87 s
[genvalidity-sydtest] ✓ is antireflexive for "valid (Ratio Integer)"'s 7.78 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b == LT) for "valid (Ratio Integer)"'s 8.02 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] ✓ is transitive for "valid (Ratio Integer)"'s 7.86 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] Ord Int
24.87 s
[genvalidity-sydtest] (<=) :: Int -> Int -> Bool
24.87 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b /= GT) for "arbitrary Int"'s 5.19 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] ✓ is transitive for "arbitrary Int"'s 5.22 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] ✓ is reflexive for "arbitrary Int"'s 4.76 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] ✓ is antisymmetric for "arbitrary Int"'s 4.79 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] "min :: (Int -> Int -> Int)"
24.87 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> if a <= b then a else b) for "arbitrary Int"'s 4.42 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] (>) :: Int -> Int -> Bool
24.87 s
[genvalidity-sydtest] ✓ is antireflexive for "arbitrary Int"'s 4.45 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] ✓ is transitive for "arbitrary Int"'s 4.19 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b == GT) for "arbitrary Int"'s 3.85 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] "max :: (Int -> Int -> Int)"
24.87 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> if a >= b then a else b) for "arbitrary Int"'s 3.87 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] (<) :: Int -> Int -> Bool
24.87 s
[genvalidity-sydtest] ✓ is transitive for "arbitrary Int"'s 1.75 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b == LT) for "arbitrary Int"'s 2.08 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] ✓ is antireflexive for "arbitrary Int"'s 9.29 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.87 s
[genvalidity-sydtest] (>=) :: Int -> Int -> Bool
24.87 s
[genvalidity-sydtest] ✓ is transitive for "arbitrary Int"'s 1.74 ms
24.87 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b /= LT) for "arbitrary Int"'s 8.73 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is reflexive for "arbitrary Int"'s 1.62 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is antisymmetric for "arbitrary Int"'s 1.46 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] Ord Int
24.89 s
[genvalidity-sydtest] (>=) :: Int -> Int -> Bool
24.89 s
[genvalidity-sydtest] ✓ is antisymmetric for "valid Int"'s 1.45 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b /= LT) for "valid Int"'s 1.60 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is transitive for "valid Int"'s 8.39 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is reflexive for "valid Int"'s 8.36 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] "max :: (Int -> Int -> Int)"
24.89 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> if a >= b then a else b) for "valid Int"'s 8.45 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] "min :: (Int -> Int -> Int)"
24.89 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> if a <= b then a else b) for "valid Int"'s 8.37 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] (>) :: Int -> Int -> Bool
24.89 s
[genvalidity-sydtest] ✓ is antireflexive for "valid Int"'s 8.38 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b == GT) for "valid Int"'s 8.23 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is transitive for "valid Int"'s 8.18 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] (<) :: Int -> Int -> Bool
24.89 s
[genvalidity-sydtest] ✓ is antireflexive for "valid Int"'s 8.23 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is transitive for "valid Int"'s 8.17 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b == LT) for "valid Int"'s 8.42 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] (<=) :: Int -> Int -> Bool
24.89 s
[genvalidity-sydtest] ✓ is antisymmetric for "valid Int"'s 8.44 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b /= GT) for "valid Int"'s 8.31 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is transitive for "valid Int"'s 10.81 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is reflexive for "valid Int"'s 8.70 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] Ord Int
24.89 s
[genvalidity-sydtest] (>=) :: Int -> Int -> Bool
24.89 s
[genvalidity-sydtest] ✓ is transitive for "even Int"'s 8.63 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b /= LT) for "even Int"'s 8.72 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
24.89 s
[genvalidity-sydtest] ✓ is antisymmetric for "even Int"'s 8.66 ms
24.89 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ is reflexive for "even Int"'s 8.36 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] (<) :: Int -> Int -> Bool
25.09 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b == LT) for "even Int"'s 9.61 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ is antireflexive for "even Int"'s 10.09 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ is transitive for "even Int"'s 10.02 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] (>) :: Int -> Int -> Bool
25.09 s
[genvalidity-sydtest] ✓ is transitive for "even Int"'s 10.08 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b == GT) for "even Int"'s 10.01 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ is antireflexive for "even Int"'s 9.91 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] "max :: (Int -> Int -> Int)"
25.09 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> if a >= b then a else b) for "even Int"'s 3.08 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] "min :: (Int -> Int -> Int)"
25.09 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> if a <= b then a else b) for "even Int"'s 3.22 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] (<=) :: Int -> Int -> Bool
25.09 s
[genvalidity-sydtest] ✓ is transitive for "even Int"'s 6.43 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ is reflexive for "even Int"'s 3.23 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> compare a b /= GT) for "even Int"'s 6.40 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ is antisymmetric for "even Int"'s 6.19 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] Test.Syd.Validity.MonadSpec
25.09 s
[genvalidity-sydtest] Monad []
25.09 s
[genvalidity-sydtest] relation with Applicative []
25.09 s
[genvalidity-sydtest] ✓ satisfies 'pure = return' for "[] of ints :: [Int]" 3.20 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfies '(>>) = (*>)' for "[] of ints :: [Int]" and "[] of ints :: [Int]" 15.18 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfies '(<*>) = ap' for "[] of additions :: ([Int -> Int])" and "[] of ints :: [Int]" 6.43 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] relation with Functor []
25.09 s
[genvalidity-sydtest] ✓ satisfies 'fmap f xs = xs >>= return . f' for "increments :: (Int -> Int)" and "[] of ints :: [Int]" 6.38 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] (>>=) :: [] a -> (b -> [] a) -> [] b
25.09 s
[genvalidity-sydtest] ✓ satisfies the third Monad law: 'm >>= (x -> k x >>= h) = (m >>= k) >>= h' for "[] of ints :: [Int]" "perturbations using the int :: (Int -> [Int])" and "perturbations using the double the int :: (Int -> [Int])" 272.74 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] return :: a -> [] a and (>>=) :: [] a -> (b -> [] a) -> [] b
25.09 s
[genvalidity-sydtest] ✓ satisfy the first Monad law: 'return a >>= k = k a' for "int :: Int" and "perturbations using the int :: (Int -> [Int])" 6.02 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfy the second Monad law: 'm >>= return = m' for "[] of ints :: [Int]" 6.03 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] Monad Maybe
25.09 s
[genvalidity-sydtest] (>>=) :: Maybe a -> (b -> Maybe a) -> Maybe b
25.09 s
[genvalidity-sydtest] ✓ satisfies the third Monad law: 'm >>= (x -> k x >>= h) = (m >>= k) >>= h' for "Maybe of ints :: (Maybe Int)" "perturbations using the int :: (Int -> Maybe Int)" and "perturbations using the double the int :: (Int -> Maybe Int)" 6.34 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] return :: a -> Maybe a and (>>=) :: Maybe a -> (b -> Maybe a) -> Maybe b
25.09 s
[genvalidity-sydtest] ✓ satisfy the second Monad law: 'm >>= return = m' for "Maybe of ints :: (Maybe Int)" 6.00 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfy the first Monad law: 'return a >>= k = k a' for "int :: Int" and "perturbations using the int :: (Int -> Maybe Int)" 5.97 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] relation with Functor Maybe
25.09 s
[genvalidity-sydtest] ✓ satisfies 'fmap f xs = xs >>= return . f' for "increments :: (Int -> Int)" and "Maybe of ints :: (Maybe Int)" 13.91 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] relation with Applicative Maybe
25.09 s
[genvalidity-sydtest] ✓ satisfies '(<*>) = ap' for "Maybe of additions :: (Maybe (Int -> Int))" and "Maybe of ints :: (Maybe Int)" 5.99 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfies 'pure = return' for "Maybe of ints :: (Maybe Int)" 5.99 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfies '(>>) = (*>)' for "Maybe of ints :: (Maybe Int)" and "Maybe of ints :: (Maybe Int)" 8.57 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] Monad Maybe
25.09 s
[genvalidity-sydtest] (>>=) :: Maybe a -> (b -> Maybe a) -> Maybe b
25.09 s
[genvalidity-sydtest] ✓ satisfies the third Monad law: 'm >>= (x -> k x >>= h) = (m >>= k) >>= h' for "Maybe of ints :: (Maybe Int)" "perturbations using the int :: (Int -> Maybe Int)" and "perturbations using the double the int :: (Int -> Maybe Int)" 8.16 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] relation with Applicative Maybe
25.09 s
[genvalidity-sydtest] ✓ satisfies 'pure = return' for "Maybe of ints :: (Maybe Int)" 8.12 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfies '(>>) = (*>)' for "Maybe of ints :: (Maybe Int)" and "Maybe of ints :: (Maybe Int)" 8.17 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfies '(<*>) = ap' for "Maybe of additions :: (Maybe (Int -> Int))" and "Maybe of ints :: (Maybe Int)" 8.13 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] return :: a -> Maybe a and (>>=) :: Maybe a -> (b -> Maybe a) -> Maybe b
25.09 s
[genvalidity-sydtest] ✓ satisfy the second Monad law: 'm >>= return = m' for "Maybe of ints :: (Maybe Int)" 8.21 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfy the first Monad law: 'return a >>= k = k a' for "int :: Int" and "perturbations using the int :: (Int -> Maybe Int)" 8.42 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] relation with Functor Maybe
25.09 s
[genvalidity-sydtest] ✓ satisfies 'fmap f xs = xs >>= return . f' for "increments :: (Int -> Int)" and "Maybe of ints :: (Maybe Int)" 8.35 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] Monad (Either Int)
25.09 s
[genvalidity-sydtest] return :: a -> (Either Int) a and (>>=) :: (Either Int) a -> (b -> (Either Int) a) -> (Either Int) b
25.09 s
[genvalidity-sydtest] ✓ satisfy the second Monad law: 'm >>= return = m' for "(Either Int) of ints :: (Either Int Int)" 11.79 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfy the first Monad law: 'return a >>= k = k a' for "int :: Int" and "perturbations using the int :: (Int -> Either Int Int)" 8.19 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] relation with Applicative (Either Int)
25.09 s
[genvalidity-sydtest] ✓ satisfies '(<*>) = ap' for "(Either Int) of additions :: (Either Int (Int -> Int))" and "(Either Int) of ints :: (Either Int Int)" 8.17 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfies 'pure = return' for "(Either Int) of ints :: (Either Int Int)" 5.22 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfies '(>>) = (*>)' for "(Either Int) of ints :: (Either Int Int)" and "(Either Int) of ints :: (Either Int Int)" 5.02 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] (>>=) :: (Either Int) a -> (b -> (Either Int) a) -> (Either Int) b
25.09 s
[genvalidity-sydtest] ✓ satisfies the third Monad law: 'm >>= (x -> k x >>= h) = (m >>= k) >>= h' for "(Either Int) of ints :: (Either Int Int)" "perturbations using the int :: (Int -> Either Int Int)" and "perturbations using the double the int :: (Int -> Either Int Int)" 5.05 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] relation with Functor (Either Int)
25.09 s
[genvalidity-sydtest] ✓ satisfies 'fmap f xs = xs >>= return . f' for "increments :: (Int -> Int)" and "(Either Int) of ints :: (Either Int Int)" 5.11 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] Monad Maybe
25.09 s
[genvalidity-sydtest] relation with Functor Maybe
25.09 s
[genvalidity-sydtest] ✓ satisfies 'fmap f xs = xs >>= return . f' for "appends :: ([Char] -> [Char])" and "Just an ABC :: (Maybe [Char])" 9.48 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] relation with Applicative Maybe
25.09 s
[genvalidity-sydtest] ✓ satisfies 'pure = return' for "Just an ABC :: (Maybe [Char])" 5.02 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfies '(>>) = (*>)' for "Just an ABC :: (Maybe [Char])" and "Just an ABC :: (Maybe [Char])" 9.07 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfies '(<*>) = ap' for "append 'a' in Just :: (Maybe ([Char] -> [Char]))" and "Just an ABC :: (Maybe [Char])" 8.76 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] (>>=) :: Maybe a -> (b -> Maybe a) -> Maybe b
25.09 s
[genvalidity-sydtest] ✓ satisfies the third Monad law: 'm >>= (x -> k x >>= h) = (m >>= k) >>= h' for "Just an ABC :: (Maybe [Char])" "justisation :: ([Char] -> Maybe [Char])" and "justisation :: ([Char] -> Maybe [Char])" 8.99 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] return :: a -> Maybe a and (>>=) :: Maybe a -> (b -> Maybe a) -> Maybe b
25.09 s
[genvalidity-sydtest] ✓ satisfy the second Monad law: 'm >>= return = m' for "Just an ABC :: (Maybe [Char])" 8.91 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] ✓ satisfy the first Monad law: 'return a >>= k = k a' for "ABC :: [Char]" and "justisation :: ([Char] -> Maybe [Char])" 8.96 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.09 s
[genvalidity-sydtest] Monad []
25.09 s
[genvalidity-sydtest] (>>=) :: [] a -> (b -> [] a) -> [] b
25.09 s
[genvalidity-sydtest] ✓ satisfies the third Monad law: 'm >>= (x -> k x >>= h) = (m >>= k) >>= h' for "list of fives :: [Int]" "singletonisation :: (Int -> [Int])" and "singletonisation :: (Int -> [Int])" 15.11 ms
25.09 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] return :: a -> [] a and (>>=) :: [] a -> (b -> [] a) -> [] b
25.10 s
[genvalidity-sydtest] ✓ satisfy the second Monad law: 'm >>= return = m' for "list of fives :: [Int]" 16.94 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ satisfy the first Monad law: 'return a >>= k = k a' for "four :: Int" and "singletonisation :: (Int -> [Int])" 12.96 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] relation with Applicative []
25.10 s
[genvalidity-sydtest] ✓ satisfies 'pure = return' for "list of fives :: [Int]" 12.93 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ satisfies '(>>) = (*>)' for "list of fives :: [Int]" and "list of sixes :: [Int]" 14.90 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ satisfies '(<*>) = ap' for "increment in list :: ([Int -> Int])" and "list of fives :: [Int]" 14.65 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] relation with Functor []
25.10 s
[genvalidity-sydtest] ✓ satisfies 'fmap f xs = xs >>= return . f' for "factorisations :: (Int -> Int)" and "list of fives :: [Int]" 12.94 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] Monad []
25.10 s
[genvalidity-sydtest] relation with Functor []
25.10 s
[genvalidity-sydtest] ✓ satisfies 'fmap f xs = xs >>= return . f' for "increments :: (Int -> Int)" and "[] of ints :: [Int]" 14.53 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] (>>=) :: [] a -> (b -> [] a) -> [] b
25.10 s
[genvalidity-sydtest] ✓ satisfies the third Monad law: 'm >>= (x -> k x >>= h) = (m >>= k) >>= h' for "[] of ints :: [Int]" "perturbations using the int :: (Int -> [Int])" and "perturbations using the double the int :: (Int -> [Int])" 197.37 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] relation with Applicative []
25.10 s
[genvalidity-sydtest] ✓ satisfies '(>>) = (*>)' for "[] of ints :: [Int]" and "[] of ints :: [Int]" 14.69 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ satisfies 'pure = return' for "[] of ints :: [Int]" 14.35 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ satisfies '(<*>) = ap' for "[] of additions :: ([Int -> Int])" and "[] of ints :: [Int]" 14.62 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] return :: a -> [] a and (>>=) :: [] a -> (b -> [] a) -> [] b
25.10 s
[genvalidity-sydtest] ✓ satisfy the first Monad law: 'return a >>= k = k a' for "int :: Int" and "perturbations using the int :: (Int -> [Int])" 14.35 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ satisfy the second Monad law: 'm >>= return = m' for "[] of ints :: [Int]" 14.52 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] Test.Syd.Validity.EqSpec
25.10 s
[genvalidity-sydtest] Eq (Ratio Integer)
25.10 s
[genvalidity-sydtest] (==) :: (Ratio Integer) -> (Ratio Integer) -> Bool
25.10 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> not $ a /= b) for "valid (Ratio Integer)"s 14.57 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is transitive for "valid (Ratio Integer)"s 14.55 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is reflexive for "valid (Ratio Integer)"s 14.53 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is symmetric for "valid (Ratio Integer)"s 11.68 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] (/=) :: (Ratio Integer) -> (Ratio Integer) -> Bool
25.10 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> not $ a == b) for "valid (Ratio Integer)"s 11.66 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is antireflexive for "valid (Ratio Integer)"s 10.97 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] Eq Int
25.10 s
[genvalidity-sydtest] (==) :: Int -> Int -> Bool
25.10 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> not $ a /= b) for "valid Int"s 10.61 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is reflexive for "valid Int"s 10.58 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is transitive for "valid Int"s 10.39 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is symmetric for "valid Int"s 10.35 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] (/=) :: Int -> Int -> Bool
25.10 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> not $ a == b) for "valid Int"s 10.37 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is antireflexive for "valid Int"s 10.34 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] Eq Int
25.10 s
[genvalidity-sydtest] (==) :: Int -> Int -> Bool
25.10 s
[genvalidity-sydtest] ✓ is transitive for "arbitrary Int"s 4.43 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is symmetric for "arbitrary Int"s 3.13 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is reflexive for "arbitrary Int"s 3.12 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> not $ a /= b) for "arbitrary Int"s 4.68 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] (/=) :: Int -> Int -> Bool
25.10 s
[genvalidity-sydtest] ✓ is antireflexive for "arbitrary Int"s 4.47 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> not $ a == b) for "arbitrary Int"s 2.93 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] Eq Int
25.10 s
[genvalidity-sydtest] (/=) :: Int -> Int -> Bool
25.10 s
[genvalidity-sydtest] ✓ is antireflexive for "even Int"s 1.51 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> not $ a == b) for "even Int"s 2.24 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] (==) :: Int -> Int -> Bool
25.10 s
[genvalidity-sydtest] ✓ is equivalent to (\a b -> not $ a /= b) for "even Int"s 2.90 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is symmetric for "even Int"s 2.68 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is reflexive for "even Int"s 1.98 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ is transitive for "even Int"s 1.98 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] Test.Syd.Validity.ArbitrarySpec
25.10 s
[genvalidity-sydtest] Arbitrary Int
25.10 s
[genvalidity-sydtest] arbitrary :: Gen Int
25.10 s
[genvalidity-sydtest] ✓ only generates valid values 2.58 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] Test.Syd.Validity.Operations.CommutativitySpec
25.10 s
[genvalidity-sydtest] commutative
25.10 s
[genvalidity-sydtest] ✓ cross product is not commutative 17.97 ms
25.10 s
[genvalidity-sydtest] passed for all of 1 inputs.
25.10 s
[genvalidity-sydtest] ✓ + is commutative 2.55 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ * is commutative 2.65 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ - is not commutative 50.78 ms
25.10 s
[genvalidity-sydtest] passed for all of 1 inputs.
25.10 s
[genvalidity-sydtest] ✓ dot product is commutative 2.55 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] Test.Syd.Validity.GenValiditySpec
25.10 s
[genvalidity-sydtest] GenValid (Ratio Integer)
25.10 s
[genvalidity-sydtest] genValid :: Gen (Ratio Integer)
25.10 s
[genvalidity-sydtest] ✓ only generates valid '(Ratio Integer)'s 2.62 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] GenValid (Ratio Integer)
25.10 s
[genvalidity-sydtest] genValid :: Gen (Ratio Integer)
25.10 s
[genvalidity-sydtest] ✓ only generates valid '(Ratio Integer)'s 2.49 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] Test.Syd.Validity.ShrinkingSpec
25.10 s
[genvalidity-sydtest] shrinkValid :: (Int -> [Int])
25.10 s
[genvalidity-sydtest] ✓ preserves validity 18.32 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ never shrinks to itself for valid values 17.72 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] shrinkValidPreservesValidOnGenValid
25.10 s
[genvalidity-sydtest] ✓ [Ordering] 29.01 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ Ordering 3.81 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] shrinkValid :: (Ratio Int8 -> [Ratio Int8])
25.10 s
[genvalidity-sydtest] ✓ never shrinks to itself for valid values 18.17 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] ✓ preserves validity 20.37 ms
25.10 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.10 s
[genvalidity-sydtest] shrinkValidDoesNotShrinkToItself
25.10 s
[genvalidity-sydtest] ✓ [Int] 124.47 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ Int 17.63 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] shrinkValidDoesNotShrinkToItself
25.11 s
[genvalidity-sydtest] ✓ [Ordering] 20.94 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ Ordering 9.72 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] shrinkValidPreservesValidOnGenValid
25.11 s
[genvalidity-sydtest] ✓ Ordering 16.02 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ [Ordering] 27.50 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Test.Syd.Validity.FunctorSpec
25.11 s
[genvalidity-sydtest] Functor Maybe
25.11 s
[genvalidity-sydtest] fmap :: (a -> b) -> Maybe a -> Maybe b
25.11 s
[genvalidity-sydtest] ✓ satisfieds the second Functor law: 'fmap (f . g) == fmap f . fmap g' for "Just an ABC :: (Maybe [Char])" 's given to "prepends :: ([Char] -> [Char])" and "appends :: ([Char] -> [Char])" 15.59 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfies the first Fuctor law: 'fmap id == id' for "Just an ABC :: (Maybe [Char])" 15.38 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] (<$) :: a -> Maybe b -> Maybe a
25.11 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation for "ABC :: [Char]" and "Just an ABC :: (Maybe [Char])" 15.38 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Functor []
25.11 s
[genvalidity-sydtest] fmap :: (a -> b) -> [] a -> [] b
25.11 s
[genvalidity-sydtest] ✓ satisfies the first Fuctor law: 'fmap id == id' for "list of fives :: [Int]" 15.44 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfieds the second Functor law: 'fmap (f . g) == fmap f . fmap g' for "list of fives :: [Int]" 's given to "increments :: (Int -> Int)" and "scalings :: (Int -> Int)" 16.11 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] (<$) :: a -> [] b -> [] a
25.11 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation for "four :: Int" and "list of fives :: [Int]" 15.43 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Functor []
25.11 s
[genvalidity-sydtest] (<$) :: a -> [] b -> [] a
25.11 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation for "int :: Int" and "[] of ints :: [Int]" 15.86 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] fmap :: (a -> b) -> [] a -> [] b
25.11 s
[genvalidity-sydtest] ✓ satisfieds the second Functor law: 'fmap (f . g) == fmap f . fmap g' for "[] of ints :: [Int]" 's given to "increments :: (Int -> Int)" and "scalings :: (Int -> Int)" 16.03 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfies the first Fuctor law: 'fmap id == id' for "[] of ints :: [Int]" 16.00 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Functor (Either Int)
25.11 s
[genvalidity-sydtest] fmap :: (a -> b) -> (Either Int) a -> (Either Int) b
25.11 s
[genvalidity-sydtest] ✓ satisfies the first Fuctor law: 'fmap id == id' for "(Either Int) of ints :: (Either Int Int)" 15.32 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfieds the second Functor law: 'fmap (f . g) == fmap f . fmap g' for "(Either Int) of ints :: (Either Int Int)" 's given to "increments :: (Int -> Int)" and "scalings :: (Int -> Int)" 15.77 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] (<$) :: a -> (Either Int) b -> (Either Int) a
25.11 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation for "int :: Int" and "(Either Int) of ints :: (Either Int Int)" 17.56 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Functor []
25.11 s
[genvalidity-sydtest] (<$) :: a -> [] b -> [] a
25.11 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation for "int :: Int" and "[] of ints :: [Int]" 17.91 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] fmap :: (a -> b) -> [] a -> [] b
25.11 s
[genvalidity-sydtest] ✓ satisfies the first Fuctor law: 'fmap id == id' for "[] of ints :: [Int]" 12.28 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfieds the second Functor law: 'fmap (f . g) == fmap f . fmap g' for "[] of ints :: [Int]" 's given to "increments :: (Int -> Int)" and "scalings :: (Int -> Int)" 9.38 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Functor Maybe
25.11 s
[genvalidity-sydtest] (<$) :: a -> Maybe b -> Maybe a
25.11 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation for "int :: Int" and "Maybe of ints :: (Maybe Int)" 5.93 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] fmap :: (a -> b) -> Maybe a -> Maybe b
25.11 s
[genvalidity-sydtest] ✓ satisfieds the second Functor law: 'fmap (f . g) == fmap f . fmap g' for "Maybe of ints :: (Maybe Int)" 's given to "increments :: (Int -> Int)" and "scalings :: (Int -> Int)" 6.02 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfies the first Fuctor law: 'fmap id == id' for "Maybe of ints :: (Maybe Int)" 5.89 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Functor ((,) Int)
25.11 s
[genvalidity-sydtest] fmap :: (a -> b) -> ((,) Int) a -> ((,) Int) b
25.11 s
[genvalidity-sydtest] ✓ satisfieds the second Functor law: 'fmap (f . g) == fmap f . fmap g' for "((,) Int) of ints :: (Int,Int)" 's given to "increments :: (Int -> Int)" and "scalings :: (Int -> Int)" 6.07 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfies the first Fuctor law: 'fmap id == id' for "((,) Int) of ints :: (Int,Int)" 5.88 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] (<$) :: a -> ((,) Int) b -> ((,) Int) a
25.11 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation for "int :: Int" and "((,) Int) of ints :: (Int,Int)" 8.21 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Functor Maybe
25.11 s
[genvalidity-sydtest] (<$) :: a -> Maybe b -> Maybe a
25.11 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation for "int :: Int" and "Maybe of ints :: (Maybe Int)" 5.97 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] fmap :: (a -> b) -> Maybe a -> Maybe b
25.11 s
[genvalidity-sydtest] ✓ satisfieds the second Functor law: 'fmap (f . g) == fmap f . fmap g' for "Maybe of ints :: (Maybe Int)" 's given to "increments :: (Int -> Int)" and "scalings :: (Int -> Int)" 8.98 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfies the first Fuctor law: 'fmap id == id' for "Maybe of ints :: (Maybe Int)" 7.80 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Test.Syd.Validity.ShowSpec
25.11 s
[genvalidity-sydtest] Show (Ratio Integer) and Read (Ratio Integer)
25.11 s
[genvalidity-sydtest] ✓ are implemented such that read . show == id for arbitrary values 7.73 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Show Int and Read Int
25.11 s
[genvalidity-sydtest] ✓ are implemented such that read . show == id for valid values 8.81 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Show (Ratio Integer) and Read (Ratio Integer)
25.11 s
[genvalidity-sydtest] ✓ are implemented such that read . show == id for valid values 16.13 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Show Int and Read Int
25.11 s
[genvalidity-sydtest] ✓ are implemented such that read . show == id for even values 8.64 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Test.Syd.Validity.ApplicativeSpec
25.11 s
[genvalidity-sydtest] Applicative []
25.11 s
[genvalidity-sydtest] (*>) :: [] a -> [] b -> [] b
25.11 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation 'u Type> v = pure (const id) <*> u <*> v' for "[] of ints :: [Int]" in front of "[] of ints :: Int" 22.40 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] pure :: a -> [] a and (<*>) :: [] (a -> b) -> [] a -> [] b
25.11 s
[genvalidity-sydtest] ✓ satisfy the interchange law: 'u <*> pure y = pure ($ y) <*> u' for "[] of increments :: ([Int -> Int])" sequenced with "int :: Int" 8.60 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfy the law about the functor instance: fmap f x = pure f <*> x for "increments :: (Int -> Int)" mapped over "[] of ints :: [Int]" 8.68 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfy the identity law: 'pure id <*> v = v' for "[] of ints :: [Int]" 7.02 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfy the composition law: 'pure (.) <*> u <*> v <*> w = u <*> (v <*> w)' for "[] of scalings :: ([Int -> Int])" composed with "[] of increments :: ([Int -> Int])" and applied to "[] of ints :: [Int]" 8.23 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfy the homomorphism law: 'pure f <*> pure x = pure (f x)' for "increments :: (Int -> Int)" sequenced with "int :: Int" 5.34 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] (<*) :: [] a -> [] b -> [] a
25.11 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation 'u <* v = pure const <*> u <*> v' for "[] of ints :: Int" behind "[] of ints :: [Int]" 18.98 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Applicative (Either Int)
25.11 s
[genvalidity-sydtest] (*>) :: (Either Int) a -> (Either Int) b -> (Either Int) b
25.11 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation 'u Type> v = pure (const id) <*> u <*> v' for "(Either Int) of ints :: (Either Int Int)" in front of "(Either Int) of ints :: Int" 3.65 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] (<*) :: (Either Int) a -> (Either Int) b -> (Either Int) a
25.11 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation 'u <* v = pure const <*> u <*> v' for "(Either Int) of ints :: Int" behind "(Either Int) of ints :: (Either Int Int)" 5.33 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] pure :: a -> (Either Int) a and (<*>) :: (Either Int) (a -> b) -> (Either Int) a -> (Either Int) b
25.11 s
[genvalidity-sydtest] ✓ satisfy the identity law: 'pure id <*> v = v' for "(Either Int) of ints :: (Either Int Int)" 5.30 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfy the law about the functor instance: fmap f x = pure f <*> x for "increments :: (Int -> Int)" mapped over "(Either Int) of ints :: (Either Int Int)" 5.33 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfy the composition law: 'pure (.) <*> u <*> v <*> w = u <*> (v <*> w)' for "(Either Int) of scalings :: (Either Int (Int -> Int))" composed with "(Either Int) of increments :: (Either Int (Int -> Int))" and applied to "(Either Int) of ints :: (Either Int Int)" 6.00 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfy the homomorphism law: 'pure f <*> pure x = pure (f x)' for "increments :: (Int -> Int)" sequenced with "int :: Int" 5.49 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfy the interchange law: 'u <*> pure y = pure ($ y) <*> u' for "(Either Int) of increments :: (Either Int (Int -> Int))" sequenced with "int :: Int" 5.51 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] Applicative Maybe
25.11 s
[genvalidity-sydtest] pure :: a -> Maybe a and (<*>) :: Maybe (a -> b) -> Maybe a -> Maybe b
25.11 s
[genvalidity-sydtest] ✓ satisfy the homomorphism law: 'pure f <*> pure x = pure (f x)' for "increments :: (Int -> Int)" sequenced with "int :: Int" 5.23 ms
25.11 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.11 s
[genvalidity-sydtest] ✓ satisfy the interchange law: 'u <*> pure y = pure ($ y) <*> u' for "Maybe of increments :: (Maybe (Int -> Int))" sequenced with "int :: Int" 5.24 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the law about the functor instance: fmap f x = pure f <*> x for "increments :: (Int -> Int)" mapped over "Maybe of ints :: (Maybe Int)" 5.25 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the composition law: 'pure (.) <*> u <*> v <*> w = u <*> (v <*> w)' for "Maybe of scalings :: (Maybe (Int -> Int))" composed with "Maybe of increments :: (Maybe (Int -> Int))" and applied to "Maybe of ints :: (Maybe Int)" 6.27 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the identity law: 'pure id <*> v = v' for "Maybe of ints :: (Maybe Int)" 6.01 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] (<*) :: Maybe a -> Maybe b -> Maybe a
25.12 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation 'u <* v = pure const <*> u <*> v' for "Maybe of ints :: Int" behind "Maybe of ints :: (Maybe Int)" 4.23 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] (*>) :: Maybe a -> Maybe b -> Maybe b
25.12 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation 'u Type> v = pure (const id) <*> u <*> v' for "Maybe of ints :: (Maybe Int)" in front of "Maybe of ints :: Int" 4.26 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] Applicative Maybe
25.12 s
[genvalidity-sydtest] (<*) :: Maybe a -> Maybe b -> Maybe a
25.12 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation 'u <* v = pure const <*> u <*> v' for "purely Nothing :: [Char]" behind "Just an ABC :: (Maybe [Char])" 5.99 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] (*>) :: Maybe a -> Maybe b -> Maybe b
25.12 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation 'u Type> v = pure (const id) <*> u <*> v' for "Just an ABC :: (Maybe [Char])" in front of "purely Nothing :: [Char]" 6.01 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] pure :: a -> Maybe a and (<*>) :: Maybe (a -> b) -> Maybe a -> Maybe b
25.12 s
[genvalidity-sydtest] ✓ satisfy the identity law: 'pure id <*> v = v' for "Just an ABC :: (Maybe [Char])" 13.64 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the law about the functor instance: fmap f x = pure f <*> x for "prepends :: ([Char] -> [Char])" mapped over "Just an ABC :: (Maybe [Char])" 7.36 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the homomorphism law: 'pure f <*> pure x = pure (f x)' for "prepends :: ([Char] -> [Char])" sequenced with "ABC :: [Char]" 7.33 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the composition law: 'pure (.) <*> u <*> v <*> w = u <*> (v <*> w)' for "appends in a Just :: (Maybe ([Char] -> [Char]))" composed with "prepends in a Just :: (Maybe ([Char] -> [Char]))" and applied to "Just an ABC :: (Maybe [Char])" 11.86 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the interchange law: 'u <*> pure y = pure ($ y) <*> u' for "prepends in a Just :: (Maybe ([Char] -> [Char]))" sequenced with "ABC :: [Char]" 11.87 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] Applicative []
25.12 s
[genvalidity-sydtest] (*>) :: [] a -> [] b -> [] b
25.12 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation 'u Type> v = pure (const id) <*> u <*> v' for "[] of ints :: [Int]" in front of "[] of ints :: Int" 23.06 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] pure :: a -> [] a and (<*>) :: [] (a -> b) -> [] a -> [] b
25.12 s
[genvalidity-sydtest] ✓ satisfy the homomorphism law: 'pure f <*> pure x = pure (f x)' for "increments :: (Int -> Int)" sequenced with "int :: Int" 4.17 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the composition law: 'pure (.) <*> u <*> v <*> w = u <*> (v <*> w)' for "[] of scalings :: ([Int -> Int])" composed with "[] of increments :: ([Int -> Int])" and applied to "[] of ints :: [Int]" 10.90 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the law about the functor instance: fmap f x = pure f <*> x for "increments :: (Int -> Int)" mapped over "[] of ints :: [Int]" 11.75 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the identity law: 'pure id <*> v = v' for "[] of ints :: [Int]" 11.60 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the interchange law: 'u <*> pure y = pure ($ y) <*> u' for "[] of increments :: ([Int -> Int])" sequenced with "int :: Int" 11.48 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] (<*) :: [] a -> [] b -> [] a
25.12 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation 'u <* v = pure const <*> u <*> v' for "[] of ints :: Int" behind "[] of ints :: [Int]" 20.61 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] Applicative []
25.12 s
[genvalidity-sydtest] pure :: a -> [] a and (<*>) :: [] (a -> b) -> [] a -> [] b
25.12 s
[genvalidity-sydtest] ✓ satisfy the homomorphism law: 'pure f <*> pure x = pure (f x)' for "increments :: (Int -> Int)" sequenced with "four :: Int" 9.73 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the interchange law: 'u <*> pure y = pure ($ y) <*> u' for "increments in a list :: ([Int -> Int])" sequenced with "four :: Int" 9.70 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the composition law: 'pure (.) <*> u <*> v <*> w = u <*> (v <*> w)' for "scalings in a list :: ([Int -> Int])" composed with "increments in a list :: ([Int -> Int])" and applied to "list of fives :: [Int]" 9.70 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the identity law: 'pure id <*> v = v' for "list of fives :: [Int]" 9.76 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the law about the functor instance: fmap f x = pure f <*> x for "increments :: (Int -> Int)" mapped over "list of fives :: [Int]" 9.67 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] (<*) :: [] a -> [] b -> [] a
25.12 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation 'u <* v = pure const <*> u <*> v' for "purely empty list :: Int" behind "list of fives :: [Int]" 8.00 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] (*>) :: [] a -> [] b -> [] b
25.12 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation 'u Type> v = pure (const id) <*> u <*> v' for "list of fives :: [Int]" in front of "purely empty list :: Int" 8.01 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] Applicative Maybe
25.12 s
[genvalidity-sydtest] (*>) :: Maybe a -> Maybe b -> Maybe b
25.12 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation 'u Type> v = pure (const id) <*> u <*> v' for "Maybe of ints :: (Maybe Int)" in front of "Maybe of ints :: Int" 8.13 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] (<*) :: Maybe a -> Maybe b -> Maybe a
25.12 s
[genvalidity-sydtest] ✓ is equivalent to its default implementation 'u <* v = pure const <*> u <*> v' for "Maybe of ints :: Int" behind "Maybe of ints :: (Maybe Int)" 8.16 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] pure :: a -> Maybe a and (<*>) :: Maybe (a -> b) -> Maybe a -> Maybe b
25.12 s
[genvalidity-sydtest] ✓ satisfy the composition law: 'pure (.) <*> u <*> v <*> w = u <*> (v <*> w)' for "Maybe of scalings :: (Maybe (Int -> Int))" composed with "Maybe of increments :: (Maybe (Int -> Int))" and applied to "Maybe of ints :: (Maybe Int)" 8.16 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the identity law: 'pure id <*> v = v' for "Maybe of ints :: (Maybe Int)" 6.77 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the law about the functor instance: fmap f x = pure f <*> x for "increments :: (Int -> Int)" mapped over "Maybe of ints :: (Maybe Int)" 11.23 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the homomorphism law: 'pure f <*> pure x = pure (f x)' for "increments :: (Int -> Int)" sequenced with "int :: Int" 6.88 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest] ✓ satisfy the interchange law: 'u <*> pure y = pure ($ y) <*> u' for "Maybe of increments :: (Maybe (Int -> Int))" sequenced with "int :: Int" 1.48 ms
25.12 s
[genvalidity-sydtest] passed for all of 100 inputs.
25.12 s
[genvalidity-sydtest]
25.12 s
[genvalidity-sydtest] Examples: 24402
25.12 s
[genvalidity-sydtest] Passed: 246
25.12 s
[genvalidity-sydtest] Failed: 0
25.12 s
[genvalidity-sydtest] Sum of test runtimes: 2.86 seconds
25.12 s
[genvalidity-sydtest] Test suite took: 0.30 seconds
25.12 s
[genvalidity-sydtest]
25.12 s
[genvalidity-sydtest] Test suite genvalidity-sydtest-test: PASS
25.12 s
[genvalidity-sydtest] Test suite logged to:
25.12 s
[genvalidity-sydtest] dist/test/genvalidity-sydtest-1.0.1.0-genvalidity-sydtest-test.log
25.12 s
[genvalidity-sydtest] 1 of 1 test suites (1 of 1 test cases) passed.
25.12 s
[genvalidity-sydtest] Phase: haddockPhase
25.26 s
[really-safe-money] [ 4 of 12] Compiling Money.ConversionRate ( src/Money/ConversionRate.hs, dist/build/Money/ConversionRate.p_o )
25.27 s
[really-safe-money] mutation: instrumenting Money.ConversionRate
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/IntLit at 116:45-46
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/IntLit at 116:45-46
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/IntLit at 109:27-28
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/IntLit at 109:27-28
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/IntLit at 72:25-26
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/ConstBool at 72:21-26
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/ConstBool at 72:21-26
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/Negate at 72:21-26
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/CondFlip at 72:18-69
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/IntLit at 38:56-57
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/ConstBool at 38:41-57
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/ConstBool at 38:41-57
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/Negate at 38:41-57
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/ListLit at 37:7-8
25.27 s
[really-safe-money] mutation: recording Money.ConversionRate/ListLit at 37:7-8
25.28 s
[genvalidity-sydtest] Preprocessing library for genvalidity-sydtest-1.0.1.0...
25.28 s
[genvalidity-sydtest] Running Haddock on library for genvalidity-sydtest-1.0.1.0...
25.29 s
[genvalidity-sydtest] Warning: The documentation for the following packages are not installed. No
25.29 s
[genvalidity-sydtest] links will be generated to these packages: attoparsec-0.14.4,
25.29 s
[genvalidity-sydtest] attoparsec-0.14.4, libyaml-clib-0.2.5, path-0.9.6, path-0.9.6, vector-0.13.2.0
25.58 s
[really-safe-money] [ 5 of 12] Compiling Money.ConversionRateOf ( src/Money/ConversionRateOf.hs, dist/build/Money/ConversionRateOf.p_o )
25.70 s
[really-safe-money] mutation: instrumenting Money.ConversionRateOf
25.70 s
[genvalidity-sydtest] [ 1 of 34] Compiling Paths_genvalidity_sydtest ( dist/build/autogen/Paths_genvalidity_sydtest.hs, nothing )
25.70 s
[genvalidity-sydtest] [ 2 of 34] Compiling Test.Syd.Validity.Functions.Idempotence ( src/Test/Syd/Validity/Functions/Idempotence.hs, nothing )
25.75 s
[genvalidity-sydtest] [ 3 of 34] Compiling Test.Syd.Validity.Operations.Associativity ( src/Test/Syd/Validity/Operations/Associativity.hs, nothing )
25.76 s
[genvalidity-sydtest] [ 4 of 34] Compiling Test.Syd.Validity.Operations.Commutativity ( src/Test/Syd/Validity/Operations/Commutativity.hs, nothing )
25.77 s
[genvalidity-sydtest] [ 5 of 34] Compiling Test.Syd.Validity.Operations.Identity ( src/Test/Syd/Validity/Operations/Identity.hs, nothing )
25.79 s
[genvalidity-sydtest] [ 6 of 34] Compiling Test.Syd.Validity.Operations ( src/Test/Syd/Validity/Operations.hs, nothing )
25.79 s
[genvalidity-sydtest] [ 7 of 34] Compiling Test.Syd.Validity.Property.Utils ( src/Test/Syd/Validity/Property/Utils.hs, nothing )
25.80 s
[genvalidity-sydtest] [ 8 of 34] Compiling Test.Syd.Validity.GenValidity.Property ( src/Test/Syd/Validity/GenValidity/Property.hs, nothing )
25.81 s
[genvalidity-sydtest] [ 9 of 34] Compiling Test.Syd.Validity.Functions.Validity ( src/Test/Syd/Validity/Functions/Validity.hs, nothing )
25.82 s
[really-safe-money] [ 6 of 12] Compiling Money.Amount ( src/Money/Amount.hs, dist/build/Money/Amount.p_o )
25.90 s
[really-safe-money] mutation: instrumenting Money.Amount
25.90 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 801:36-38
25.90 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 801:36-38
25.90 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 801:36-38
25.90 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 569:18-19
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 569:10-19
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 569:10-19
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 569:10-19
25.90 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 569:7-29
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 544:10-23
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 544:10-23
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 544:10-23
25.90 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 544:7-66
25.90 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 518:14-15
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 518:10-15
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 518:10-15
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 518:10-15
25.90 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 518:7-66
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 476:10-23
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 476:10-23
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 476:10-23
25.90 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 476:7-66
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 388:5-16
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 388:5-16
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 388:5-16
25.90 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 389:9-10
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 389:5-10
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 389:5-10
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 389:5-10
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 390:5-14
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 390:5-14
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 390:5-14
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 397:14-31
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 397:14-31
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 397:14-31
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 399:18-83
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 399:18-83
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 399:18-83
25.90 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 399:15-57
25.90 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 397:11-25
25.90 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 320:9-10
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 320:5-10
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 320:5-10
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 320:5-10
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 321:5-14
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 321:5-14
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 321:5-14
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 327:9-16
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 327:9-16
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 327:9-16
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 328:9-21
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 328:9-21
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 328:9-21
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 329:9-18
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 329:9-18
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 329:9-18
25.90 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 332:38-40
25.90 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 332:38-40
25.90 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 332:38-40
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 332:14-40
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 332:14-40
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 332:14-40
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 339:22-39
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 339:22-39
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 339:22-39
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 341:26-91
25.90 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 341:26-91
25.90 s
[really-safe-money] mutation: recording Money.Amount/Negate at 341:26-91
25.90 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 341:23-65
25.90 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 339:19-33
25.90 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 332:11-33
25.91 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 290:79-80
25.91 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 494:96-97
25.91 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 495:10-23
25.91 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 495:10-23
25.91 s
[really-safe-money] mutation: recording Money.Amount/Negate at 495:10-23
25.91 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 495:7-66
25.91 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 250:15-16
25.91 s
[really-safe-money] mutation: recording Money.Amount/IntLit at 661:30-31
25.91 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 681:12-37
25.91 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 681:12-37
25.91 s
[really-safe-money] mutation: recording Money.Amount/Negate at 681:12-37
25.91 s
[really-safe-money] mutation: recording Money.Amount/CondFlip at 681:9-27
25.91 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 806:79-92
25.91 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 806:79-92
25.91 s
[really-safe-money] mutation: recording Money.Amount/Negate at 806:79-92
25.91 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 607:15-22
25.91 s
[really-safe-money] mutation: recording Money.Amount/ConstBool at 607:15-22
25.91 s
[really-safe-money] mutation: recording Money.Amount/Negate at 607:15-22
25.91 s
[really-safe-money] mutation: recording Money.Amount/ListLit at 603:7-8
25.91 s
[really-safe-money] mutation: recording Money.Amount/ListLit at 603:7-8
25.91 s
[genvalidity-sydtest] [10 of 34] Compiling Test.Syd.Validity.Relations.Antireflexivity ( src/Test/Syd/Validity/Relations/Antireflexivity.hs, nothing )
25.92 s
[genvalidity-sydtest] [11 of 34] Compiling Test.Syd.Validity.Relations.Antisymmetry ( src/Test/Syd/Validity/Relations/Antisymmetry.hs, nothing )
25.94 s
[genvalidity-sydtest] [12 of 34] Compiling Test.Syd.Validity.Relations.Reflexivity ( src/Test/Syd/Validity/Relations/Reflexivity.hs, nothing )
25.95 s
[genvalidity-sydtest] [13 of 34] Compiling Test.Syd.Validity.Relations.Symmetry ( src/Test/Syd/Validity/Relations/Symmetry.hs, nothing )
25.95 s
[genvalidity-sydtest] [14 of 34] Compiling Test.Syd.Validity.Relations.Transitivity ( src/Test/Syd/Validity/Relations/Transitivity.hs, nothing )
25.97 s
[genvalidity-sydtest] [15 of 34] Compiling Test.Syd.Validity.Relations ( src/Test/Syd/Validity/Relations.hs, nothing )
25.97 s
[genvalidity-sydtest] [16 of 34] Compiling Test.Syd.Validity.Shrinking.Property ( src/Test/Syd/Validity/Shrinking/Property.hs, nothing )
25.99 s
[genvalidity-sydtest] [17 of 34] Compiling Test.Syd.Validity.Types ( src/Test/Syd/Validity/Types.hs, nothing )
25.99 s
[genvalidity-sydtest] [18 of 34] Compiling Test.Syd.Validity.Functions.Inverse ( src/Test/Syd/Validity/Functions/Inverse.hs, nothing )
26.01 s
[genvalidity-sydtest] [19 of 34] Compiling Test.Syd.Validity.Functions.Equivalence ( src/Test/Syd/Validity/Functions/Equivalence.hs, nothing )
26.12 s
[genvalidity-sydtest] [20 of 34] Compiling Test.Syd.Validity.Functions.CanFail ( src/Test/Syd/Validity/Functions/CanFail.hs, nothing )
26.17 s
[genvalidity-sydtest] [21 of 34] Compiling Test.Syd.Validity.Functions ( src/Test/Syd/Validity/Functions.hs, nothing )
26.18 s
[genvalidity-sydtest] [22 of 34] Compiling Test.Syd.Validity.Property ( src/Test/Syd/Validity/Property.hs, nothing )
26.18 s
[genvalidity-sydtest] [23 of 34] Compiling Test.Syd.Validity.Utils ( src/Test/Syd/Validity/Utils.hs, nothing )
26.20 s
[genvalidity-sydtest] [24 of 34] Compiling Test.Syd.Validity.Shrinking ( src/Test/Syd/Validity/Shrinking.hs, nothing )
26.22 s
[genvalidity-sydtest] [25 of 34] Compiling Test.Syd.Validity.Show ( src/Test/Syd/Validity/Show.hs, nothing )
26.24 s
[genvalidity-sydtest] [26 of 34] Compiling Test.Syd.Validity.Ord ( src/Test/Syd/Validity/Ord.hs, nothing )
26.45 s
[genvalidity-sydtest] [27 of 34] Compiling Test.Syd.Validity.Monoid ( src/Test/Syd/Validity/Monoid.hs, nothing )
26.47 s
[genvalidity-sydtest] [28 of 34] Compiling Test.Syd.Validity.Monad ( src/Test/Syd/Validity/Monad.hs, nothing )
26.70 s
[genvalidity-sydtest] [29 of 34] Compiling Test.Syd.Validity.GenValidity ( src/Test/Syd/Validity/GenValidity.hs, nothing )
26.72 s
[genvalidity-sydtest] [30 of 34] Compiling Test.Syd.Validity.Functor ( src/Test/Syd/Validity/Functor.hs, nothing )
26.75 s
[genvalidity-sydtest] [31 of 34] Compiling Test.Syd.Validity.Eq ( src/Test/Syd/Validity/Eq.hs, nothing )
26.78 s
[genvalidity-sydtest] [32 of 34] Compiling Test.Syd.Validity.Arbitrary ( src/Test/Syd/Validity/Arbitrary.hs, nothing )
26.79 s
[genvalidity-sydtest] [33 of 34] Compiling Test.Syd.Validity.Applicative ( src/Test/Syd/Validity/Applicative.hs, nothing )
26.84 s
[genvalidity-sydtest] [34 of 34] Compiling Test.Syd.Validity ( src/Test/Syd/Validity.hs, nothing )
26.85 s
[genvalidity-sydtest] Haddock coverage:
26.85 s
[genvalidity-sydtest] 50% ( 2 / 4) in 'Test.Syd.Validity.Functions.Idempotence'
26.85 s
[genvalidity-sydtest] Missing documentation for:
26.85 s
[genvalidity-sydtest] idempotentOnGen (src/Test/Syd/Validity/Functions/Idempotence.hs:17)
26.85 s
[genvalidity-sydtest] idempotent (src/Test/Syd/Validity/Functions/Idempotence.hs:20)
26.85 s
[genvalidity-sydtest] 75% ( 3 / 4) in 'Test.Syd.Validity.Operations.Associativity'
26.85 s
[genvalidity-sydtest] Missing documentation for:
26.85 s
[genvalidity-sydtest] Module header
26.85 s
[genvalidity-sydtest] 75% ( 3 / 4) in 'Test.Syd.Validity.Operations.Commutativity'
26.85 s
[genvalidity-sydtest] Missing documentation for:
26.85 s
[genvalidity-sydtest] Module header
26.86 s
[genvalidity-sydtest] 64% ( 9 / 14) in 'Test.Syd.Validity.Operations.Identity'
26.86 s
[genvalidity-sydtest] Missing documentation for:
26.86 s
[genvalidity-sydtest] Module header
26.86 s
[genvalidity-sydtest] leftIdentityOnGenWithEquality (src/Test/Syd/Validity/Operations/Identity.hs:54)
26.86 s
[genvalidity-sydtest] leftIdentityOnGen (src/Test/Syd/Validity/Operations/Identity.hs:66)
26.86 s
[genvalidity-sydtest] rightIdentityOnGenWithEquality (src/Test/Syd/Validity/Operations/Identity.hs:111)
26.86 s
[genvalidity-sydtest] rightIdentityOnGen (src/Test/Syd/Validity/Operations/Identity.hs:123)
26.86 s
[genvalidity-sydtest] 100% ( 4 / 4) in 'Test.Syd.Validity.Operations'
26.86 s
[genvalidity-sydtest] 0% ( 0 / 6) in 'Test.Syd.Validity.Property.Utils'
26.86 s
[genvalidity-sydtest] Missing documentation for:
26.86 s
[genvalidity-sydtest] Module header
26.86 s
[genvalidity-sydtest] forAllValid (src/Test/Syd/Validity/Property/Utils.hs:15)
26.86 s
[genvalidity-sydtest] shouldBeValid (src/Test/Syd/Validity/Property/Utils.hs:24)
26.86 s
[genvalidity-sydtest] shouldBeInvalid (src/Test/Syd/Validity/Property/Utils.hs:40)
26.86 s
[genvalidity-sydtest] <==> (src/Test/Syd/Validity/Property/Utils.hs:21)
26.86 s
[genvalidity-sydtest] ===> (src/Test/Syd/Validity/Property/Utils.hs:18)
26.86 s
[genvalidity-sydtest] 100% ( 3 / 3) in 'Test.Syd.Validity.GenValidity.Property'
26.86 s
[genvalidity-sydtest] 40% ( 4 / 10) in 'Test.Syd.Validity.Functions.Validity'
26.86 s
[genvalidity-sydtest] Missing documentation for:
26.86 s
[genvalidity-sydtest] producesValidsOnGens2 (src/Test/Syd/Validity/Functions/Validity.hs:51)
26.86 s
[genvalidity-sydtest] producesValid2 (src/Test/Syd/Validity/Functions/Validity.hs:58)
26.86 s
[genvalidity-sydtest] producesValidsOnArbitrary2 (src/Test/Syd/Validity/Functions/Validity.hs:64)
26.86 s
[genvalidity-sydtest] producesValidsOnGens3 (src/Test/Syd/Validity/Functions/Validity.hs:72)
26.86 s
[genvalidity-sydtest] producesValid3 (src/Test/Syd/Validity/Functions/Validity.hs:87)
26.86 s
[genvalidity-sydtest] producesValidsOnArbitrary3 (src/Test/Syd/Validity/Functions/Validity.hs:101)
26.86 s
[genvalidity-sydtest] 60% ( 3 / 5) in 'Test.Syd.Validity.Relations.Antireflexivity'
26.86 s
[genvalidity-sydtest] Missing documentation for:
26.86 s
[genvalidity-sydtest] Module header
26.86 s
[genvalidity-sydtest] antireflexivityOnGen (src/Test/Syd/Validity/Relations/Antireflexivity.hs:32)
26.86 s
[genvalidity-sydtest] 50% ( 3 / 6) in 'Test.Syd.Validity.Relations.Antisymmetry'
26.86 s
[genvalidity-sydtest] Missing documentation for:
26.86 s
[genvalidity-sydtest] Module header
26.86 s
[genvalidity-sydtest] antisymmetryOnGensWithEquality (src/Test/Syd/Validity/Relations/Antisymmetry.hs:43)
26.86 s
[genvalidity-sydtest] antisymmetryOnGens (src/Test/Syd/Validity/Relations/Antisymmetry.hs:54)
26.86 s
[genvalidity-sydtest] 60% ( 3 / 5) in 'Test.Syd.Validity.Relations.Reflexivity'
26.86 s
[genvalidity-sydtest] Missing documentation for:
26.86 s
[genvalidity-sydtest] Module header
26.86 s
[genvalidity-sydtest] reflexivityOnGen (src/Test/Syd/Validity/Relations/Reflexivity.hs:32)
26.86 s
[genvalidity-sydtest] 60% ( 3 / 5) in 'Test.Syd.Validity.Relations.Symmetry'
26.86 s
[genvalidity-sydtest] Missing documentation for:
26.86 s
[genvalidity-sydtest] Module header
26.86 s
[genvalidity-sydtest] symmetryOnGens (src/Test/Syd/Validity/Relations/Symmetry.hs:34)
26.86 s
[genvalidity-sydtest] 60% ( 3 / 5) in 'Test.Syd.Validity.Relations.Transitivity'
26.86 s
[genvalidity-sydtest] Missing documentation for:
26.86 s
[genvalidity-sydtest] Module header
26.86 s
[genvalidity-sydtest] transitivityOnGens (src/Test/Syd/Validity/Relations/Transitivity.hs:35)
26.86 s
[genvalidity-sydtest] 100% ( 6 / 6) in 'Test.Syd.Validity.Relations'
26.86 s
[genvalidity-sydtest] 100% ( 13 / 13) in 'Test.Syd.Validity.Shrinking.Property'
26.86 s
[genvalidity-sydtest] 50% ( 1 / 2) in 'Test.Syd.Validity.Types'
26.86 s
[genvalidity-sydtest] Missing documentation for:
26.86 s
[genvalidity-sydtest] Module header
26.86 s
[genvalidity-sydtest] 15% ( 2 / 13) in 'Test.Syd.Validity.Functions.Inverse'
26.86 s
[genvalidity-sydtest] Missing documentation for:
26.86 s
[genvalidity-sydtest] inverseFunctionsOnGen (src/Test/Syd/Validity/Functions/Inverse.hs:28)
26.86 s
[genvalidity-sydtest] inverseFunctions (src/Test/Syd/Validity/Functions/Inverse.hs:33)
26.86 s
[genvalidity-sydtest] inverseFunctionsIfFirstSucceedsOnGen (src/Test/Syd/Validity/Functions/Inverse.hs:49)
26.86 s
[genvalidity-sydtest] inverseFunctionsIfFirstSucceeds (src/Test/Syd/Validity/Functions/Inverse.hs:60)
26.86 s
[genvalidity-sydtest] inverseFunctionsIfFirstSucceedsOnArbitrary (src/Test/Syd/Validity/Functions/Inverse.hs:68)
26.86 s
[genvalidity-sydtest] inverseFunctionsIfSecondSucceedsOnGen (src/Test/Syd/Validity/Functions/Inverse.hs:78)
26.86 s
[genvalidity-sydtest] inverseFunctionsIfSecondSucceeds (src/Test/Syd/Validity/Functions/Inverse.hs:89)
26.86 s
[genvalidity-sydtest] inverseFunctionsIfSecondSucceedsOnArbitrary (src/Test/Syd/Validity/Functions/Inverse.hs:97)
26.86 s
[genvalidity-sydtest] inverseFunctionsIfSucceedOnGen (src/Test/Syd/Validity/Functions/Inverse.hs:107)
26.86 s
[genvalidity-sydtest] inverseFunctionsIfSucceed (src/Test/Syd/Validity/Functions/Inverse.hs:120)
26.86 s
[genvalidity-sydtest] inverseFunctionsIfSucceedOnArbitrary (src/Test/Syd/Validity/Functions/Inverse.hs:128)
26.86 s
[genvalidity-sydtest] 7% ( 2 / 28) in 'Test.Syd.Validity.Functions.Equivalence'
26.86 s
[genvalidity-sydtest] Missing documentation for:
26.86 s
[genvalidity-sydtest] Module header
26.86 s
[genvalidity-sydtest] equivalentOnGen (src/Test/Syd/Validity/Functions/Equivalence.hs:47)
26.86 s
[genvalidity-sydtest] equivalent (src/Test/Syd/Validity/Functions/Equivalence.hs:54)
26.86 s
[genvalidity-sydtest] equivalentOnGens2 (src/Test/Syd/Validity/Functions/Equivalence.hs:73)
26.86 s
[genvalidity-sydtest] equivalent2 (src/Test/Syd/Validity/Functions/Equivalence.hs:81)
26.86 s
[genvalidity-sydtest] equivalentWhenFirstSucceedsOnGen (src/Test/Syd/Validity/Functions/Equivalence.hs:100)
26.86 s
[genvalidity-sydtest] equivalentWhenFirstSucceeds (src/Test/Syd/Validity/Functions/Equivalence.hs:119)
26.86 s
[genvalidity-sydtest] equivalentWhenFirstSucceedsOnArbitrary (src/Test/Syd/Validity/Functions/Equivalence.hs:111)
26.86 s
[genvalidity-sydtest] equivalentWhenFirstSucceedsOnGens2 (src/Test/Syd/Validity/Functions/Equivalence.hs:129)
26.86 s
[genvalidity-sydtest] equivalentWhenFirstSucceeds2 (src/Test/Syd/Validity/Functions/Equivalence.hs:162)
26.86 s
[genvalidity-sydtest] equivalentWhenFirstSucceedsOnArbitrary2 (src/Test/Syd/Validity/Functions/Equivalence.hs:147)
26.86 s
[genvalidity-sydtest] equivalentWhenSecondSucceedsOnGen (src/Test/Syd/Validity/Functions/Equivalence.hs:172)
26.86 s
[genvalidity-sydtest] equivalentWhenSecondSucceeds (src/Test/Syd/Validity/Functions/Equivalence.hs:191)
26.86 s
[genvalidity-sydtest] equivalentWhenSecondSucceedsOnArbitrary (src/Test/Syd/Validity/Functions/Equivalence.hs:183)
26.86 s
[genvalidity-sydtest] equivalentWhenSecondSucceedsOnGens2 (src/Test/Syd/Validity/Functions/Equivalence.hs:201)
26.86 s
[genvalidity-sydtest] equivalentWhenSecondSucceeds2 (src/Test/Syd/Validity/Functions/Equivalence.hs:234)
26.86 s
[genvalidity-sydtest] equivalentWhenSecondSucceedsOnArbitrary2 (src/Test/Syd/Validity/Functions/Equivalence.hs:219)
26.86 s
[genvalidity-sydtest] equivalentWhenSucceedOnGen (src/Test/Syd/Validity/Functions/Equivalence.hs:244)
26.86 s
[genvalidity-sydtest] equivalentWhenSucceed (src/Test/Syd/Validity/Functions/Equivalence.hs:258)
26.86 s
[genvalidity-sydtest] equivalentWhenSucceedOnArbitrary (src/Test/Syd/Validity/Functions/Equivalence.hs:266)
26.86 s
[genvalidity-sydtest] equivalentWhenSucceedOnGens2 (src/Test/Syd/Validity/Functions/Equivalence.hs:276)
26.86 s
[genvalidity-sydtest] equivalentWhenSucceed2 (src/Test/Syd/Validity/Functions/Equivalence.hs:312)
26.86 s
[genvalidity-sydtest] equivalentWhenSucceedOnArbitrary2 (src/Test/Syd/Validity/Functions/Equivalence.hs:297)
26.86 s
[genvalidity-sydtest] equivalentOnGens3 (src/Test/Syd/Validity/Functions/Equivalence.hs:322)
26.86 s
[genvalidity-sydtest] equivalent3 (src/Test/Syd/Validity/Functions/Equivalence.hs:338)
26.86 s
[genvalidity-sydtest] equivalentOnArbitrary3 (src/Test/Syd/Validity/Functions/Equivalence.hs:353)
26.86 s
[genvalidity-sydtest] 38% ( 7 / 18) in 'Test.Syd.Validity.Functions.CanFail'
26.86 s
[genvalidity-sydtest] Missing documentation for:
26.86 s
[genvalidity-sydtest] Module header
26.86 s
[genvalidity-sydtest] succeedsOnGens2 (src/Test/Syd/Validity/Functions/CanFail.hs:77)
26.86 s
[genvalidity-sydtest] succeeds2 (src/Test/Syd/Validity/Functions/CanFail.hs:84)
26.86 s
[genvalidity-sydtest] succeedsOnArbitrary2 (src/Test/Syd/Validity/Functions/CanFail.hs:90)
26.87 s
[genvalidity-sydtest] failsOnGens2 (src/Test/Syd/Validity/Functions/CanFail.hs:100)
26.87 s
[genvalidity-sydtest] validIfSucceedsOnGens2 (src/Test/Syd/Validity/Functions/CanFail.hs:109)
26.87 s
[genvalidity-sydtest] validIfSucceeds2 (src/Test/Syd/Validity/Functions/CanFail.hs:119)
26.87 s
[genvalidity-sydtest] validIfSucceedsOnArbitrary2 (src/Test/Syd/Validity/Functions/CanFail.hs:125)
26.87 s
[genvalidity-sydtest] validIfSucceedsOnGens3 (src/Test/Syd/Validity/Functions/CanFail.hs:133)
26.87 s
[genvalidity-sydtest] validIfSucceeds3 (src/Test/Syd/Validity/Functions/CanFail.hs:152)
26.87 s
[genvalidity-sydtest] validIfSucceedsOnArbitrary3 (src/Test/Syd/Validity/Functions/CanFail.hs:158)
26.87 s
[genvalidity-sydtest] 100% ( 6 / 6) in 'Test.Syd.Validity.Functions'
26.87 s
[genvalidity-sydtest] 54% ( 80 /146) in 'Test.Syd.Validity.Property'
26.87 s
[genvalidity-sydtest] Missing documentation for:
26.87 s
[genvalidity-sydtest] Module header
26.87 s
[genvalidity-sydtest] forAllValid (src/Test/Syd/Validity/Property/Utils.hs:15)
26.87 s
[genvalidity-sydtest] producesValidsOnGens2 (src/Test/Syd/Validity/Functions/Validity.hs:51)
26.87 s
[genvalidity-sydtest] producesValid2 (src/Test/Syd/Validity/Functions/Validity.hs:58)
26.87 s
[genvalidity-sydtest] producesValidsOnArbitrary2 (src/Test/Syd/Validity/Functions/Validity.hs:64)
26.87 s
[genvalidity-sydtest] producesValidsOnGens3 (src/Test/Syd/Validity/Functions/Validity.hs:72)
26.87 s
[genvalidity-sydtest] producesValid3 (src/Test/Syd/Validity/Functions/Validity.hs:87)
26.87 s
[genvalidity-sydtest] producesValidsOnArbitrary3 (src/Test/Syd/Validity/Functions/Validity.hs:101)
26.87 s
[genvalidity-sydtest] succeedsOnGens2 (src/Test/Syd/Validity/Functions/CanFail.hs:77)
26.87 s
[genvalidity-sydtest] succeeds2 (src/Test/Syd/Validity/Functions/CanFail.hs:84)
26.87 s
[genvalidity-sydtest] succeedsOnArbitrary2 (src/Test/Syd/Validity/Functions/CanFail.hs:90)
26.87 s
[genvalidity-sydtest] failsOnGens2 (src/Test/Syd/Validity/Functions/CanFail.hs:100)
26.87 s
[genvalidity-sydtest] validIfSucceedsOnGens2 (src/Test/Syd/Validity/Functions/CanFail.hs:109)
26.87 s
[genvalidity-sydtest] validIfSucceeds2 (src/Test/Syd/Validity/Functions/CanFail.hs:119)
26.87 s
[genvalidity-sydtest] validIfSucceedsOnArbitrary2 (src/Test/Syd/Validity/Functions/CanFail.hs:125)
26.87 s
[genvalidity-sydtest] validIfSucceedsOnGens3 (src/Test/Syd/Validity/Functions/CanFail.hs:133)
26.87 s
[genvalidity-sydtest] validIfSucceeds3 (src/Test/Syd/Validity/Functions/CanFail.hs:152)
26.87 s
[genvalidity-sydtest] validIfSucceedsOnArbitrary3 (src/Test/Syd/Validity/Functions/CanFail.hs:158)
26.87 s
[genvalidity-sydtest] equivalentOnGen (src/Test/Syd/Validity/Functions/Equivalence.hs:47)
26.87 s
[genvalidity-sydtest] equivalent (src/Test/Syd/Validity/Functions/Equivalence.hs:54)
26.87 s
[genvalidity-sydtest] equivalentOnGens2 (src/Test/Syd/Validity/Functions/Equivalence.hs:73)
26.87 s
[genvalidity-sydtest] equivalent2 (src/Test/Syd/Validity/Functions/Equivalence.hs:81)
26.87 s
[genvalidity-sydtest] equivalentOnGens3 (src/Test/Syd/Validity/Functions/Equivalence.hs:322)
26.87 s
[genvalidity-sydtest] equivalent3 (src/Test/Syd/Validity/Functions/Equivalence.hs:338)
26.87 s
[genvalidity-sydtest] equivalentOnArbitrary3 (src/Test/Syd/Validity/Functions/Equivalence.hs:353)
26.87 s
[genvalidity-sydtest] equivalentWhenFirstSucceedsOnGen (src/Test/Syd/Validity/Functions/Equivalence.hs:100)
26.87 s
[genvalidity-sydtest] equivalentWhenFirstSucceeds (src/Test/Syd/Validity/Functions/Equivalence.hs:119)
26.87 s
[genvalidity-sydtest] equivalentWhenFirstSucceedsOnArbitrary (src/Test/Syd/Validity/Functions/Equivalence.hs:111)
26.87 s
[genvalidity-sydtest] equivalentWhenFirstSucceedsOnGens2 (src/Test/Syd/Validity/Functions/Equivalence.hs:129)
26.87 s
[genvalidity-sydtest] equivalentWhenFirstSucceeds2 (src/Test/Syd/Validity/Functions/Equivalence.hs:162)
26.87 s
[genvalidity-sydtest] equivalentWhenFirstSucceedsOnArbitrary2 (src/Test/Syd/Validity/Functions/Equivalence.hs:147)
26.87 s
[genvalidity-sydtest] equivalentWhenSecondSucceedsOnGen (src/Test/Syd/Validity/Functions/Equivalence.hs:172)
26.87 s
[genvalidity-sydtest] equivalentWhenSecondSucceeds (src/Test/Syd/Validity/Functions/Equivalence.hs:191)
26.87 s
[genvalidity-sydtest] equivalentWhenSecondSucceedsOnArbitrary (src/Test/Syd/Validity/Functions/Equivalence.hs:183)
26.87 s
[genvalidity-sydtest] equivalentWhenSecondSucceedsOnGens2 (src/Test/Syd/Validity/Functions/Equivalence.hs:201)
26.87 s
[genvalidity-sydtest] equivalentWhenSecondSucceeds2 (src/Test/Syd/Validity/Functions/Equivalence.hs:234)
26.87 s
[genvalidity-sydtest] equivalentWhenSecondSucceedsOnArbitrary2 (src/Test/Syd/Validity/Functions/Equivalence.hs:219)
26.87 s
[genvalidity-sydtest] equivalentWhenSucceedOnGen (src/Test/Syd/Validity/Functions/Equivalence.hs:244)
26.87 s
[genvalidity-sydtest] equivalentWhenSucceed (src/Test/Syd/Validity/Functions/Equivalence.hs:258)
26.87 s
[genvalidity-sydtest] equivalentWhenSucceedOnArbitrary (src/Test/Syd/Validity/Functions/Equivalence.hs:266)
26.87 s
[genvalidity-sydtest] equivalentWhenSucceedOnGens2 (src/Test/Syd/Validity/Functions/Equivalence.hs:276)
26.87 s
[genvalidity-sydtest] equivalentWhenSucceed2 (src/Test/Syd/Validity/Functions/Equivalence.hs:312)
26.87 s
[genvalidity-sydtest] equivalentWhenSucceedOnArbitrary2 (src/Test/Syd/Validity/Functions/Equivalence.hs:297)
26.87 s
[genvalidity-sydtest] inverseFunctionsOnGen (src/Test/Syd/Validity/Functions/Inverse.hs:28)
26.87 s
[genvalidity-sydtest] inverseFunctions (src/Test/Syd/Validity/Functions/Inverse.hs:33)
26.87 s
[genvalidity-sydtest] inverseFunctionsIfFirstSucceedsOnGen (src/Test/Syd/Validity/Functions/Inverse.hs:49)
26.87 s
[genvalidity-sydtest] inverseFunctionsIfFirstSucceeds (src/Test/Syd/Validity/Functions/Inverse.hs:60)
26.87 s
[genvalidity-sydtest] inverseFunctionsIfFirstSucceedsOnArbitrary (src/Test/Syd/Validity/Functions/Inverse.hs:68)
26.87 s
[genvalidity-sydtest] inverseFunctionsIfSecondSucceedsOnGen (src/Test/Syd/Validity/Functions/Inverse.hs:78)
26.87 s
[genvalidity-sydtest] inverseFunctionsIfSecondSucceeds (src/Test/Syd/Validity/Functions/Inverse.hs:89)
26.87 s
[genvalidity-sydtest] inverseFunctionsIfSecondSucceedsOnArbitrary (src/Test/Syd/Validity/Functions/Inverse.hs:97)
26.87 s
[genvalidity-sydtest] inverseFunctionsIfSucceedOnGen (src/Test/Syd/Validity/Functions/Inverse.hs:107)
26.87 s
[genvalidity-sydtest] inverseFunctionsIfSucceed (src/Test/Syd/Validity/Functions/Inverse.hs:120)
26.87 s
[genvalidity-sydtest] inverseFunctionsIfSucceedOnArbitrary (src/Test/Syd/Validity/Functions/Inverse.hs:128)
26.87 s
[genvalidity-sydtest] idempotentOnGen (src/Test/Syd/Validity/Functions/Idempotence.hs:17)
26.87 s
[genvalidity-sydtest] idempotent (src/Test/Syd/Validity/Functions/Idempotence.hs:20)
26.87 s
[genvalidity-sydtest] reflexivityOnGen (src/Test/Syd/Validity/Relations/Reflexivity.hs:32)
26.87 s
[genvalidity-sydtest] transitivityOnGens (src/Test/Syd/Validity/Relations/Transitivity.hs:35)
26.87 s
[genvalidity-sydtest] antisymmetryOnGensWithEquality (src/Test/Syd/Validity/Relations/Antisymmetry.hs:43)
26.87 s
[genvalidity-sydtest] antisymmetryOnGens (src/Test/Syd/Validity/Relations/Antisymmetry.hs:54)
26.87 s
[genvalidity-sydtest] antireflexivityOnGen (src/Test/Syd/Validity/Relations/Antireflexivity.hs:32)
26.87 s
[genvalidity-sydtest] symmetryOnGens (src/Test/Syd/Validity/Relations/Symmetry.hs:34)
26.87 s
[genvalidity-sydtest] leftIdentityOnGenWithEquality (src/Test/Syd/Validity/Operations/Identity.hs:54)
26.87 s
[genvalidity-sydtest] leftIdentityOnGen (src/Test/Syd/Validity/Operations/Identity.hs:66)
26.87 s
[genvalidity-sydtest] rightIdentityOnGenWithEquality (src/Test/Syd/Validity/Operations/Identity.hs:111)
26.87 s
[genvalidity-sydtest] rightIdentityOnGen (src/Test/Syd/Validity/Operations/Identity.hs:123)
26.87 s
[genvalidity-sydtest] Warning: 'Spec' is out of scope.
26.87 s
[genvalidity-sydtest] If you qualify the identifier, haddock can try to link it anyway.
26.87 s
[genvalidity-sydtest] 14% ( 1 / 7) in 'Test.Syd.Validity.Utils'
26.87 s
[genvalidity-sydtest] Missing documentation for:
26.87 s
[genvalidity-sydtest] nameOf (src/Test/Syd/Validity/Utils.hs:27)
26.87 s
[genvalidity-sydtest] genDescr (src/Test/Syd/Validity/Utils.hs:38)
26.87 s
[genvalidity-sydtest] binRelStr (src/Test/Syd/Validity/Utils.hs:45)
26.87 s
[genvalidity-sydtest] shouldBeValid (src/Test/Syd/Validity/Property/Utils.hs:24)
26.87 s
[genvalidity-sydtest] shouldBeInvalid (src/Test/Syd/Validity/Property/Utils.hs:40)
26.87 s
[genvalidity-sydtest] Anon (src/Test/Syd/Validity/Utils.hs:49)
26.87 s
[genvalidity-sydtest] 45% ( 5 / 11) in 'Test.Syd.Validity.Shrinking'
26.87 s
[genvalidity-sydtest] Missing documentation for:
26.87 s
[genvalidity-sydtest] shrinkValidSpec (src/Test/Syd/Validity/Shrinking.hs:35)
26.87 s
[genvalidity-sydtest] shrinkValidSpecWithLimit (src/Test/Syd/Validity/Shrinking.hs:48)
26.87 s
[genvalidity-sydtest] shrinkValidPreservesValidOnGenValid (src/Test/Syd/Validity/Shrinking.hs:66)
26.87 s
[genvalidity-sydtest] shrinkValidPreservesValidOnGenValidWithLimit (src/Test/Syd/Validity/Shrinking.hs:74)
26.87 s
[genvalidity-sydtest] shrinkValidDoesNotShrinkToItself (src/Test/Syd/Validity/Shrinking.hs:81)
26.87 s
[genvalidity-sydtest] shrinkValidDoesNotShrinkToItselfWithLimit (src/Test/Syd/Validity/Shrinking.hs:89)
26.87 s
[genvalidity-sydtest] 100% ( 7 / 7) in 'Test.Syd.Validity.Show'
26.87 s
[genvalidity-sydtest] 100% ( 4 / 4) in 'Test.Syd.Validity.Ord'
26.87 s
[genvalidity-sydtest] 100% ( 4 / 4) in 'Test.Syd.Validity.Monoid'
26.87 s
[genvalidity-sydtest] 100% ( 4 / 4) in 'Test.Syd.Validity.Monad'
26.87 s
[genvalidity-sydtest] 100% ( 5 / 5) in 'Test.Syd.Validity.GenValidity'
26.87 s
[genvalidity-sydtest] 100% ( 4 / 4) in 'Test.Syd.Validity.Functor'
26.87 s
[genvalidity-sydtest] 100% ( 4 / 4) in 'Test.Syd.Validity.Eq'
26.87 s
[genvalidity-sydtest] 100% ( 3 / 3) in 'Test.Syd.Validity.Arbitrary'
26.87 s
[genvalidity-sydtest] 100% ( 4 / 4) in 'Test.Syd.Validity.Applicative'
26.87 s
[genvalidity-sydtest] Warning: 'Spec' is out of scope.
26.87 s
[genvalidity-sydtest] If you qualify the identifier, haddock can try to link it anyway.
26.87 s
[genvalidity-sydtest] 63% (122 /192) in 'Test.Syd.Validity'
26.87 s
[genvalidity-sydtest] Missing documentation for:
26.87 s
[genvalidity-sydtest] forAllValid (src/Test/Syd/Validity/Property/Utils.hs:15)
26.87 s
[genvalidity-sydtest] shouldBeValid (src/Test/Syd/Validity/Property/Utils.hs:24)
26.87 s
[genvalidity-sydtest] shouldBeInvalid (src/Test/Syd/Validity/Property/Utils.hs:40)
26.87 s
[genvalidity-sydtest] shrinkValidSpec (src/Test/Syd/Validity/Shrinking.hs:35)
26.87 s
[genvalidity-sydtest] shrinkValidSpecWithLimit (src/Test/Syd/Validity/Shrinking.hs:48)
26.87 s
[genvalidity-sydtest] shrinkValidPreservesValidOnGenValid (src/Test/Syd/Validity/Shrinking.hs:66)
26.87 s
[genvalidity-sydtest] producesValidsOnGens2 (src/Test/Syd/Validity/Functions/Validity.hs:51)
26.87 s
[genvalidity-sydtest] producesValid2 (src/Test/Syd/Validity/Functions/Validity.hs:58)
26.87 s
[genvalidity-sydtest] producesValidsOnArbitrary2 (src/Test/Syd/Validity/Functions/Validity.hs:64)
26.87 s
[genvalidity-sydtest] producesValidsOnGens3 (src/Test/Syd/Validity/Functions/Validity.hs:72)
26.88 s
[genvalidity-sydtest] producesValid3 (src/Test/Syd/Validity/Functions/Validity.hs:87)
26.88 s
[genvalidity-sydtest] producesValidsOnArbitrary3 (src/Test/Syd/Validity/Functions/Validity.hs:101)
26.88 s
[genvalidity-sydtest] succeedsOnGens2 (src/Test/Syd/Validity/Functions/CanFail.hs:77)
26.88 s
[genvalidity-sydtest] succeeds2 (src/Test/Syd/Validity/Functions/CanFail.hs:84)
26.88 s
[genvalidity-sydtest] succeedsOnArbitrary2 (src/Test/Syd/Validity/Functions/CanFail.hs:90)
26.88 s
[genvalidity-sydtest] failsOnGens2 (src/Test/Syd/Validity/Functions/CanFail.hs:100)
26.88 s
[genvalidity-sydtest] validIfSucceedsOnGens2 (src/Test/Syd/Validity/Functions/CanFail.hs:109)
26.88 s
[genvalidity-sydtest] validIfSucceeds2 (src/Test/Syd/Validity/Functions/CanFail.hs:119)
26.88 s
[genvalidity-sydtest] validIfSucceedsOnArbitrary2 (src/Test/Syd/Validity/Functions/CanFail.hs:125)
26.88 s
[genvalidity-sydtest] validIfSucceedsOnGens3 (src/Test/Syd/Validity/Functions/CanFail.hs:133)
26.88 s
[genvalidity-sydtest] validIfSucceeds3 (src/Test/Syd/Validity/Functions/CanFail.hs:152)
26.88 s
[genvalidity-sydtest] validIfSucceedsOnArbitrary3 (src/Test/Syd/Validity/Functions/CanFail.hs:158)
26.88 s
[genvalidity-sydtest] equivalentOnGen (src/Test/Syd/Validity/Functions/Equivalence.hs:47)
26.88 s
[genvalidity-sydtest] equivalent (src/Test/Syd/Validity/Functions/Equivalence.hs:54)
26.88 s
[genvalidity-sydtest] equivalentOnGens2 (src/Test/Syd/Validity/Functions/Equivalence.hs:73)
26.88 s
[genvalidity-sydtest] equivalent2 (src/Test/Syd/Validity/Functions/Equivalence.hs:81)
26.88 s
[genvalidity-sydtest] equivalentOnGens3 (src/Test/Syd/Validity/Functions/Equivalence.hs:322)
26.88 s
[genvalidity-sydtest] equivalent3 (src/Test/Syd/Validity/Functions/Equivalence.hs:338)
26.88 s
[genvalidity-sydtest] equivalentOnArbitrary3 (src/Test/Syd/Validity/Functions/Equivalence.hs:353)
26.88 s
[genvalidity-sydtest] equivalentWhenFirstSucceedsOnGen (src/Test/Syd/Validity/Functions/Equivalence.hs:100)
26.88 s
[genvalidity-sydtest] equivalentWhenFirstSucceeds (src/Test/Syd/Validity/Functions/Equivalence.hs:119)
26.88 s
[genvalidity-sydtest] equivalentWhenFirstSucceedsOnArbitrary (src/Test/Syd/Validity/Functions/Equivalence.hs:111)
26.88 s
[genvalidity-sydtest] equivalentWhenFirstSucceedsOnGens2 (src/Test/Syd/Validity/Functions/Equivalence.hs:129)
26.88 s
[genvalidity-sydtest] equivalentWhenFirstSucceeds2 (src/Test/Syd/Validity/Functions/Equivalence.hs:162)
26.88 s
[genvalidity-sydtest] equivalentWhenFirstSucceedsOnArbitrary2 (src/Test/Syd/Validity/Functions/Equivalence.hs:147)
26.88 s
[genvalidity-sydtest] equivalentWhenSecondSucceedsOnGen (src/Test/Syd/Validity/Functions/Equivalence.hs:172)
26.88 s
[genvalidity-sydtest] equivalentWhenSecondSucceeds (src/Test/Syd/Validity/Functions/Equivalence.hs:191)
26.88 s
[genvalidity-sydtest] equivalentWhenSecondSucceedsOnArbitrary (src/Test/Syd/Validity/Functions/Equivalence.hs:183)
26.88 s
[genvalidity-sydtest] equivalentWhenSecondSucceedsOnGens2 (src/Test/Syd/Validity/Functions/Equivalence.hs:201)
26.88 s
[genvalidity-sydtest] equivalentWhenSecondSucceeds2 (src/Test/Syd/Validity/Functions/Equivalence.hs:234)
26.88 s
[genvalidity-sydtest] equivalentWhenSecondSucceedsOnArbitrary2 (src/Test/Syd/Validity/Functions/Equivalence.hs:219)
26.88 s
[genvalidity-sydtest] equivalentWhenSucceedOnGen (src/Test/Syd/Validity/Functions/Equivalence.hs:244)
26.88 s
[genvalidity-sydtest] equivalentWhenSucceed (src/Test/Syd/Validity/Functions/Equivalence.hs:258)
26.88 s
[genvalidity-sydtest] equivalentWhenSucceedOnArbitrary (src/Test/Syd/Validity/Functions/Equivalence.hs:266)
26.88 s
[genvalidity-sydtest] equivalentWhenSucceedOnGens2 (src/Test/Syd/Validity/Functions/Equivalence.hs:276)
26.88 s
[genvalidity-sydtest] equivalentWhenSucceed2 (src/Test/Syd/Validity/Functions/Equivalence.hs:312)
26.88 s
[genvalidity-sydtest] equivalentWhenSucceedOnArbitrary2 (src/Test/Syd/Validity/Functions/Equivalence.hs:297)
26.88 s
[genvalidity-sydtest] inverseFunctionsOnGen (src/Test/Syd/Validity/Functions/Inverse.hs:28)
26.88 s
[genvalidity-sydtest] inverseFunctions (src/Test/Syd/Validity/Functions/Inverse.hs:33)
26.88 s
[genvalidity-sydtest] inverseFunctionsIfFirstSucceedsOnGen (src/Test/Syd/Validity/Functions/Inverse.hs:49)
26.88 s
[genvalidity-sydtest] inverseFunctionsIfFirstSucceeds (src/Test/Syd/Validity/Functions/Inverse.hs:60)
26.88 s
[genvalidity-sydtest] inverseFunctionsIfFirstSucceedsOnArbitrary (src/Test/Syd/Validity/Functions/Inverse.hs:68)
26.88 s
[genvalidity-sydtest] inverseFunctionsIfSecondSucceedsOnGen (src/Test/Syd/Validity/Functions/Inverse.hs:78)
26.88 s
[genvalidity-sydtest] inverseFunctionsIfSecondSucceeds (src/Test/Syd/Validity/Functions/Inverse.hs:89)
26.88 s
[genvalidity-sydtest] inverseFunctionsIfSecondSucceedsOnArbitrary (src/Test/Syd/Validity/Functions/Inverse.hs:97)
26.88 s
[genvalidity-sydtest] inverseFunctionsIfSucceedOnGen (src/Test/Syd/Validity/Functions/Inverse.hs:107)
26.88 s
[genvalidity-sydtest] inverseFunctionsIfSucceed (src/Test/Syd/Validity/Functions/Inverse.hs:120)
26.88 s
[genvalidity-sydtest] inverseFunctionsIfSucceedOnArbitrary (src/Test/Syd/Validity/Functions/Inverse.hs:128)
26.88 s
[genvalidity-sydtest] idempotentOnGen (src/Test/Syd/Validity/Functions/Idempotence.hs:17)
26.88 s
[genvalidity-sydtest] idempotent (src/Test/Syd/Validity/Functions/Idempotence.hs:20)
26.88 s
[genvalidity-sydtest] reflexivityOnGen (src/Test/Syd/Validity/Relations/Reflexivity.hs:32)
26.88 s
[genvalidity-sydtest] transitivityOnGens (src/Test/Syd/Validity/Relations/Transitivity.hs:35)
26.88 s
[genvalidity-sydtest] antisymmetryOnGensWithEquality (src/Test/Syd/Validity/Relations/Antisymmetry.hs:43)
26.88 s
[genvalidity-sydtest] antisymmetryOnGens (src/Test/Syd/Validity/Relations/Antisymmetry.hs:54)
26.88 s
[genvalidity-sydtest] antireflexivityOnGen (src/Test/Syd/Validity/Relations/Antireflexivity.hs:32)
26.88 s
[genvalidity-sydtest] symmetryOnGens (src/Test/Syd/Validity/Relations/Symmetry.hs:34)
26.88 s
[genvalidity-sydtest] leftIdentityOnGenWithEquality (src/Test/Syd/Validity/Operations/Identity.hs:54)
26.88 s
[genvalidity-sydtest] leftIdentityOnGen (src/Test/Syd/Validity/Operations/Identity.hs:66)
26.88 s
[genvalidity-sydtest] rightIdentityOnGenWithEquality (src/Test/Syd/Validity/Operations/Identity.hs:111)
26.88 s
[genvalidity-sydtest] rightIdentityOnGen (src/Test/Syd/Validity/Operations/Identity.hs:123)
28.26 s
[really-safe-money] [ 7 of 12] Compiling Money.MultiAmount ( src/Money/MultiAmount.hs, dist/build/Money/MultiAmount.p_o )
28.31 s
[really-safe-money] mutation: instrumenting Money.MultiAmount
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 168:20-45
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 168:20-45
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/Negate at 168:20-45
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/CondFlip at 168:17-57
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 119:12-28
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 119:12-28
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/Negate at 119:12-28
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/CondFlip at 119:9-37
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 106:12-28
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 106:12-28
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/Negate at 106:12-28
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/CondFlip at 106:9-37
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 73:6-27
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 73:6-27
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/Negate at 73:6-27
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/CondFlip at 73:3-51
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 66:13-29
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/ConstBool at 66:13-29
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/Negate at 66:13-29
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/ListLit at 63:7-8
28.32 s
[really-safe-money] mutation: recording Money.MultiAmount/ListLit at 63:7-8
29.19 s
[really-safe-money] [ 8 of 12] Compiling Money.AmountOf ( src/Money/AmountOf.hs, dist/build/Money/AmountOf.p_o )
29.22 s
[really-safe-money] mutation: instrumenting Money.AmountOf
29.81 s
[really-safe-money] [ 9 of 12] Compiling Money.Account ( src/Money/Account.hs, dist/build/Money/Account.p_o )
29.84 s
[really-safe-money] mutation: instrumenting Money.Account
29.85 s
[really-safe-money] mutation: recording Money.Account/IntLit at 421:32-33
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 451:14-23
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 451:14-23
29.85 s
[really-safe-money] mutation: recording Money.Account/Negate at 451:14-23
29.85 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 451:11-76
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 455:14-23
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 455:14-23
29.85 s
[really-safe-money] mutation: recording Money.Account/Negate at 455:14-23
29.85 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 455:11-136
29.85 s
[really-safe-money] mutation: recording Money.Account/IntLit at 495:17-18
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 495:12-18
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 495:12-18
29.85 s
[really-safe-money] mutation: recording Money.Account/Negate at 495:12-18
29.85 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 495:9-41
29.85 s
[really-safe-money] mutation: recording Money.Account/IntLit at 503:15-16
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 503:10-16
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 503:10-16
29.85 s
[really-safe-money] mutation: recording Money.Account/Negate at 503:10-16
29.85 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 503:7-33
29.85 s
[really-safe-money] mutation: recording Money.Account/IntLit at 233:19-20
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 233:14-20
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 233:14-20
29.85 s
[really-safe-money] mutation: recording Money.Account/Negate at 233:14-20
29.85 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 233:11-48
29.85 s
[really-safe-money] mutation: recording Money.Account/IntLit at 197:19-20
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 197:14-20
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 197:14-20
29.85 s
[really-safe-money] mutation: recording Money.Account/Negate at 197:14-20
29.85 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 197:11-48
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 123:10-23
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 123:10-23
29.85 s
[really-safe-money] mutation: recording Money.Account/Negate at 123:10-23
29.85 s
[really-safe-money] mutation: recording Money.Account/IntLit at 131:25-26
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 131:20-26
29.85 s
[really-safe-money] mutation: recording Money.Account/ConstBool at 131:20-26
29.85 s
[really-safe-money] mutation: recording Money.Account/Negate at 131:20-26
29.85 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 131:17-39
29.85 s
[really-safe-money] mutation: recording Money.Account/CondFlip at 123:7-39
30.99 s
[really-safe-money] [10 of 12] Compiling Money.MultiAccount ( src/Money/MultiAccount.hs, dist/build/Money/MultiAccount.p_o )
31.02 s
[really-safe-money] mutation: instrumenting Money.MultiAccount
31.09 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 134:12-29
31.09 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 134:12-29
31.09 s
[really-safe-money] mutation: recording Money.MultiAccount/Negate at 134:12-29
31.09 s
[really-safe-money] mutation: recording Money.MultiAccount/CondFlip at 134:9-37
31.10 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 120:12-29
31.10 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 120:12-29
31.10 s
[really-safe-money] mutation: recording Money.MultiAccount/Negate at 120:12-29
31.10 s
[really-safe-money] mutation: recording Money.MultiAccount/CondFlip at 120:9-37
31.10 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 78:6-28
31.10 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 78:6-28
31.10 s
[really-safe-money] mutation: recording Money.MultiAccount/Negate at 78:6-28
31.10 s
[really-safe-money] mutation: recording Money.MultiAccount/CondFlip at 78:3-52
31.10 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 69:13-30
31.10 s
[really-safe-money] mutation: recording Money.MultiAccount/ConstBool at 69:13-30
31.10 s
[really-safe-money] mutation: recording Money.MultiAccount/Negate at 69:13-30
31.10 s
[really-safe-money] mutation: recording Money.MultiAccount/ListLit at 66:7-8
31.10 s
[really-safe-money] mutation: recording Money.MultiAccount/ListLit at 66:7-8
31.85 s
[really-safe-money] [11 of 12] Compiling Money.AccountOf ( src/Money/AccountOf.hs, dist/build/Money/AccountOf.p_o )
31.87 s
[really-safe-money] mutation: instrumenting Money.AccountOf
32.33 s
[really-safe-money] [12 of 12] Compiling Paths_really_safe_money ( dist/build/autogen/Paths_really_safe_money.hs, dist/build/Paths_really_safe_money.p_o )
33.06 s
[really-safe-money] Warning: ignoring unrecognised input `dist/build/Money/Account.dyn_o'
33.06 s
[really-safe-money] Warning: ignoring unrecognised input `dist/build/Money/AccountOf.dyn_o'
33.06 s
[really-safe-money] Warning: ignoring unrecognised input `dist/build/Money/Amount.dyn_o'
33.06 s
[really-safe-money] Warning: ignoring unrecognised input `dist/build/Money/AmountOf.dyn_o'
33.06 s
[really-safe-money] Warning: ignoring unrecognised input `dist/build/Money/ConversionRate.dyn_o'
33.06 s
[really-safe-money] Warning: ignoring unrecognised input `dist/build/Money/ConversionRateOf.dyn_o'
33.06 s
[really-safe-money] Warning: ignoring unrecognised input `dist/build/Money/Currency.dyn_o'
33.06 s
[really-safe-money] Warning: ignoring unrecognised input `dist/build/Money/MultiAccount.dyn_o'
33.06 s
[really-safe-money] Warning: ignoring unrecognised input `dist/build/Money/MultiAmount.dyn_o'
33.06 s
[really-safe-money] Warning: ignoring unrecognised input `dist/build/Money/QuantisationFactor.dyn_o'
33.06 s
[really-safe-money] Warning: ignoring unrecognised input `dist/build/Numeric/DecimalLiteral.dyn_o'
33.06 s
[really-safe-money] Warning: ignoring unrecognised input `dist/build/Paths_really_safe_money.dyn_o'
34.49 s
[really-safe-money] mutation-nix: manifest output at /nix/store/1kba83gl6vham8yih6z5pc00qv1vlnxd-really-safe-money-0.0.0.0-manifest:
34.49 s
[really-safe-money] total 240
34.49 s
[really-safe-money] drwxr-xr-x 2 nixbld nixbld 4096 May 13 10:00 .
34.49 s
[really-safe-money] drwxrwxr-t 238 nobody nixbld 24576 May 13 09:59 ..
34.49 s
[really-safe-money] -rw-r--r-- 1 nixbld nixbld 23741 May 13 10:00 Money.Account.json
34.49 s
[really-safe-money] -rw-r--r-- 1 nixbld nixbld 2 May 13 10:00 Money.AccountOf.json
34.49 s
[really-safe-money] -rw-r--r-- 1 nixbld nixbld 53003 May 13 10:00 Money.Amount.json
34.49 s
[really-safe-money] -rw-r--r-- 1 nixbld nixbld 2 May 13 10:00 Money.AmountOf.json
34.49 s
[really-safe-money] -rw-r--r-- 1 nixbld nixbld 8362 May 13 10:00 Money.ConversionRate.json
34.49 s
[really-safe-money] -rw-r--r-- 1 nixbld nixbld 2 May 13 10:00 Money.ConversionRateOf.json
34.49 s
[really-safe-money] -rw-r--r-- 1 nixbld nixbld 2 May 13 10:00 Money.Currency.json
34.49 s
[really-safe-money] -rw-r--r-- 1 nixbld nixbld 8910 May 13 10:00 Money.MultiAccount.json
34.49 s
[really-safe-money] -rw-r--r-- 1 nixbld nixbld 11660 May 13 10:00 Money.MultiAmount.json
34.49 s
[really-safe-money] -rw-r--r-- 1 nixbld nixbld 14920 May 13 10:00 Money.QuantisationFactor.json
34.49 s
[really-safe-money] -rw-r--r-- 1 nixbld nixbld 62137 May 13 10:00 Numeric.DecimalLiteral.json
34.49 s
[really-safe-money] Phase: haddockPhase
34.50 s
[really-safe-money] Phase: installPhase
34.61 s
[really-safe-money] Installing library in /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6/really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9
35.27 s
[really-safe-money] Phase: fixupPhase
35.31 s
[really-safe-money] shrinking RPATHs of ELF executables and libraries in /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0
35.31 s
[really-safe-money] shrinking /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6/libHSreally-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9-ghc9.10.3.so
35.35 s
[really-safe-money] checking for references to /build/ in /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0...
35.38 s
[really-safe-money] patching script interpreter paths in /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0
35.39 s
[really-safe-money] stripping (with command strip and flags -S -p) in /nix/store/1nvhlz5hh76jhpmz3yvbymi38nli9y67-really-safe-money-0.0.0.0/lib
35.56 s
[really-safe-money] shrinking RPATHs of ELF executables and libraries in /nix/store/1kba83gl6vham8yih6z5pc00qv1vlnxd-really-safe-money-0.0.0.0-manifest
35.57 s
[really-safe-money] checking for references to /build/ in /nix/store/1kba83gl6vham8yih6z5pc00qv1vlnxd-really-safe-money-0.0.0.0-manifest...
35.59 s
[really-safe-money] patching script interpreter paths in /nix/store/1kba83gl6vham8yih6z5pc00qv1vlnxd-really-safe-money-0.0.0.0-manifest
35.70 s
[post-build-hook] Uploading to cachix cache "sydtest": /nix/store/1kba83gl6vham8yih6z5pc00qv1vlnxd-really-safe-money-0.0.0.0-manifest
36.25 s
[post-build-hook] Pushing 1 paths (0 are already present) using zstd to cache sydtest ⏳
36.25 s
[post-build-hook]
36.66 s
[post-build-hook] Pushing /nix/store/1kba83gl6vham8yih6z5pc00qv1vlnxd-really-safe-money-0.0.0.0-manifest (180.78 KiB)
37.87 s
[post-build-hook]
37.87 s
[post-build-hook] All done.
37.89 s
[post-build-hook] Uploading to the NixCI staging cache: /nix/store/1kba83gl6vham8yih6z5pc00qv1vlnxd-really-safe-money-0.0.0.0-manifest
37.95 s
[post-build-hook] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
37.96 s
[post-build-hook] copying 1 paths...
37.96 s
[post-build-hook] copying path '/nix/store/1kba83gl6vham8yih6z5pc00qv1vlnxd-really-safe-money-0.0.0.0-manifest' to 'https://cache.staging.nix-ci.com'...
38.23 s
[post-build-hook] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
38.37 s
[post-build-hook] copying 0 paths...
38.41 s
Progress: 3 of 6 built (1 building), 8 of 8 downloaded from cache
38.52 s
[genvalidity-sydtest] Documentation created: dist/doc/html/genvalidity-sydtest/,
38.52 s
[genvalidity-sydtest] dist/doc/html/genvalidity-sydtest/genvalidity-sydtest.txt
38.60 s
[genvalidity-sydtest] Preprocessing test suite 'genvalidity-sydtest-test' for genvalidity-sydtest-1.0.1.0...
38.61 s
[genvalidity-sydtest] Phase: installPhase
38.84 s
[genvalidity-sydtest] Installing library in /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6/genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
39.69 s
[genvalidity-sydtest] Phase: fixupPhase
39.72 s
[genvalidity-sydtest] shrinking RPATHs of ELF executables and libraries in /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0
39.76 s
[genvalidity-sydtest] shrinking /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6/libHSgenvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1-ghc9.10.3.so
39.79 s
[genvalidity-sydtest] checking for references to /build/ in /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0...
39.85 s
[genvalidity-sydtest] patching script interpreter paths in /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0
39.86 s
[genvalidity-sydtest] stripping (with command strip and flags -S -p) in /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0/lib
40.05 s
[genvalidity-sydtest] shrinking RPATHs of ELF executables and libraries in /nix/store/md56vgr9pbgrhvl49wyc0kfh1cqd0rxd-genvalidity-sydtest-1.0.1.0-doc
40.08 s
[genvalidity-sydtest] checking for references to /build/ in /nix/store/md56vgr9pbgrhvl49wyc0kfh1cqd0rxd-genvalidity-sydtest-1.0.1.0-doc...
40.14 s
[genvalidity-sydtest] patching script interpreter paths in /nix/store/md56vgr9pbgrhvl49wyc0kfh1cqd0rxd-genvalidity-sydtest-1.0.1.0-doc
40.36 s
[post-build-hook] Uploading to cachix cache "sydtest": /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0 /nix/store/md56vgr9pbgrhvl49wyc0kfh1cqd0rxd-genvalidity-sydtest-1.0.1.0-doc
40.88 s
[post-build-hook] Pushing 2 paths (267 are already present) using zstd to cache sydtest ⏳
40.88 s
[post-build-hook]
41.23 s
[post-build-hook] Pushing /nix/store/md56vgr9pbgrhvl49wyc0kfh1cqd0rxd-genvalidity-sydtest-1.0.1.0-doc (3.78 MiB)
41.28 s
[post-build-hook] Pushing /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0 (6.61 MiB)
43.04 s
[post-build-hook]
43.07 s
[post-build-hook] All done.
43.07 s
[post-build-hook] Uploading to the NixCI staging cache: /nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0 /nix/store/md56vgr9pbgrhvl49wyc0kfh1cqd0rxd-genvalidity-sydtest-1.0.1.0-doc
43.14 s
[post-build-hook] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
43.37 s
[post-build-hook] copying 2 paths...
43.37 s
[post-build-hook] copying path '/nix/store/md56vgr9pbgrhvl49wyc0kfh1cqd0rxd-genvalidity-sydtest-1.0.1.0-doc' to 'https://cache.staging.nix-ci.com'...
44.31 s
[post-build-hook] copying path '/nix/store/4ih8m7izypq1qdvmams8c7699h44qssc-genvalidity-sydtest-1.0.1.0' to 'https://cache.staging.nix-ci.com'...
46.21 s
[post-build-hook] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
46.50 s
[post-build-hook] copying 1 paths...
46.50 s
[post-build-hook] copying path '/nix/store/0kagzsrbs3habk2kjfai9yf6swyb4paf-genvalidity-sydtest-1.0.1.0.drv' to 'https://cache.staging.nix-ci.com'...
46.69 s
Progress: 4 of 6 built, 8 of 8 downloaded from cache
46.75 s
Building really-safe-money-gen
47.16 s
[really-safe-money-gen] Phase: setupCompilerEnvironmentPhase
47.16 s
[really-safe-money-gen] Build with /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3.
47.72 s
[really-safe-money-gen] Phase: unpackPhase
47.73 s
[really-safe-money-gen] unpacking source archive /nix/store/q8dnmasbcyjvbsw29vapbnpq21lcqqfi-really-safe-money-gen-source-0.0.0.0/really-safe-money-gen-0.0.0.0.tar.gz
47.74 s
[really-safe-money-gen] source root is really-safe-money-gen-0.0.0.0
47.75 s
[really-safe-money-gen] setting SOURCE_DATE_EPOCH to timestamp 1778620619 of file "really-safe-money-gen-0.0.0.0/test/Spec.hs"
47.75 s
[really-safe-money-gen] Phase: patchPhase
47.77 s
[really-safe-money-gen] Phase: compileBuildDriverPhase
47.77 s
[really-safe-money-gen] setupCompileFlags: -package-db=/build/tmp.loPkKYVF40/setup-package.conf.d -threaded
47.86 s
[really-safe-money-gen] [1 of 2] Compiling Main ( Setup.hs, /build/tmp.loPkKYVF40/Main.o )
47.93 s
[really-safe-money-gen] [2 of 2] Linking Setup
49.62 s
[really-safe-money-gen] Phase: updateAutotoolsGnuConfigScriptsPhase
49.64 s
[really-safe-money-gen] Phase: configurePhase
49.66 s
[really-safe-money-gen] configureFlags: --verbose --prefix=/nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0 --libdir=$prefix/lib/$compiler/lib --libsubdir=$abi/$libname --docdir=/nix/store/zq5b9inl970gfygw3m9wswh7z8kiab2i-really-safe-money-gen-0.0.0.0-doc/share/doc/really-safe-money-gen-0.0.0.0 --with-gcc=gcc --package-db=/build/tmp.loPkKYVF40/package.conf.d --ghc-option=-j16 --ghc-option=+RTS --ghc-option=-A64M --ghc-option=-RTS --enable-library-profiling --profiling-detail=exported-functions --disable-profiling --enable-shared --disable-coverage --enable-static --disable-executable-dynamic --enable-tests --disable-benchmarks --enable-library-vanilla --disable-library-for-ghci --enable-split-sections --enable-library-stripping --enable-executable-stripping --ghc-option=-haddock --ghc-options=-O2 --ghc-options=-Wall --ghc-options=-Wincomplete-uni-patterns --ghc-options=-Wincomplete-record-updates --ghc-options=-Wpartial-fields --ghc-options=-Widentities --ghc-options=-Wredundant-constraints --ghc-options=-Wcpp-undef --ghc-options=-Werror --extra-lib-dirs=/nix/store/ffyzkisqs4vc4mg28bwwlyqjf8i9ph6b-ncurses-6.5/lib --extra-lib-dirs=/nix/store/n28qgdj8c1q41kf7n4y1jxa6ckp85m3c-libffi-3.5.2/lib --extra-lib-dirs=/nix/store/1b6h99dw7bk4wbn77kbalih42zbc67m1-elfutils-0.194/lib --extra-lib-dirs=/nix/store/hi0ar880110k6jsmmili7dh1gq3cg2a9-gmp-with-cxx-6.3.0/lib --extra-lib-dirs=/nix/store/g09cflpnp4g80q56sj9dng1qzv4v4ybc-numactl-2.0.18/lib --extra-lib-dirs=/nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/lib
49.66 s
[really-safe-money-gen] Using Parsec parser
49.66 s
[really-safe-money-gen] Configuring really-safe-money-gen-0.0.0.0...
50.44 s
[really-safe-money-gen] Dependency QuickCheck: using QuickCheck-2.15.0.1
50.44 s
[really-safe-money-gen] Dependency base >=4.7 && <5: using base-4.20.2.0
50.44 s
[really-safe-money-gen] Dependency genvalidity: using genvalidity-1.1.1.0
50.44 s
[really-safe-money-gen] Dependency genvalidity-containers: using genvalidity-containers-1.0.0.2
50.44 s
[really-safe-money-gen] Dependency really-safe-money: using really-safe-money-0.0.0.0
50.44 s
[really-safe-money-gen] Dependency base >=4.7 && <5: using base-4.20.2.0
50.44 s
[really-safe-money-gen] Dependency containers: using containers-0.7
50.44 s
[really-safe-money-gen] Dependency genvalidity-sydtest: using genvalidity-sydtest-1.0.1.0
50.44 s
[really-safe-money-gen] Dependency genvalidity-vector: using genvalidity-vector-1.0.0.0
50.44 s
[really-safe-money-gen] Dependency really-safe-money: using really-safe-money-0.0.0.0
50.44 s
[really-safe-money-gen] Dependency really-safe-money-gen: using really-safe-money-gen-0.0.0.0
50.44 s
[really-safe-money-gen] Dependency sydtest: using sydtest-0.23.0.2
50.44 s
[really-safe-money-gen] Dependency vector: using vector-0.13.2.0
50.44 s
[really-safe-money-gen] Source component graph:
50.44 s
[really-safe-money-gen] component lib
50.44 s
[really-safe-money-gen] component test:really-safe-money-test dependency lib
50.44 s
[really-safe-money-gen] Configured component graph:
50.44 s
[really-safe-money-gen] component really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h
50.44 s
[really-safe-money-gen] include QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
50.44 s
[really-safe-money-gen] include base-4.20.2.0-64da
50.44 s
[really-safe-money-gen] include genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
50.44 s
[really-safe-money-gen] include genvalidity-containers-1.0.0.2-DXaOCEBh8iJ1c8u2LwVlK1
50.44 s
[really-safe-money-gen] include really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9
50.44 s
[really-safe-money-gen] component really-safe-money-gen-0.0.0.0-8cvRTlTZbe8HClZztIkEoX-really-safe-money-test
50.44 s
[really-safe-money-gen] include base-4.20.2.0-64da
50.44 s
[really-safe-money-gen] include containers-0.7-504a
50.44 s
[really-safe-money-gen] include genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
50.44 s
[really-safe-money-gen] include genvalidity-vector-1.0.0.0-6KKiduowklk7hSxSW05Gxi
50.44 s
[really-safe-money-gen] include really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9
50.44 s
[really-safe-money-gen] include really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h
50.44 s
[really-safe-money-gen] include sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
50.44 s
[really-safe-money-gen] include vector-0.13.2.0-GDUCoiHhVuq2SKPTzzTr3a
50.44 s
[really-safe-money-gen] Linked component graph:
50.44 s
[really-safe-money-gen] unit really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h
50.44 s
[really-safe-money-gen] include QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
50.44 s
[really-safe-money-gen] include base-4.20.2.0-64da
50.45 s
[really-safe-money-gen] include genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
50.45 s
[really-safe-money-gen] include genvalidity-containers-1.0.0.2-DXaOCEBh8iJ1c8u2LwVlK1
50.45 s
[really-safe-money-gen] include really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9
50.45 s
[really-safe-money-gen] Money.Account.Gen=really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h:Money.Account.Gen,Money.AccountOf.Gen=really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h:Money.AccountOf.Gen,Money.Amount.Gen=really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h:Money.Amount.Gen,Money.AmountOf.Gen=really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h:Money.AmountOf.Gen,Money.ConversionRate.Gen=really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h:Money.ConversionRate.Gen,Money.ConversionRateOf.Gen=really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h:Money.ConversionRateOf.Gen,Money.Currency.Gen=really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h:Money.Currency.Gen,Money.Gen=really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h:Money.Gen,Money.MultiAccount.Gen=really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h:Money.MultiAccount.Gen,Money.MultiAmount.Gen=really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h:Money.MultiAmount.Gen,Money.QuantisationFactor.Gen=really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h:Money.QuantisationFactor.Gen,Numeric.DecimalLiteral.Gen=really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h:Numeric.DecimalLiteral.Gen
50.45 s
[really-safe-money-gen] unit really-safe-money-gen-0.0.0.0-8cvRTlTZbe8HClZztIkEoX-really-safe-money-test
50.45 s
[really-safe-money-gen] include base-4.20.2.0-64da
50.45 s
[really-safe-money-gen] include containers-0.7-504a
50.45 s
[really-safe-money-gen] include genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
50.45 s
[really-safe-money-gen] include genvalidity-vector-1.0.0.0-6KKiduowklk7hSxSW05Gxi
50.45 s
[really-safe-money-gen] include really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9
50.45 s
[really-safe-money-gen] include really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h
50.45 s
[really-safe-money-gen] include sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
50.45 s
[really-safe-money-gen] include vector-0.13.2.0-GDUCoiHhVuq2SKPTzzTr3a
50.45 s
[really-safe-money-gen] Ready component graph:
50.45 s
[really-safe-money-gen] definite really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h
50.45 s
[really-safe-money-gen] depends QuickCheck-2.15.0.1-8fVC1qSJKj9H9pvMjJXUwU
50.45 s
[really-safe-money-gen] depends base-4.20.2.0-64da
50.45 s
[really-safe-money-gen] depends genvalidity-1.1.1.0-KJOcA1wEUno9vXRiVdno1L
50.45 s
[really-safe-money-gen] depends genvalidity-containers-1.0.0.2-DXaOCEBh8iJ1c8u2LwVlK1
50.45 s
[really-safe-money-gen] depends really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9
50.45 s
[really-safe-money-gen] definite really-safe-money-gen-0.0.0.0-8cvRTlTZbe8HClZztIkEoX-really-safe-money-test
50.45 s
[really-safe-money-gen] depends base-4.20.2.0-64da
50.45 s
[really-safe-money-gen] depends containers-0.7-504a
50.45 s
[really-safe-money-gen] depends genvalidity-sydtest-1.0.1.0-Cj9ZxpByhih2ReY6BClfG1
50.45 s
[really-safe-money-gen] depends genvalidity-vector-1.0.0.0-6KKiduowklk7hSxSW05Gxi
50.45 s
[really-safe-money-gen] depends really-safe-money-0.0.0.0-KH9ltLBvnn0Cn1rgifGPh9
50.45 s
[really-safe-money-gen] depends really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h
50.45 s
[really-safe-money-gen] depends sydtest-0.23.0.2-RzVaEpJISaERaSrCHYFLw
50.45 s
[really-safe-money-gen] depends vector-0.13.2.0-GDUCoiHhVuq2SKPTzzTr3a
50.45 s
[really-safe-money-gen] Using Cabal-3.12.1.0 compiled by ghc-9.10
50.45 s
[really-safe-money-gen] Using compiler: ghc-9.10.3
50.45 s
[really-safe-money-gen] Using install prefix:
50.45 s
[really-safe-money-gen] /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0
50.45 s
[really-safe-money-gen] Executables installed in:
50.45 s
[really-safe-money-gen] /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0/bin
50.45 s
[really-safe-money-gen] Libraries installed in:
50.45 s
[really-safe-money-gen] /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6/really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h
50.45 s
[really-safe-money-gen] Dynamic Libraries installed in:
50.45 s
[really-safe-money-gen] /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6
50.45 s
[really-safe-money-gen] Private executables installed in:
50.45 s
[really-safe-money-gen] /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0/libexec/x86_64-linux-ghc-9.10.3-05f6/really-safe-money-gen-0.0.0.0
50.45 s
[really-safe-money-gen] Data files installed in:
50.45 s
[really-safe-money-gen] /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0/share/x86_64-linux-ghc-9.10.3-05f6/really-safe-money-gen-0.0.0.0
50.45 s
[really-safe-money-gen] Documentation installed in:
50.45 s
[really-safe-money-gen] /nix/store/zq5b9inl970gfygw3m9wswh7z8kiab2i-really-safe-money-gen-0.0.0.0-doc/share/doc/really-safe-money-gen-0.0.0.0
50.45 s
[really-safe-money-gen] Configuration files installed in:
50.45 s
[really-safe-money-gen] /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0/etc
50.45 s
[really-safe-money-gen] No alex found
50.45 s
[really-safe-money-gen] Using ar found on system at:
50.45 s
[really-safe-money-gen] /nix/store/iz5lckcsg66r223si2gck7csk2hihj0m-binutils-wrapper-2.44/bin/ar
50.45 s
[really-safe-money-gen] No c2hs found
50.45 s
[really-safe-money-gen] No cpphs found
50.45 s
[really-safe-money-gen] No doctest found
50.45 s
[really-safe-money-gen] Using gcc version 14.3.0 given by user at:
50.45 s
[really-safe-money-gen] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/gcc
50.45 s
[really-safe-money-gen] Using ghc version 9.10.3 found on system at:
50.45 s
[really-safe-money-gen] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/ghc
50.45 s
[really-safe-money-gen] Using ghc-pkg version 9.10.3 found on system at:
50.45 s
[really-safe-money-gen] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/ghc-pkg-9.10.3
50.45 s
[really-safe-money-gen] No ghcjs found
50.45 s
[really-safe-money-gen] No ghcjs-pkg found
50.45 s
[really-safe-money-gen] No greencard found
50.45 s
[really-safe-money-gen] Using haddock version 2.31.1 found on system at:
50.45 s
[really-safe-money-gen] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/haddock-ghc-9.10.3
50.45 s
[really-safe-money-gen] No happy found
50.45 s
[really-safe-money-gen] Using haskell-suite found on system at: haskell-suite-dummy-location
50.45 s
[really-safe-money-gen] Using haskell-suite-pkg found on system at: haskell-suite-pkg-dummy-location
50.45 s
[really-safe-money-gen] No hmake found
50.45 s
[really-safe-money-gen] Using hpc version 0.69 found on system at:
50.45 s
[really-safe-money-gen] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/hpc-ghc-9.10.3
50.45 s
[really-safe-money-gen] Using hsc2hs version 0.68.10 found on system at:
50.45 s
[really-safe-money-gen] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/hsc2hs-ghc-9.10.3
50.45 s
[really-safe-money-gen] Using hscolour version 1.25 found on system at:
50.45 s
[really-safe-money-gen] /nix/store/f755skyzf4jvfx3crwq9mmh3x4lsaz8i-hscolour-1.25/bin/HsColour
50.45 s
[really-safe-money-gen] No jhc found
50.45 s
[really-safe-money-gen] Using ld found on system at:
50.45 s
[really-safe-money-gen] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/ld
50.45 s
[really-safe-money-gen] No pkg-config found
50.45 s
[really-safe-money-gen] Using runghc version 9.10.3 found on system at:
50.45 s
[really-safe-money-gen] /nix/store/s9jd43rkwc2syl9cvgj6f786avy8bgzy-ghc-9.10.3/bin/runghc-9.10.3
50.45 s
[really-safe-money-gen] Using strip version 2.44 found on system at:
50.45 s
[really-safe-money-gen] /nix/store/8v97ngkcpfzgghwnnr7fsz33p2x22gy9-gcc-wrapper-14.3.0/bin/strip
50.45 s
[really-safe-money-gen] Using tar found on system at:
50.45 s
[really-safe-money-gen] /nix/store/xl6pd2spjajwcpq09fnmnjv5psqmlmma-gnutar-1.35/bin/tar
50.45 s
[really-safe-money-gen] No uhc found
50.94 s
[really-safe-money-gen] Phase: buildPhase
51.02 s
[really-safe-money-gen] Preprocessing library for really-safe-money-gen-0.0.0.0...
51.02 s
[really-safe-money-gen] Building library for really-safe-money-gen-0.0.0.0...
51.12 s
[really-safe-money-gen] [ 1 of 13] Compiling Money.Amount.Gen ( src/Money/Amount/Gen.hs, dist/build/Money/Amount/Gen.o, dist/build/Money/Amount/Gen.dyn_o )
51.43 s
[really-safe-money-gen] [ 2 of 13] Compiling Money.Account.Gen ( src/Money/Account/Gen.hs, dist/build/Money/Account/Gen.o, dist/build/Money/Account/Gen.dyn_o )
51.52 s
[really-safe-money-gen] [ 3 of 13] Compiling Money.AccountOf.Gen ( src/Money/AccountOf/Gen.hs, dist/build/Money/AccountOf/Gen.o, dist/build/Money/AccountOf/Gen.dyn_o )
51.56 s
[really-safe-money-gen] [ 4 of 13] Compiling Money.AmountOf.Gen ( src/Money/AmountOf/Gen.hs, dist/build/Money/AmountOf/Gen.o, dist/build/Money/AmountOf/Gen.dyn_o )
51.56 s
[really-safe-money-gen] [ 5 of 13] Compiling Money.ConversionRate.Gen ( src/Money/ConversionRate/Gen.hs, dist/build/Money/ConversionRate/Gen.o, dist/build/Money/ConversionRate/Gen.dyn_o )
51.56 s
[really-safe-money-gen] [ 6 of 13] Compiling Money.ConversionRateOf.Gen ( src/Money/ConversionRateOf/Gen.hs, dist/build/Money/ConversionRateOf/Gen.o, dist/build/Money/ConversionRateOf/Gen.dyn_o )
51.56 s
[really-safe-money-gen] [ 7 of 13] Compiling Money.QuantisationFactor.Gen ( src/Money/QuantisationFactor/Gen.hs, dist/build/Money/QuantisationFactor/Gen.o, dist/build/Money/QuantisationFactor/Gen.dyn_o )
51.56 s
[really-safe-money-gen] [ 8 of 13] Compiling Money.Currency.Gen ( src/Money/Currency/Gen.hs, dist/build/Money/Currency/Gen.o, dist/build/Money/Currency/Gen.dyn_o )
51.56 s
[really-safe-money-gen] [ 9 of 13] Compiling Money.MultiAmount.Gen ( src/Money/MultiAmount/Gen.hs, dist/build/Money/MultiAmount/Gen.o, dist/build/Money/MultiAmount/Gen.dyn_o )
51.56 s
[really-safe-money-gen] [10 of 13] Compiling Money.MultiAccount.Gen ( src/Money/MultiAccount/Gen.hs, dist/build/Money/MultiAccount/Gen.o, dist/build/Money/MultiAccount/Gen.dyn_o )
51.62 s
[really-safe-money-gen] [11 of 13] Compiling Money.Gen ( src/Money/Gen.hs, dist/build/Money/Gen.o, dist/build/Money/Gen.dyn_o )
51.64 s
[really-safe-money-gen] [12 of 13] Compiling Numeric.DecimalLiteral.Gen ( src/Numeric/DecimalLiteral/Gen.hs, dist/build/Numeric/DecimalLiteral/Gen.o, dist/build/Numeric/DecimalLiteral/Gen.dyn_o )
51.65 s
[really-safe-money-gen] [13 of 13] Compiling Paths_really_safe_money_gen ( dist/build/autogen/Paths_really_safe_money_gen.hs, dist/build/Paths_really_safe_money_gen.o, dist/build/Paths_really_safe_money_gen.dyn_o )
51.86 s
[really-safe-money-gen] [ 1 of 13] Compiling Money.Amount.Gen ( src/Money/Amount/Gen.hs, dist/build/Money/Amount/Gen.p_o )
52.26 s
[really-safe-money-gen] [ 2 of 13] Compiling Money.Account.Gen ( src/Money/Account/Gen.hs, dist/build/Money/Account/Gen.p_o )
52.44 s
[really-safe-money-gen] [ 3 of 13] Compiling Money.AccountOf.Gen ( src/Money/AccountOf/Gen.hs, dist/build/Money/AccountOf/Gen.p_o )
52.60 s
[really-safe-money-gen] [ 4 of 13] Compiling Money.AmountOf.Gen ( src/Money/AmountOf/Gen.hs, dist/build/Money/AmountOf/Gen.p_o )
52.60 s
[really-safe-money-gen] [ 5 of 13] Compiling Money.ConversionRate.Gen ( src/Money/ConversionRate/Gen.hs, dist/build/Money/ConversionRate/Gen.p_o )
52.60 s
[really-safe-money-gen] [ 6 of 13] Compiling Money.ConversionRateOf.Gen ( src/Money/ConversionRateOf/Gen.hs, dist/build/Money/ConversionRateOf/Gen.p_o )
52.60 s
[really-safe-money-gen] [ 7 of 13] Compiling Money.QuantisationFactor.Gen ( src/Money/QuantisationFactor/Gen.hs, dist/build/Money/QuantisationFactor/Gen.p_o )
52.60 s
[really-safe-money-gen] [ 8 of 13] Compiling Money.Currency.Gen ( src/Money/Currency/Gen.hs, dist/build/Money/Currency/Gen.p_o )
52.60 s
[really-safe-money-gen] [ 9 of 13] Compiling Money.MultiAmount.Gen ( src/Money/MultiAmount/Gen.hs, dist/build/Money/MultiAmount/Gen.p_o )
52.60 s
[really-safe-money-gen] [10 of 13] Compiling Money.MultiAccount.Gen ( src/Money/MultiAccount/Gen.hs, dist/build/Money/MultiAccount/Gen.p_o )
52.63 s
[really-safe-money-gen] [11 of 13] Compiling Money.Gen ( src/Money/Gen.hs, dist/build/Money/Gen.p_o )
52.76 s
[really-safe-money-gen] [12 of 13] Compiling Numeric.DecimalLiteral.Gen ( src/Numeric/DecimalLiteral/Gen.hs, dist/build/Numeric/DecimalLiteral/Gen.p_o )
52.76 s
[really-safe-money-gen] [13 of 13] Compiling Paths_really_safe_money_gen ( dist/build/autogen/Paths_really_safe_money_gen.hs, dist/build/Paths_really_safe_money_gen.p_o )
54.13 s
[really-safe-money-gen] Preprocessing test suite 'really-safe-money-test' for really-safe-money-gen-0.0.0.0...
54.13 s
[really-safe-money-gen] Building test suite 'really-safe-money-test' for really-safe-money-gen-0.0.0.0...
54.30 s
[really-safe-money-gen] [ 1 of 14] Compiling Money.AccountSpec ( test/Money/AccountSpec.hs, dist/build/really-safe-money-test/really-safe-money-test-tmp/Money/AccountSpec.o )
57.03 s
[really-safe-money-gen] [ 2 of 14] Compiling Money.AmountSpec ( test/Money/AmountSpec.hs, dist/build/really-safe-money-test/really-safe-money-test-tmp/Money/AmountSpec.o )
57.21 s
[really-safe-money-gen] [ 3 of 14] Compiling Money.ConversionRateSpec ( test/Money/ConversionRateSpec.hs, dist/build/really-safe-money-test/really-safe-money-test-tmp/Money/ConversionRateSpec.o )
57.21 s
[really-safe-money-gen] [ 4 of 14] Compiling Money.Currency.TestUtils ( test/Money/Currency/TestUtils.hs, dist/build/really-safe-money-test/really-safe-money-test-tmp/Money/Currency/TestUtils.o )
57.21 s
[really-safe-money-gen] [ 5 of 14] Compiling Money.ConversionRateOfSpec ( test/Money/ConversionRateOfSpec.hs, dist/build/really-safe-money-test/really-safe-money-test-tmp/Money/ConversionRateOfSpec.o )
57.21 s
[really-safe-money-gen] [ 6 of 14] Compiling Money.AmountOfSpec ( test/Money/AmountOfSpec.hs, dist/build/really-safe-money-test/really-safe-money-test-tmp/Money/AmountOfSpec.o )
57.21 s
[really-safe-money-gen] [ 7 of 14] Compiling Money.AccountOfSpec ( test/Money/AccountOfSpec.hs, dist/build/really-safe-money-test/really-safe-money-test-tmp/Money/AccountOfSpec.o )
57.21 s
[really-safe-money-gen] [ 8 of 14] Compiling Money.CurrencySpec ( test/Money/CurrencySpec.hs, dist/build/really-safe-money-test/really-safe-money-test-tmp/Money/CurrencySpec.o )
57.21 s
[really-safe-money-gen] [ 9 of 14] Compiling Money.MultiAccountSpec ( test/Money/MultiAccountSpec.hs, dist/build/really-safe-money-test/really-safe-money-test-tmp/Money/MultiAccountSpec.o )
57.21 s
[really-safe-money-gen] [10 of 14] Compiling Money.MultiAmountSpec ( test/Money/MultiAmountSpec.hs, dist/build/really-safe-money-test/really-safe-money-test-tmp/Money/MultiAmountSpec.o )
57.21 s
[really-safe-money-gen] [11 of 14] Compiling Money.QuantisationFactorSpec ( test/Money/QuantisationFactorSpec.hs, dist/build/really-safe-money-test/really-safe-money-test-tmp/Money/QuantisationFactorSpec.o )
57.21 s
[really-safe-money-gen] [12 of 14] Compiling Numeric.DecimalLiteralSpec ( test/Numeric/DecimalLiteralSpec.hs, dist/build/really-safe-money-test/really-safe-money-test-tmp/Numeric/DecimalLiteralSpec.o )
57.21 s
[really-safe-money-gen] [13 of 14] Compiling Main ( test/Spec.hs, dist/build/really-safe-money-test/really-safe-money-test-tmp/Main.o )
57.27 s
[really-safe-money-gen] [14 of 14] Compiling Paths_really_safe_money_gen ( dist/build/really-safe-money-test/autogen/Paths_really_safe_money_gen.hs, dist/build/really-safe-money-test/really-safe-money-test-tmp/Paths_really_safe_money_gen.o )
57.60 s
[really-safe-money-gen] [15 of 15] Linking dist/build/really-safe-money-test/really-safe-money-test
59.15 s
[really-safe-money-gen] Phase: checkPhase
59.16 s
[really-safe-money-gen] mutation-nix: collecting coverage for suite really-safe-money-gen
59.35 s
[really-safe-money-gen] coverage (1/1610): Numeric\.DecimalLiteralSpec.Natural.fromNatural.renders to valid decimal literals (1 mutations)
59.35 s
[really-safe-money-gen] coverage (2/1610): Numeric\.DecimalLiteralSpec.Natural.fromNatural.can parse any rendered literal (2 mutations)
59.36 s
[really-safe-money-gen] coverage (3/1610): Numeric\.DecimalLiteralSpec.Natural.toNatural.renders to valid naturals (0 mutations)
59.36 s
[really-safe-money-gen] coverage (4/1610): Numeric\.DecimalLiteralSpec.Rational.can turn DecimalLiteral Nothing 9 2 into rational 9 % 100 (2 mutations)
59.36 s
[really-safe-money-gen] coverage (5/1610): Numeric\.DecimalLiteralSpec.Rational.can turn rational 400 % 1 into DecimalLiteral Nothing 400 0 (22 mutations)
59.36 s
[really-safe-money-gen] coverage (6/1610): Numeric\.DecimalLiteralSpec.Rational.can turn rational 1 % 500 into DecimalLiteral Nothing 2 3 (12 mutations)
59.36 s
[really-safe-money-gen] coverage (7/1610): Numeric\.DecimalLiteralSpec.Rational.can turn rational (-6) % 1 into DecimalLiteral (Just False) 6 0 (13 mutations)
59.36 s
[really-safe-money-gen] coverage (8/1610): Numeric\.DecimalLiteralSpec.Rational.can turn DecimalLiteral Nothing 10 0 into rational 10 % 1 (0 mutations)
59.36 s
[really-safe-money-gen] coverage (9/1610): Numeric\.DecimalLiteralSpec.Rational.can turn DecimalLiteral Nothing 50 1 into rational 5 % 1 (0 mutations)
59.36 s
[really-safe-money-gen] coverage (10/1610): Numeric\.DecimalLiteralSpec.Rational.can turn rational (-1) % 1000 into DecimalLiteral (Just False) 1 3 (11 mutations)
59.36 s
[really-safe-money-gen] coverage (11/1610): Numeric\.DecimalLiteralSpec.Rational.can turn rational (-4) % 5 into DecimalLiteral (Just False) 8 1 (11 mutations)
59.36 s
[really-safe-money-gen] coverage (12/1610): Numeric\.DecimalLiteralSpec.Rational.can turn rational 5 % 1 into DecimalLiteral Nothing 5 0 (11 mutations)
59.43 s
[really-safe-money-gen] coverage (13/1610): Numeric\.DecimalLiteralSpec.Rational.fromRational.can parse any rendered rational (11 mutations)
59.58 s
[really-safe-money-gen] coverage (14/1610): Numeric\.DecimalLiteralSpec.Rational.fromRational.renders to valid decimal literals (10 mutations)
59.58 s
[really-safe-money-gen] coverage (15/1610): Numeric\.DecimalLiteralSpec.Rational.can turn DecimalLiteral (Just False) 600 2 into rational (-6) % 1 (0 mutations)
59.58 s
[really-safe-money-gen] coverage (16/1610): Numeric\.DecimalLiteralSpec.Rational.can turn DecimalLiteral Nothing 400 0 into rational 400 % 1 (0 mutations)
59.58 s
[really-safe-money-gen] coverage (17/1610): Numeric\.DecimalLiteralSpec.Rational.can turn DecimalLiteral Nothing 20 4 into rational 1 % 500 (0 mutations)
59.58 s
[really-safe-money-gen] coverage (18/1610): Numeric\.DecimalLiteralSpec.Rational.can turn rational 10 % 1 into DecimalLiteral Nothing 10 0 (11 mutations)
59.58 s
[really-safe-money-gen] coverage (19/1610): Numeric\.DecimalLiteralSpec.Rational.can turn rational (-3) % 1 into DecimalLiteral (Just False) 3 0 (11 mutations)
59.58 s
[really-safe-money-gen] coverage (20/1610): Numeric\.DecimalLiteralSpec.Rational.can turn DecimalLiteral Nothing 7000 3 into rational 7 % 1 (0 mutations)
59.58 s
[really-safe-money-gen] coverage (21/1610): Numeric\.DecimalLiteralSpec.Rational.can turn DecimalLiteral Nothing 2 0 into rational 2 % 1 (0 mutations)
59.58 s
[really-safe-money-gen] coverage (22/1610): Numeric\.DecimalLiteralSpec.Rational.can turn rational 9 % 100 into DecimalLiteral Nothing 9 2 (11 mutations)
59.58 s
[really-safe-money-gen] coverage (23/1610): Numeric\.DecimalLiteralSpec.Rational.can turn DecimalLiteral (Just False) 3 0 into rational (-3) % 1 (0 mutations)
59.58 s
[really-safe-money-gen] coverage (24/1610): Numeric\.DecimalLiteralSpec.Rational.can turn rational 1 % 1 into DecimalLiteral Nothing 1 0 (11 mutations)
59.58 s
[really-safe-money-gen] coverage (25/1610): Numeric\.DecimalLiteralSpec.Rational.can turn rational 7 % 1 into DecimalLiteral Nothing 7 0 (11 mutations)
59.58 s
[really-safe-money-gen] coverage (26/1610): Numeric\.DecimalLiteralSpec.Rational.can turn DecimalLiteral Nothing 1 0 into rational 1 % 1 (0 mutations)
59.58 s
[really-safe-money-gen] coverage (27/1610): Numeric\.DecimalLiteralSpec.Rational.can turn rational 240009 % 20000 into DecimalLiteral Nothing 1200045 5 (11 mutations)
59.58 s
[really-safe-money-gen] coverage (28/1610): Numeric\.DecimalLiteralSpec.Rational.can turn DecimalLiteral (Just False) 1 3 into rational (-1) % 1000 (0 mutations)
59.58 s
[really-safe-money-gen] coverage (29/1610): Numeric\.DecimalLiteralSpec.Rational.toRational.renders to valid rationals (0 mutations)
59.58 s
[really-safe-money-gen] coverage (30/1610): Numeric\.DecimalLiteralSpec.Rational.can turn rational (-3) % 1000 into DecimalLiteral (Just False) 3 3 (11 mutations)
59.58 s
[really-safe-money-gen] coverage (31/1610): Numeric\.DecimalLiteralSpec.Rational.can turn rational 2 % 1 into DecimalLiteral Nothing 2 0 (11 mutations)
59.58 s
[really-safe-money-gen] coverage (32/1610): Numeric\.DecimalLiteralSpec.Rational.can turn DecimalLiteral Nothing 1200045 5 into rational 240009 % 20000 (0 mutations)
59.58 s
[really-safe-money-gen] coverage (33/1610): Numeric\.DecimalLiteralSpec.Rational.can turn DecimalLiteral (Just False) 8 1 into rational (-4) % 5 (0 mutations)
59.58 s
[really-safe-money-gen] coverage (34/1610): Numeric\.DecimalLiteralSpec.Rational.can turn DecimalLiteral (Just False) 300 5 into rational (-3) % 1000 (0 mutations)
59.64 s
[really-safe-money-gen] coverage (35/1610): Numeric\.DecimalLiteralSpec.Ratio.fromRatio.can parse any rendered rational (9 mutations)
59.80 s
[really-safe-money-gen] coverage (36/1610): Numeric\.DecimalLiteralSpec.Ratio.fromRatio.renders to valid decimal literals (8 mutations)
59.80 s
[really-safe-money-gen] coverage (37/1610): Numeric\.DecimalLiteralSpec.Ratio.toRatio.renders to valid rationals (0 mutations)
59.80 s
[really-safe-money-gen] coverage (38/1610): Numeric\.DecimalLiteralSpec.setMinimumDigits.does not change the value of the literal (4 mutations)
59.80 s
[really-safe-money-gen] coverage (39/1610): Numeric\.DecimalLiteralSpec.setMinimumDigits.produces valid literals (3 mutations)
59.80 s
[really-safe-money-gen] coverage (40/1610): Numeric\.DecimalLiteralSpec.setMinimumDigits.produces values with more than the given number of digits (3 mutations)
59.80 s
[really-safe-money-gen] coverage (41/1610): Numeric\.DecimalLiteralSpec.GenValid DecimalLiteral.genValid \:\: Gen DecimalLiteral.only generates valid 'DecimalLiteral's (0 mutations)
59.80 s
[really-safe-money-gen] coverage (42/1610): Numeric\.DecimalLiteralSpec.DecimalLiteral\.fromString.fails to parse scientific notation (12 mutations)
59.81 s
[really-safe-money-gen] coverage (43/1610): Numeric\.DecimalLiteralSpec.DecimalLiteral\.fromString.can parse any rendered decimal literal (17 mutations)
59.81 s
[really-safe-money-gen] coverage (44/1610): Numeric\.DecimalLiteralSpec.setSignOptional.produces valid values (0 mutations)
59.81 s
[really-safe-money-gen] coverage (45/1610): Numeric\.DecimalLiteralSpec.Int.toInt.renders to valid words (4 mutations)
59.82 s
[really-safe-money-gen] coverage (46/1610): Numeric\.DecimalLiteralSpec.Int.fromInt.can parse any rendered literal (11 mutations)
59.82 s
[really-safe-money-gen] coverage (47/1610): Numeric\.DecimalLiteralSpec.Int.fromInt.renders to valid decimal literals (3 mutations)
59.82 s
[really-safe-money-gen] coverage (48/1610): Numeric\.DecimalLiteralSpec.DecimalLiteral\.fromStringM.does the same as DecimalLiteral\.fromString (6 mutations)
59.82 s
[really-safe-money-gen] coverage (49/1610): Numeric\.DecimalLiteralSpec.Word.fromWord.renders to valid decimal literals (0 mutations)
59.82 s
[really-safe-money-gen] coverage (50/1610): Numeric\.DecimalLiteralSpec.Word.fromWord.can parse any rendered literal (2 mutations)
59.82 s
[really-safe-money-gen] coverage (51/1610): Numeric\.DecimalLiteralSpec.Word.toWord.renders to valid words (0 mutations)
59.82 s
[really-safe-money-gen] coverage (52/1610): Numeric\.DecimalLiteralSpec.toString.can render any decimal literal (0 mutations)
59.82 s
[really-safe-money-gen] coverage (53/1610): Numeric\.DecimalLiteralSpec.examples.can parse "+2" (9 mutations)
59.82 s
[really-safe-money-gen] coverage (54/1610): Numeric\.DecimalLiteralSpec.examples.can parse "1" (7 mutations)
59.82 s
[really-safe-money-gen] coverage (55/1610): Numeric\.DecimalLiteralSpec.examples.can render DecimalLiteral Nothing 300 5 (0 mutations)
59.82 s
[really-safe-money-gen] coverage (56/1610): Numeric\.DecimalLiteralSpec.examples.can render DecimalLiteral Nothing 50 1 (0 mutations)
59.82 s
[really-safe-money-gen] coverage (57/1610): Numeric\.DecimalLiteralSpec.examples.can parse "400" (9 mutations)
59.82 s
[really-safe-money-gen] coverage (58/1610): Numeric\.DecimalLiteralSpec.examples.can parse "5\.0" (9 mutations)
59.82 s
[really-safe-money-gen] coverage (59/1610): Numeric\.DecimalLiteralSpec.examples.can render DecimalLiteral Nothing 8 1 (0 mutations)
59.82 s
[really-safe-money-gen] coverage (60/1610): Numeric\.DecimalLiteralSpec.examples.can render DecimalLiteral Nothing 1 3 (0 mutations)
59.82 s
[really-safe-money-gen] coverage (61/1610): Numeric\.DecimalLiteralSpec.examples.can parse "0\.00300" (9 mutations)
59.82 s
[really-safe-money-gen] coverage (62/1610): Numeric\.DecimalLiteralSpec.examples.can render DecimalLiteral Nothing 7000 3 (0 mutations)
59.82 s
[really-safe-money-gen] coverage (63/1610): Numeric\.DecimalLiteralSpec.examples.can render DecimalLiteral Nothing 20 4 (0 mutations)
59.82 s
[really-safe-money-gen] coverage (64/1610): Numeric\.DecimalLiteralSpec.examples.can parse "12\.00045" (9 mutations)
59.82 s
[really-safe-money-gen] coverage (65/1610): Numeric\.DecimalLiteralSpec.examples.can render DecimalLiteral Nothing 1 0 (0 mutations)
59.82 s
[really-safe-money-gen] coverage (66/1610): Numeric\.DecimalLiteralSpec.examples.can render DecimalLiteral (Just True) 2 0 (0 mutations)
59.82 s
[really-safe-money-gen] coverage (67/1610): Numeric\.DecimalLiteralSpec.examples.can render DecimalLiteral Nothing 1200045 5 (0 mutations)
59.82 s
[really-safe-money-gen] coverage (68/1610): Numeric\.DecimalLiteralSpec.examples.can parse "0\.001" (9 mutations)
59.82 s
[really-safe-money-gen] coverage (69/1610): Numeric\.DecimalLiteralSpec.examples.can parse "6\.00" (9 mutations)
59.82 s
[really-safe-money-gen] coverage (70/1610): Numeric\.DecimalLiteralSpec.examples.can render DecimalLiteral Nothing 600 2 (0 mutations)
59.82 s
[really-safe-money-gen] coverage (71/1610): Numeric\.DecimalLiteralSpec.examples.can render DecimalLiteral Nothing 9 2 (0 mutations)
59.82 s
[really-safe-money-gen] coverage (72/1610): Numeric\.DecimalLiteralSpec.examples.can parse "0\.8" (9 mutations)
59.82 s
[really-safe-money-gen] coverage (73/1610): Numeric\.DecimalLiteralSpec.examples.can render DecimalLiteral Nothing 400 0 (0 mutations)
59.82 s
[really-safe-money-gen] coverage (74/1610): Numeric\.DecimalLiteralSpec.examples.can parse "0\.09" (9 mutations)
59.82 s
[really-safe-money-gen] coverage (75/1610): Numeric\.DecimalLiteralSpec.examples.can parse "7\.000" (9 mutations)
59.82 s
[really-safe-money-gen] coverage (76/1610): Numeric\.DecimalLiteralSpec.examples.can parse "-3" (7 mutations)
59.82 s
[really-safe-money-gen] coverage (77/1610): Numeric\.DecimalLiteralSpec.examples.can render DecimalLiteral (Just False) 3 0 (0 mutations)
59.82 s
[really-safe-money-gen] coverage (78/1610): Numeric\.DecimalLiteralSpec.examples.can parse "0\.0020" (9 mutations)
59.82 s
[really-safe-money-gen] coverage (79/1610): Numeric\.DecimalLiteralSpec.Integer.toInteger.renders to valid words (0 mutations)
59.82 s
[really-safe-money-gen] coverage (80/1610): Numeric\.DecimalLiteralSpec.Integer.fromInteger.renders to valid decimal literals (3 mutations)
59.82 s
[really-safe-money-gen] coverage (81/1610): Numeric\.DecimalLiteralSpec.Integer.fromInteger.can parse any rendered literal (3 mutations)
59.82 s
[really-safe-money-gen] coverage (82/1610): Numeric\.DecimalLiteralSpec.digits.produces valid numbers of digits (0 mutations)
59.82 s
[really-safe-money-gen] coverage (83/1610): Numeric\.DecimalLiteralSpec.setSignRequired.produces valid values (2 mutations)
59.87 s
[really-safe-money-gen] coverage (84/1610): Money\.ConversionRateSpec.Rational.toRational.produces valid rationals (0 mutations)
59.96 s
[really-safe-money-gen] coverage (85/1610): Money\.ConversionRateSpec.Rational.fromRational.roundtrips with toRational (8 mutations)
60.08 s
[really-safe-money-gen] coverage (86/1610): Money\.ConversionRateSpec.Rational.fromRational.produces valid conversion rates (6 mutations)
60.17 s
[really-safe-money-gen] coverage (87/1610): Money\.ConversionRateSpec.Ratio.fromRatio.produces valid conversion rates (3 mutations)
60.24 s
[really-safe-money-gen] coverage (88/1610): Money\.ConversionRateSpec.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
60.29 s
[really-safe-money-gen] coverage (89/1610): Money\.ConversionRateSpec.Ratio.toRatio.produces valid ratios (0 mutations)
60.37 s
[really-safe-money-gen] coverage (90/1610): Money\.ConversionRateSpec.invert.produces valid rates (4 mutations)
81.09 s
[really-safe-money-gen] coverage (91/1610): Money\.ConversionRateSpec.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
81.24 s
[really-safe-money-gen] coverage (92/1610): Money\.ConversionRateSpec.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
102.49 s
[really-safe-money-gen] coverage (93/1610): Money\.ConversionRateSpec.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
102.61 s
[really-safe-money-gen] coverage (94/1610): Money\.ConversionRateSpec.compose.produces valid rates (3 mutations)
102.69 s
[really-safe-money-gen] coverage (95/1610): Money\.ConversionRateSpec.GenValid ConversionRate.genValid \:\: Gen ConversionRate.only generates valid 'ConversionRate's (3 mutations)
102.80 s
[really-safe-money-gen] coverage (96/1610): Money\.AccountSpec.Show Account and Read Account.are implemented such that read \. show == id for valid values (1 mutations)
102.82 s
[really-safe-money-gen] coverage (97/1610): Money\.AccountSpec.Eq.Eq Account.(/=) \:\: Account -> Account -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid Account"s (0 mutations)
102.84 s
[really-safe-money-gen] coverage (98/1610): Money\.AccountSpec.Eq.Eq Account.(/=) \:\: Account -> Account -> Bool.is antireflexive for "valid Account"s (0 mutations)
102.86 s
[really-safe-money-gen] coverage (99/1610): Money\.AccountSpec.Eq.Eq Account.(==) \:\: Account -> Account -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid Account"s (0 mutations)
102.87 s
[really-safe-money-gen] coverage (100/1610): Money\.AccountSpec.Eq.Eq Account.(==) \:\: Account -> Account -> Bool.is transitive for "valid Account"s (0 mutations)
102.89 s
[really-safe-money-gen] coverage (101/1610): Money\.AccountSpec.Eq.Eq Account.(==) \:\: Account -> Account -> Bool.is symmetric for "valid Account"s (0 mutations)
102.90 s
[really-safe-money-gen] coverage (102/1610): Money\.AccountSpec.Eq.Eq Account.(==) \:\: Account -> Account -> Bool.is reflexive for "valid Account"s (0 mutations)
102.90 s
[really-safe-money-gen] coverage (103/1610): Money\.AccountSpec.Eq.says negative 0 equals positive 0 (1 mutations)
102.92 s
[really-safe-money-gen] coverage (104/1610): Money\.AccountSpec.negate.produces valid amounts (0 mutations)
103.02 s
[really-safe-money-gen] coverage (105/1610): Money\.AccountSpec.format.produces valid strings (1 mutations)
103.12 s
[really-safe-money-gen] coverage (106/1610): Money\.AccountSpec.convert.succeeds in converting 1\:1 without rounding if the quantisation factor is the same (6 mutations)
103.43 s
[really-safe-money-gen] coverage (107/1610): Money\.AccountSpec.convert.produces valid amounts (6 mutations)
103.43 s
[really-safe-money-gen] coverage (108/1610): Money\.AccountSpec.convert.converts this USD to CHF correctly (6 mutations)
103.43 s
[really-safe-money-gen] coverage (109/1610): Money\.AccountSpec.distribute.correctly distributes 5 into 3 (8 mutations)
103.43 s
[really-safe-money-gen] coverage (110/1610): Money\.AccountSpec.distribute.correctly distributes 3 into 3 (7 mutations)
103.47 s
[really-safe-money-gen] coverage (111/1610): Money\.AccountSpec.distribute.Eq (Distribution Account).(==) \:\: (Distribution Account) -> (Distribution Account) -> Bool.is symmetric for "valid (Distribution Account)"s (1 mutations)
103.50 s
[really-safe-money-gen] coverage (112/1610): Money\.AccountSpec.distribute.Eq (Distribution Account).(==) \:\: (Distribution Account) -> (Distribution Account) -> Bool.is transitive for "valid (Distribution Account)"s (1 mutations)
103.54 s
[really-safe-money-gen] coverage (113/1610): Money\.AccountSpec.distribute.Eq (Distribution Account).(==) \:\: (Distribution Account) -> (Distribution Account) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (Distribution Account)"s (1 mutations)
103.59 s
[really-safe-money-gen] coverage (114/1610): Money\.AccountSpec.distribute.Eq (Distribution Account).(==) \:\: (Distribution Account) -> (Distribution Account) -> Bool.is reflexive for "valid (Distribution Account)"s (1 mutations)
103.63 s
[really-safe-money-gen] coverage (115/1610): Money\.AccountSpec.distribute.Eq (Distribution Account).(/=) \:\: (Distribution Account) -> (Distribution Account) -> Bool.is antireflexive for "valid (Distribution Account)"s (1 mutations)
103.68 s
[really-safe-money-gen] coverage (116/1610): Money\.AccountSpec.distribute.Eq (Distribution Account).(/=) \:\: (Distribution Account) -> (Distribution Account) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (Distribution Account)"s (1 mutations)
103.80 s
[really-safe-money-gen] coverage (117/1610): Money\.AccountSpec.distribute.produces results that sum up to the greater whole (23 mutations)
103.80 s
[really-safe-money-gen] coverage (118/1610): Money\.AccountSpec.distribute.correctly distributes 10 into 4 (7 mutations)
104.08 s
[really-safe-money-gen] coverage (119/1610): Money\.AccountSpec.distribute.Show (Distribution Account) and Read (Distribution Account).are implemented such that read \. show == id for valid values (1 mutations)
104.16 s
[really-safe-money-gen] coverage (120/1610): Money\.AccountSpec.distribute.produces valid amounts (12 mutations)
104.18 s
[really-safe-money-gen] coverage (121/1610): Money\.AccountSpec.abs.produces valid amounts (0 mutations)
104.19 s
[really-safe-money-gen] coverage (122/1610): Money\.AccountSpec.fromAmount.produces valid accounts (0 mutations)
104.35 s
[really-safe-money-gen] coverage (123/1610): Money\.AccountSpec.fromRational.roundtrips with toRational (17 mutations)
104.47 s
[really-safe-money-gen] coverage (124/1610): Money\.AccountSpec.fromRational.produces valid rational (13 mutations)
104.58 s
[really-safe-money-gen] coverage (125/1610): Money\.AccountSpec.fromRatio.produces valid rational (10 mutations)
104.67 s
[really-safe-money-gen] coverage (126/1610): Money\.AccountSpec.fromRatio.roundtrips with toRatio (10 mutations)
104.72 s
[really-safe-money-gen] coverage (127/1610): Money\.AccountSpec.fromMinimalQuantisations.roundtrips with toMinimalQuantisations (6 mutations)
104.78 s
[really-safe-money-gen] coverage (128/1610): Money\.AccountSpec.fromMinimalQuantisations.produces valid accounts (6 mutations)
104.98 s
[really-safe-money-gen] coverage (129/1610): Money\.AccountSpec.rate.computes a rate that can be used to do a conversion without rounding (6 mutations)
105.10 s
[really-safe-money-gen] coverage (130/1610): Money\.AccountSpec.rate.produces valid conversion rates (3 mutations)
105.10 s
[really-safe-money-gen] coverage (131/1610): Money\.AccountSpec.rate.computes this USD to CHF rate correctly (3 mutations)
105.13 s
[really-safe-money-gen] coverage (132/1610): Money\.AccountSpec.toDouble.produces valid Doubles when the quantisation factor is nonzero (0 mutations)
105.14 s
[really-safe-money-gen] coverage (133/1610): Money\.AccountSpec.toDouble.produces an infinite or NaN Double with quantisation factor 0 (0 mutations)
105.14 s
[really-safe-money-gen] coverage (134/1610): Money\.AccountSpec.Ord.says -6 is greater than -7 (0 mutations)
105.14 s
[really-safe-money-gen] coverage (135/1610): Money\.AccountSpec.Ord.says 4 is smaller than 5 (0 mutations)
105.14 s
[really-safe-money-gen] coverage (136/1610): Money\.AccountSpec.Ord.says -3 is smaller than 2 (0 mutations)
105.16 s
[really-safe-money-gen] coverage (137/1610): Money\.AccountSpec.Ord.Ord Account."max \:\: (Account -> Account -> Account)".is equivalent to (\\a b -> if a >= b then a else b) for "valid Account"'s (0 mutations)
105.18 s
[really-safe-money-gen] coverage (138/1610): Money\.AccountSpec.Ord.Ord Account."min \:\: (Account -> Account -> Account)".is equivalent to (\\a b -> if a <= b then a else b) for "valid Account"'s (0 mutations)
105.19 s
[really-safe-money-gen] coverage (139/1610): Money\.AccountSpec.Ord.Ord Account.(<=) \:\: Account -> Account -> Bool.is transitive for "valid Account"'s (0 mutations)
105.21 s
[really-safe-money-gen] coverage (140/1610): Money\.AccountSpec.Ord.Ord Account.(<=) \:\: Account -> Account -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid Account"'s (0 mutations)
105.23 s
[really-safe-money-gen] coverage (141/1610): Money\.AccountSpec.Ord.Ord Account.(<=) \:\: Account -> Account -> Bool.is antisymmetric for "valid Account"'s (0 mutations)
105.24 s
[really-safe-money-gen] coverage (142/1610): Money\.AccountSpec.Ord.Ord Account.(<=) \:\: Account -> Account -> Bool.is reflexive for "valid Account"'s (0 mutations)
105.26 s
[really-safe-money-gen] coverage (143/1610): Money\.AccountSpec.Ord.Ord Account.(>) \:\: Account -> Account -> Bool.is transitive for "valid Account"'s (0 mutations)
105.28 s
[really-safe-money-gen] coverage (144/1610): Money\.AccountSpec.Ord.Ord Account.(>) \:\: Account -> Account -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid Account"'s (0 mutations)
105.30 s
[really-safe-money-gen] coverage (145/1610): Money\.AccountSpec.Ord.Ord Account.(>) \:\: Account -> Account -> Bool.is antireflexive for "valid Account"'s (0 mutations)
105.31 s
[really-safe-money-gen] coverage (146/1610): Money\.AccountSpec.Ord.Ord Account.(<) \:\: Account -> Account -> Bool.is transitive for "valid Account"'s (0 mutations)
105.33 s
[really-safe-money-gen] coverage (147/1610): Money\.AccountSpec.Ord.Ord Account.(<) \:\: Account -> Account -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid Account"'s (0 mutations)
105.35 s
[really-safe-money-gen] coverage (148/1610): Money\.AccountSpec.Ord.Ord Account.(<) \:\: Account -> Account -> Bool.is antireflexive for "valid Account"'s (0 mutations)
105.36 s
[really-safe-money-gen] coverage (149/1610): Money\.AccountSpec.Ord.Ord Account.(>=) \:\: Account -> Account -> Bool.is reflexive for "valid Account"'s (0 mutations)
105.38 s
[really-safe-money-gen] coverage (150/1610): Money\.AccountSpec.Ord.Ord Account.(>=) \:\: Account -> Account -> Bool.is antisymmetric for "valid Account"'s (0 mutations)
105.40 s
[really-safe-money-gen] coverage (151/1610): Money\.AccountSpec.Ord.Ord Account.(>=) \:\: Account -> Account -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid Account"'s (0 mutations)
105.41 s
[really-safe-money-gen] coverage (152/1610): Money\.AccountSpec.Ord.Ord Account.(>=) \:\: Account -> Account -> Bool.is transitive for "valid Account"'s (0 mutations)
105.45 s
[really-safe-money-gen] coverage (153/1610): Money\.AccountSpec.toRatio.produces valid Ratios when the quantisation factor is nonzero (0 mutations)
105.56 s
[really-safe-money-gen] coverage (154/1610): Money\.AccountSpec.fractionRatio.produces valid amounts (4 mutations)
105.83 s
[really-safe-money-gen] coverage (155/1610): Money\.AccountSpec.sum.produces valid amounts (9 mutations)
105.83 s
[really-safe-money-gen] coverage (156/1610): Money\.AccountSpec.sum.fails to sum above maxBound even if the result is back below maxBound (3 mutations)
105.83 s
[really-safe-money-gen] coverage (157/1610): Money\.AccountSpec.sum.fails to sum above maxBound (3 mutations)
105.83 s
[really-safe-money-gen] coverage (158/1610): Money\.AccountSpec.sum.correctly sums [1,2,3] to 6 (3 mutations)
106.10 s
[really-safe-money-gen] coverage (159/1610): Money\.AccountSpec.sum.matches what you would get with Integer, if nothing fails (9 mutations)
106.11 s
[really-safe-money-gen] coverage (160/1610): Money\.AccountSpec.toMinimalQuantisations.produces valid accounts (0 mutations)
106.20 s
[really-safe-money-gen] coverage (161/1610): Money\.AccountSpec.add.is commutative (9 mutations)
106.20 s
[really-safe-money-gen] coverage (162/1610): Money\.AccountSpec.add.fails for minBound + (-1) (3 mutations)
106.20 s
[really-safe-money-gen] coverage (163/1610): Money\.AccountSpec.add.fails for minBound + minBound (3 mutations)
106.25 s
[really-safe-money-gen] coverage (164/1610): Money\.AccountSpec.add.produces valid amounts (9 mutations)
106.31 s
[really-safe-money-gen] coverage (165/1610): Money\.AccountSpec.add.has a right-identity\: zero (9 mutations)
106.31 s
[really-safe-money-gen] coverage (166/1610): Money\.AccountSpec.add.fails for maxBound + 1 (3 mutations)
106.31 s
[really-safe-money-gen] coverage (167/1610): Money\.AccountSpec.add.fails for maxBound + maxBound (3 mutations)
106.46 s
[really-safe-money-gen] coverage (168/1610): Money\.AccountSpec.add.is associative when both succeed (9 mutations)
106.51 s
[really-safe-money-gen] coverage (169/1610): Money\.AccountSpec.add.has a left-identity\: zero (9 mutations)
106.57 s
[really-safe-money-gen] coverage (170/1610): Money\.AccountSpec.add.matches what you would get with Integer, if nothing fails (9 mutations)
106.57 s
[really-safe-money-gen] coverage (171/1610): Money\.AccountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 3 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 100} (14 mutations)
106.57 s
[really-safe-money-gen] coverage (172/1610): Money\.AccountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 1 0 into decimalLiteral QuantisationFactor {unQuantisationFactor = 1} (13 mutations)
106.57 s
[really-safe-money-gen] coverage (173/1610): Money\.AccountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 500 8 into decimalLiteral QuantisationFactor {unQuantisationFactor = 100000000} (13 mutations)
106.57 s
[really-safe-money-gen] coverage (174/1610): Money\.AccountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 100} into DecimalLiteral (Just False) 4 2 (14 mutations)
106.57 s
[really-safe-money-gen] coverage (175/1610): Money\.AccountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 100} into DecimalLiteral (Just False) 200 2 (14 mutations)
106.57 s
[really-safe-money-gen] coverage (176/1610): Money\.AccountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 100 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 100} (13 mutations)
106.57 s
[really-safe-money-gen] coverage (177/1610): Money\.AccountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 20} into DecimalLiteral (Just True) 500 2 (14 mutations)
106.57 s
[really-safe-money-gen] coverage (178/1610): Money\.AccountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 20} into DecimalLiteral (Just False) 600 2 (14 mutations)
106.57 s
[really-safe-money-gen] coverage (179/1610): Money\.AccountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 500 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 20} (13 mutations)
106.57 s
[really-safe-money-gen] coverage (180/1610): Money\.AccountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 100} into DecimalLiteral (Just True) 3 2 (14 mutations)
106.57 s
[really-safe-money-gen] coverage (181/1610): Money\.AccountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 20} into DecimalLiteral (Just True) 10 2 (14 mutations)
106.57 s
[really-safe-money-gen] coverage (182/1610): Money\.AccountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 100} into DecimalLiteral (Just True) 100 2 (14 mutations)
146.93 s
[really-safe-money-gen] coverage (183/1610): Money\.AccountSpec.DecimalLiteral.Account\.toDecimalLiteral.roundtrips with Account\.fromDecimalLiteral (26 mutations)
164.27 s
[really-safe-money-gen] coverage (184/1610): Money\.AccountSpec.DecimalLiteral.Account\.toDecimalLiteral.produces valid decimal literals (13 mutations)
164.29 s
[really-safe-money-gen] coverage (185/1610): Money\.AccountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 1} into DecimalLiteral (Just True) 1 0 (14 mutations)
164.29 s
[really-safe-money-gen] coverage (186/1610): Money\.AccountSpec.DecimalLiteral.can turn DecimalLiteral (Just False) 4 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 100} (13 mutations)
164.29 s
[really-safe-money-gen] coverage (187/1610): Money\.AccountSpec.DecimalLiteral.can turn DecimalLiteral (Just False) 600 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 20} (13 mutations)
164.29 s
[really-safe-money-gen] coverage (188/1610): Money\.AccountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 20} into DecimalLiteral (Just False) 20 2 (14 mutations)
164.29 s
[really-safe-money-gen] coverage (189/1610): Money\.AccountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 1} into DecimalLiteral (Just False) 2 0 (14 mutations)
164.29 s
[really-safe-money-gen] coverage (190/1610): Money\.AccountSpec.DecimalLiteral.can turn DecimalLiteral (Just False) 20 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 20} (13 mutations)
164.29 s
[really-safe-money-gen] coverage (191/1610): Money\.AccountSpec.DecimalLiteral.Account\.fromDecimalLiteral.fails on this amount that is too precise (7 mutations)
164.40 s
[really-safe-money-gen] coverage (192/1610): Money\.AccountSpec.DecimalLiteral.Account\.fromDecimalLiteral.produces valid factors (13 mutations)
164.40 s
[really-safe-money-gen] coverage (193/1610): Money\.AccountSpec.DecimalLiteral.Account\.fromDecimalLiteral.fails on this amount that is too precise:1 (7 mutations)
164.40 s
[really-safe-money-gen] coverage (194/1610): Money\.AccountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 100000000} into DecimalLiteral (Just True) 500 8 (14 mutations)
164.40 s
[really-safe-money-gen] coverage (195/1610): Money\.AccountSpec.DecimalLiteral.can turn DecimalLiteral (Just False) 2 0 into decimalLiteral QuantisationFactor {unQuantisationFactor = 1} (13 mutations)
164.40 s
[really-safe-money-gen] coverage (196/1610): Money\.AccountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 10 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 20} (13 mutations)
164.40 s
[really-safe-money-gen] coverage (197/1610): Money\.AccountSpec.DecimalLiteral.can turn DecimalLiteral (Just False) 200 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 100} (13 mutations)
164.48 s
[really-safe-money-gen] coverage (198/1610): Money\.AccountSpec.fromDouble.produces valid rational (25 mutations)
164.68 s
[really-safe-money-gen] coverage (199/1610): Money\.AccountSpec.fromDouble.roundtrips with toDouble back to double (18 mutations)
164.75 s
[really-safe-money-gen] coverage (200/1610): Money\.AccountSpec.subtract.matches what you would get with Integer, if nothing fails (9 mutations)
164.75 s
[really-safe-money-gen] coverage (201/1610): Money\.AccountSpec.subtract.fails for minBound - 1 (3 mutations)
164.75 s
[really-safe-money-gen] coverage (202/1610): Money\.AccountSpec.subtract.fails for minBound - maxBound (3 mutations)
164.75 s
[really-safe-money-gen] coverage (203/1610): Money\.AccountSpec.subtract.fails for maxBound - minBound (3 mutations)
164.75 s
[really-safe-money-gen] coverage (204/1610): Money\.AccountSpec.multiply.fails for 3 * minBound (3 mutations)
164.79 s
[really-safe-money-gen] coverage (205/1610): Money\.AccountSpec.multiply.is absorbed by 0 (3 mutations)
164.83 s
[really-safe-money-gen] coverage (206/1610): Money\.AccountSpec.multiply.produces valid amounts (3 mutations)
164.83 s
[really-safe-money-gen] coverage (207/1610): Money\.AccountSpec.multiply.succeeds for 3 * 6 (3 mutations)
164.86 s
[really-safe-money-gen] coverage (208/1610): Money\.AccountSpec.multiply.has an identity\: 1 (3 mutations)
164.97 s
[really-safe-money-gen] coverage (209/1610): Money\.AccountSpec.multiply.is distributive with add when both succeed (12 mutations)
165.02 s
[really-safe-money-gen] coverage (210/1610): Money\.AccountSpec.multiply.matches what you would get with Integer, if nothing fails (3 mutations)
165.02 s
[really-safe-money-gen] coverage (211/1610): Money\.AccountSpec.multiply.fails for 2 * maxbound (3 mutations)
165.04 s
[really-safe-money-gen] coverage (212/1610): Money\.AccountSpec.GenValid Account.genValid \:\: Gen Account.only generates valid 'Account's (0 mutations)
165.04 s
[really-safe-money-gen] coverage (213/1610): Money\.AccountSpec.fraction.Correctly fractions 101 with 1 % 100 (11 mutations)
165.22 s
[really-safe-money-gen] coverage (214/1610): Money\.AccountSpec.fraction.produces valid amounts (9 mutations)
165.45 s
[really-safe-money-gen] coverage (215/1610): Money\.AccountSpec.fraction.Produces a result that can be multiplied back (9 mutations)
165.45 s
[really-safe-money-gen] coverage (216/1610): Money\.AccountSpec.fraction.Correctly fractions 100 with 1 % 100 (9 mutations)
165.66 s
[really-safe-money-gen] coverage (217/1610): Money\.AccountSpec.fraction.Produces a result that has been rounded in the right direction when using RoundDown (6 mutations)
165.82 s
[really-safe-money-gen] coverage (218/1610): Money\.AccountSpec.fraction.Produces a result that has been rounded in the right direction when using RoundUp (6 mutations)
165.86 s
[really-safe-money-gen] coverage (219/1610): Money\.AccountSpec.toRational.produces valid Rationals when the quantisation factor is nonzero (0 mutations)
165.88 s
[really-safe-money-gen] coverage (220/1610): Money\.AccountSpec.toRational.produces an invalid Rational with quantisation factor 0 (1 mutations)
165.89 s
[really-safe-money-gen] coverage (221/1610): Money\.MultiAmountSpec.fromAmount.produces valid amounts (10 mutations)
165.99 s
[really-safe-money-gen] coverage (222/1610): Money\.MultiAmountSpec.Show (MultiAmount Currency) and Read (MultiAmount Currency).are implemented such that read \. show == id for valid values (1 mutations)
165.99 s
[really-safe-money-gen] coverage (223/1610): Money\.MultiAmountSpec.zero.is valid (1 mutations)
166.03 s
[really-safe-money-gen] coverage (224/1610): Money\.MultiAmountSpec.Eq (MultiAmount Currency).(/=) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is antireflexive for "valid (MultiAmount Currency)"s (1 mutations)
166.06 s
[really-safe-money-gen] coverage (225/1610): Money\.MultiAmountSpec.Eq (MultiAmount Currency).(/=) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (MultiAmount Currency)"s (1 mutations)
166.10 s
[really-safe-money-gen] coverage (226/1610): Money\.MultiAmountSpec.Eq (MultiAmount Currency).(==) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is transitive for "valid (MultiAmount Currency)"s (1 mutations)
166.14 s
[really-safe-money-gen] coverage (227/1610): Money\.MultiAmountSpec.Eq (MultiAmount Currency).(==) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is symmetric for "valid (MultiAmount Currency)"s (1 mutations)
166.17 s
[really-safe-money-gen] coverage (228/1610): Money\.MultiAmountSpec.Eq (MultiAmount Currency).(==) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (MultiAmount Currency)"s (1 mutations)
166.21 s
[really-safe-money-gen] coverage (229/1610): Money\.MultiAmountSpec.Eq (MultiAmount Currency).(==) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is reflexive for "valid (MultiAmount Currency)"s (1 mutations)
166.36 s
[really-safe-money-gen] coverage (230/1610): Money\.MultiAmountSpec.sum.produces valid amounts (13 mutations)
166.39 s
[really-safe-money-gen] coverage (231/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency).(<) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is antireflexive for "valid (MultiAmount Currency)"'s (1 mutations)
166.43 s
[really-safe-money-gen] coverage (232/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency).(<) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is transitive for "valid (MultiAmount Currency)"'s (1 mutations)
166.46 s
[really-safe-money-gen] coverage (233/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency).(<) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid (MultiAmount Currency)"'s (1 mutations)
166.49 s
[really-safe-money-gen] coverage (234/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency).(<=) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is reflexive for "valid (MultiAmount Currency)"'s (1 mutations)
166.53 s
[really-safe-money-gen] coverage (235/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency).(<=) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid (MultiAmount Currency)"'s (1 mutations)
166.57 s
[really-safe-money-gen] coverage (236/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency).(<=) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is transitive for "valid (MultiAmount Currency)"'s (1 mutations)
166.60 s
[really-safe-money-gen] coverage (237/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency).(<=) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is antisymmetric for "valid (MultiAmount Currency)"'s (1 mutations)
166.72 s
[really-safe-money-gen] coverage (238/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency)."min \:\: (MultiAmount Currency -> MultiAmount Currency -> MultiAmount Currency)".is equivalent to (\\a b -> if a <= b then a else b) for "valid (MultiAmount Currency)"'s (1 mutations)
166.75 s
[really-safe-money-gen] coverage (239/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency).(>=) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is antisymmetric for "valid (MultiAmount Currency)"'s (1 mutations)
166.78 s
[really-safe-money-gen] coverage (240/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency).(>=) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is reflexive for "valid (MultiAmount Currency)"'s (1 mutations)
166.82 s
[really-safe-money-gen] coverage (241/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency).(>=) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is transitive for "valid (MultiAmount Currency)"'s (1 mutations)
166.86 s
[really-safe-money-gen] coverage (242/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency).(>=) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid (MultiAmount Currency)"'s (1 mutations)
166.94 s
[really-safe-money-gen] coverage (243/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency)."max \:\: (MultiAmount Currency -> MultiAmount Currency -> MultiAmount Currency)".is equivalent to (\\a b -> if a >= b then a else b) for "valid (MultiAmount Currency)"'s (1 mutations)
166.96 s
[really-safe-money-gen] coverage (244/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency).(>) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is antireflexive for "valid (MultiAmount Currency)"'s (1 mutations)
167.01 s
[really-safe-money-gen] coverage (245/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency).(>) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is transitive for "valid (MultiAmount Currency)"'s (1 mutations)
167.04 s
[really-safe-money-gen] coverage (246/1610): Money\.MultiAmountSpec.Ord (MultiAmount Currency).(>) \:\: (MultiAmount Currency) -> (MultiAmount Currency) -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid (MultiAmount Currency)"'s (1 mutations)
167.05 s
[really-safe-money-gen] coverage (247/1610): Money\.MultiAmountSpec.convertAll.produces the right result in this example (4 mutations)
167.09 s
[really-safe-money-gen] coverage (248/1610): Money\.MultiAmountSpec.convertAll.produces valid results when converting two currencies to one (5 mutations)
167.12 s
[really-safe-money-gen] coverage (249/1610): Money\.MultiAmountSpec.convertAll.does the same as 'convert' when there is only one amount (9 mutations)
167.21 s
[really-safe-money-gen] coverage (250/1610): Money\.MultiAmountSpec.add.produces valid amounts (13 mutations)
167.29 s
[really-safe-money-gen] coverage (251/1610): Money\.MultiAmountSpec.add.has a right-identity\: zero (1 mutations)
167.38 s
[really-safe-money-gen] coverage (252/1610): Money\.MultiAmountSpec.add.has a left-identity\: zero (1 mutations)
167.60 s
[really-safe-money-gen] coverage (253/1610): Money\.MultiAmountSpec.add.is associative when both succeed (7 mutations)
167.76 s
[really-safe-money-gen] coverage (254/1610): Money\.MultiAmountSpec.add.is commutative (7 mutations)
167.82 s
[really-safe-money-gen] coverage (255/1610): Money\.MultiAmountSpec.addAmount.produces valid amounts (10 mutations)
167.83 s
[really-safe-money-gen] coverage (256/1610): Money\.MultiAmountSpec.subtractAmount.produces valid amounts (14 mutations)
167.93 s
[really-safe-money-gen] coverage (257/1610): Money\.MultiAmountSpec.GenValid (MultiAmount Currency).genValid \:\: Gen (MultiAmount Currency).only generates valid '(MultiAmount Currency)'s (7 mutations)
167.95 s
[really-safe-money-gen] coverage (258/1610): Money\.MultiAmountSpec.subtract.produces valid amounts (13 mutations)
168.02 s
[really-safe-money-gen] coverage (259/1610): Money\.MultiAmountSpec.subtract.has a right-identity\: zero (1 mutations)
168.04 s
[really-safe-money-gen] coverage (260/1610): Money\.MultiAmountSpec.lookupAmount.produces valid amounts (1 mutations)
168.04 s
[really-safe-money-gen] coverage (261/1610): Money\.MultiAmountSpec.lookupAmount.can find an added amount (0 mutations)
168.05 s
[really-safe-money-gen] coverage (262/1610): Money\.AccountOfSpec.USD.sum.produces valid amounts (9 mutations)
168.05 s
[really-safe-money-gen] coverage (263/1610): Money\.AccountOfSpec.USD.sum.matches what you would get with Integer, if nothing fails (9 mutations)
168.05 s
[really-safe-money-gen] coverage (264/1610): Money\.AccountOfSpec.USD.Eq (AccountOf * USD).(/=) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (AccountOf * USD)"s (0 mutations)
168.05 s
[really-safe-money-gen] coverage (265/1610): Money\.AccountOfSpec.USD.Eq (AccountOf * USD).(/=) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is antireflexive for "valid (AccountOf * USD)"s (0 mutations)
168.05 s
[really-safe-money-gen] coverage (266/1610): Money\.AccountOfSpec.USD.Eq (AccountOf * USD).(==) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is reflexive for "valid (AccountOf * USD)"s (0 mutations)
168.05 s
[really-safe-money-gen] coverage (267/1610): Money\.AccountOfSpec.USD.Eq (AccountOf * USD).(==) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is symmetric for "valid (AccountOf * USD)"s (0 mutations)
168.05 s
[really-safe-money-gen] coverage (268/1610): Money\.AccountOfSpec.USD.Eq (AccountOf * USD).(==) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is transitive for "valid (AccountOf * USD)"s (0 mutations)
168.05 s
[really-safe-money-gen] coverage (269/1610): Money\.AccountOfSpec.USD.Eq (AccountOf * USD).(==) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (AccountOf * USD)"s (0 mutations)
168.05 s
[really-safe-money-gen] coverage (270/1610): Money\.AccountOfSpec.USD.add.has a right-identity\: zero (9 mutations)
168.05 s
[really-safe-money-gen] coverage (271/1610): Money\.AccountOfSpec.USD.add.is associative when both succeed (9 mutations)
168.05 s
[really-safe-money-gen] coverage (272/1610): Money\.AccountOfSpec.USD.add.matches what you would get with Integer, if nothing fails (9 mutations)
168.05 s
[really-safe-money-gen] coverage (273/1610): Money\.AccountOfSpec.USD.add.produces valid amounts (9 mutations)
168.05 s
[really-safe-money-gen] coverage (274/1610): Money\.AccountOfSpec.USD.add.is commutative (9 mutations)
168.06 s
[really-safe-money-gen] coverage (275/1610): Money\.AccountOfSpec.USD.add.has a left-identity\: zero (9 mutations)
168.06 s
[really-safe-money-gen] coverage (276/1610): Money\.AccountOfSpec.USD.fromAmountOf.produces valid AccountOfs (0 mutations)
168.06 s
[really-safe-money-gen] coverage (277/1610): Money\.AccountOfSpec.USD.toMinimalQuantisations.produces valid accounts (0 mutations)
168.06 s
[really-safe-money-gen] coverage (278/1610): Money\.AccountOfSpec.USD.toDouble.produces valid Doubles when the quantisation factor is nonzero (0 mutations)
168.06 s
[really-safe-money-gen] coverage (279/1610): Money\.AccountOfSpec.USD.fromAmount.produces valid AccountOfs (0 mutations)
168.06 s
[really-safe-money-gen] coverage (280/1610): Money\.AccountOfSpec.USD.negate.produces valid amounts (0 mutations)
168.06 s
[really-safe-money-gen] coverage (281/1610): Money\.AccountOfSpec.USD.USD.convert.produces valid amounts (6 mutations)
168.06 s
[really-safe-money-gen] coverage (282/1610): Money\.AccountOfSpec.USD.USD.rate.produces valid amounts (3 mutations)
168.06 s
[really-safe-money-gen] coverage (283/1610): Money\.AccountOfSpec.USD.Show (AccountOf * USD) and Read (AccountOf * USD).are implemented such that read \. show == id for valid values (1 mutations)
168.06 s
[really-safe-money-gen] coverage (284/1610): Money\.AccountOfSpec.USD.BTC.rate.produces valid amounts (3 mutations)
168.06 s
[really-safe-money-gen] coverage (285/1610): Money\.AccountOfSpec.USD.BTC.convert.produces valid amounts (6 mutations)
168.07 s
[really-safe-money-gen] coverage (286/1610): Money\.AccountOfSpec.USD.INR.rate.produces valid amounts (3 mutations)
168.07 s
[really-safe-money-gen] coverage (287/1610): Money\.AccountOfSpec.USD.INR.convert.produces valid amounts (6 mutations)
168.07 s
[really-safe-money-gen] coverage (288/1610): Money\.AccountOfSpec.USD.ADA.rate.produces valid amounts (3 mutations)
168.07 s
[really-safe-money-gen] coverage (289/1610): Money\.AccountOfSpec.USD.ADA.convert.produces valid amounts (6 mutations)
168.07 s
[really-safe-money-gen] coverage (290/1610): Money\.AccountOfSpec.USD.CHF.convert.produces valid amounts (6 mutations)
168.07 s
[really-safe-money-gen] coverage (291/1610): Money\.AccountOfSpec.USD.CHF.rate.produces valid amounts (3 mutations)
168.07 s
[really-safe-money-gen] coverage (292/1610): Money\.AccountOfSpec.USD.abs.produces valid amounts (0 mutations)
168.08 s
[really-safe-money-gen] coverage (293/1610): Money\.AccountOfSpec.USD.fraction.produces valid amounts (9 mutations)
168.08 s
[really-safe-money-gen] coverage (294/1610): Money\.AccountOfSpec.USD.fraction.Produces a result that can be multiplied back (9 mutations)
168.08 s
[really-safe-money-gen] coverage (295/1610): Money\.AccountOfSpec.USD.fromMinimalQuantisations.roundtrips with toMinimalQuantisations (6 mutations)
168.08 s
[really-safe-money-gen] coverage (296/1610): Money\.AccountOfSpec.USD.fromMinimalQuantisations.produces valid accounts (6 mutations)
168.08 s
[really-safe-money-gen] coverage (297/1610): Money\.AccountOfSpec.USD.GenValid (AccountOf * USD).genValid \:\: Gen (AccountOf * USD).only generates valid '(AccountOf * USD)'s (0 mutations)
168.08 s
[really-safe-money-gen] coverage (298/1610): Money\.AccountOfSpec.USD.fromDouble.produces valid rational (18 mutations)
168.08 s
[really-safe-money-gen] coverage (299/1610): Money\.AccountOfSpec.USD.fromDouble.roundtrips with toDouble (18 mutations)
168.08 s
[really-safe-money-gen] coverage (300/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD).(>) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid (AccountOf * USD)"'s (0 mutations)
168.08 s
[really-safe-money-gen] coverage (301/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD).(>) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is antireflexive for "valid (AccountOf * USD)"'s (0 mutations)
168.08 s
[really-safe-money-gen] coverage (302/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD).(>) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is transitive for "valid (AccountOf * USD)"'s (0 mutations)
168.08 s
[really-safe-money-gen] coverage (303/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD).(<) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is transitive for "valid (AccountOf * USD)"'s (0 mutations)
168.08 s
[really-safe-money-gen] coverage (304/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD).(<) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is antireflexive for "valid (AccountOf * USD)"'s (0 mutations)
168.09 s
[really-safe-money-gen] coverage (305/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD).(<) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid (AccountOf * USD)"'s (0 mutations)
168.09 s
[really-safe-money-gen] coverage (306/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD).(>=) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid (AccountOf * USD)"'s (0 mutations)
168.09 s
[really-safe-money-gen] coverage (307/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD).(>=) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is antisymmetric for "valid (AccountOf * USD)"'s (0 mutations)
168.09 s
[really-safe-money-gen] coverage (308/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD).(>=) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is reflexive for "valid (AccountOf * USD)"'s (0 mutations)
168.09 s
[really-safe-money-gen] coverage (309/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD).(>=) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is transitive for "valid (AccountOf * USD)"'s (0 mutations)
168.09 s
[really-safe-money-gen] coverage (310/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD)."max \:\: (AccountOf * USD -> AccountOf * USD -> AccountOf * USD)".is equivalent to (\\a b -> if a >= b then a else b) for "valid (AccountOf * USD)"'s (0 mutations)
168.09 s
[really-safe-money-gen] coverage (311/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD).(<=) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid (AccountOf * USD)"'s (0 mutations)
168.09 s
[really-safe-money-gen] coverage (312/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD).(<=) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is reflexive for "valid (AccountOf * USD)"'s (0 mutations)
168.09 s
[really-safe-money-gen] coverage (313/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD).(<=) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is antisymmetric for "valid (AccountOf * USD)"'s (0 mutations)
168.09 s
[really-safe-money-gen] coverage (314/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD).(<=) \:\: (AccountOf * USD) -> (AccountOf * USD) -> Bool.is transitive for "valid (AccountOf * USD)"'s (0 mutations)
168.09 s
[really-safe-money-gen] coverage (315/1610): Money\.AccountOfSpec.USD.Ord (AccountOf * USD)."min \:\: (AccountOf * USD -> AccountOf * USD -> AccountOf * USD)".is equivalent to (\\a b -> if a <= b then a else b) for "valid (AccountOf * USD)"'s (0 mutations)
168.09 s
[really-safe-money-gen] coverage (316/1610): Money\.AccountOfSpec.USD.distribute.produces results that sum up to the greater whole (18 mutations)
168.09 s
[really-safe-money-gen] coverage (317/1610): Money\.AccountOfSpec.USD.distribute.Show (Distribution (AccountOf * USD)) and Read (Distribution (AccountOf * USD)).are implemented such that read \. show == id for valid values (1 mutations)
168.09 s
[really-safe-money-gen] coverage (318/1610): Money\.AccountOfSpec.USD.distribute.Eq (Distribution (AccountOf * USD)).(/=) \:\: (Distribution (AccountOf * USD)) -> (Distribution (AccountOf * USD)) -> Bool.is antireflexive for "valid (Distribution (AccountOf * USD))"s (1 mutations)
168.10 s
[really-safe-money-gen] coverage (319/1610): Money\.AccountOfSpec.USD.distribute.Eq (Distribution (AccountOf * USD)).(/=) \:\: (Distribution (AccountOf * USD)) -> (Distribution (AccountOf * USD)) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (Distribution (AccountOf * USD))"s (1 mutations)
168.10 s
[really-safe-money-gen] coverage (320/1610): Money\.AccountOfSpec.USD.distribute.Eq (Distribution (AccountOf * USD)).(==) \:\: (Distribution (AccountOf * USD)) -> (Distribution (AccountOf * USD)) -> Bool.is reflexive for "valid (Distribution (AccountOf * USD))"s (1 mutations)
168.10 s
[really-safe-money-gen] coverage (321/1610): Money\.AccountOfSpec.USD.distribute.Eq (Distribution (AccountOf * USD)).(==) \:\: (Distribution (AccountOf * USD)) -> (Distribution (AccountOf * USD)) -> Bool.is transitive for "valid (Distribution (AccountOf * USD))"s (1 mutations)
168.10 s
[really-safe-money-gen] coverage (322/1610): Money\.AccountOfSpec.USD.distribute.Eq (Distribution (AccountOf * USD)).(==) \:\: (Distribution (AccountOf * USD)) -> (Distribution (AccountOf * USD)) -> Bool.is symmetric for "valid (Distribution (AccountOf * USD))"s (1 mutations)
168.10 s
[really-safe-money-gen] coverage (323/1610): Money\.AccountOfSpec.USD.distribute.Eq (Distribution (AccountOf * USD)).(==) \:\: (Distribution (AccountOf * USD)) -> (Distribution (AccountOf * USD)) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (Distribution (AccountOf * USD))"s (1 mutations)
168.10 s
[really-safe-money-gen] coverage (324/1610): Money\.AccountOfSpec.USD.distribute.produces valid amounts (9 mutations)
168.10 s
[really-safe-money-gen] coverage (325/1610): Money\.AccountOfSpec.USD.format.produces valid strings (0 mutations)
168.10 s
[really-safe-money-gen] coverage (326/1610): Money\.AccountOfSpec.USD.subtract.matches what you would get with Integer, if nothing fails (9 mutations)
168.10 s
[really-safe-money-gen] coverage (327/1610): Money\.AccountOfSpec.USD.fromRational.produces valid rational (13 mutations)
168.10 s
[really-safe-money-gen] coverage (328/1610): Money\.AccountOfSpec.USD.fromRational.roundtrips with toRational (13 mutations)
168.10 s
[really-safe-money-gen] coverage (329/1610): Money\.AccountOfSpec.USD.multiply.is absorbed by 0 (3 mutations)
168.10 s
[really-safe-money-gen] coverage (330/1610): Money\.AccountOfSpec.USD.multiply.has an identity\: 1 (3 mutations)
168.11 s
[really-safe-money-gen] coverage (331/1610): Money\.AccountOfSpec.USD.multiply.produces valid amounts (3 mutations)
168.11 s
[really-safe-money-gen] coverage (332/1610): Money\.AccountOfSpec.USD.multiply.matches what you would get with Integer, if nothing fails (3 mutations)
168.11 s
[really-safe-money-gen] coverage (333/1610): Money\.AccountOfSpec.USD.multiply.is distributive with add when both succeed (12 mutations)
168.11 s
[really-safe-money-gen] coverage (334/1610): Money\.AccountOfSpec.USD.toRational.produces valid Rationals when the quantisation factor is nonzero (0 mutations)
168.11 s
[really-safe-money-gen] coverage (335/1610): Money\.AccountOfSpec.INR.fromAmount.produces valid AccountOfs (0 mutations)
168.11 s
[really-safe-money-gen] coverage (336/1610): Money\.AccountOfSpec.INR.USD.convert.produces valid amounts (6 mutations)
168.11 s
[really-safe-money-gen] coverage (337/1610): Money\.AccountOfSpec.INR.USD.rate.produces valid amounts (3 mutations)
168.11 s
[really-safe-money-gen] coverage (338/1610): Money\.AccountOfSpec.INR.GenValid (AccountOf * INR).genValid \:\: Gen (AccountOf * INR).only generates valid '(AccountOf * INR)'s (0 mutations)
168.11 s
[really-safe-money-gen] coverage (339/1610): Money\.AccountOfSpec.INR.abs.produces valid amounts (0 mutations)
168.11 s
[really-safe-money-gen] coverage (340/1610): Money\.AccountOfSpec.INR.add.produces valid amounts (9 mutations)
168.11 s
[really-safe-money-gen] coverage (341/1610): Money\.AccountOfSpec.INR.add.is associative when both succeed (9 mutations)
168.11 s
[really-safe-money-gen] coverage (342/1610): Money\.AccountOfSpec.INR.add.has a left-identity\: zero (9 mutations)
168.12 s
[really-safe-money-gen] coverage (343/1610): Money\.AccountOfSpec.INR.add.is commutative (9 mutations)
168.12 s
[really-safe-money-gen] coverage (344/1610): Money\.AccountOfSpec.INR.add.has a right-identity\: zero (9 mutations)
168.12 s
[really-safe-money-gen] coverage (345/1610): Money\.AccountOfSpec.INR.add.matches what you would get with Integer, if nothing fails (9 mutations)
168.12 s
[really-safe-money-gen] coverage (346/1610): Money\.AccountOfSpec.INR.subtract.matches what you would get with Integer, if nothing fails (9 mutations)
168.12 s
[really-safe-money-gen] coverage (347/1610): Money\.AccountOfSpec.INR.fraction.produces valid amounts (9 mutations)
168.12 s
[really-safe-money-gen] coverage (348/1610): Money\.AccountOfSpec.INR.fraction.Produces a result that can be multiplied back (9 mutations)
168.12 s
[really-safe-money-gen] coverage (349/1610): Money\.AccountOfSpec.INR.distribute.produces results that sum up to the greater whole (18 mutations)
168.13 s
[really-safe-money-gen] coverage (350/1610): Money\.AccountOfSpec.INR.distribute.Eq (Distribution (AccountOf * INR)).(/=) \:\: (Distribution (AccountOf * INR)) -> (Distribution (AccountOf * INR)) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (Distribution (AccountOf * INR))"s (1 mutations)
168.13 s
[really-safe-money-gen] coverage (351/1610): Money\.AccountOfSpec.INR.distribute.Eq (Distribution (AccountOf * INR)).(/=) \:\: (Distribution (AccountOf * INR)) -> (Distribution (AccountOf * INR)) -> Bool.is antireflexive for "valid (Distribution (AccountOf * INR))"s (1 mutations)
168.13 s
[really-safe-money-gen] coverage (352/1610): Money\.AccountOfSpec.INR.distribute.Eq (Distribution (AccountOf * INR)).(==) \:\: (Distribution (AccountOf * INR)) -> (Distribution (AccountOf * INR)) -> Bool.is transitive for "valid (Distribution (AccountOf * INR))"s (1 mutations)
168.13 s
[really-safe-money-gen] coverage (353/1610): Money\.AccountOfSpec.INR.distribute.Eq (Distribution (AccountOf * INR)).(==) \:\: (Distribution (AccountOf * INR)) -> (Distribution (AccountOf * INR)) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (Distribution (AccountOf * INR))"s (1 mutations)
168.13 s
[really-safe-money-gen] coverage (354/1610): Money\.AccountOfSpec.INR.distribute.Eq (Distribution (AccountOf * INR)).(==) \:\: (Distribution (AccountOf * INR)) -> (Distribution (AccountOf * INR)) -> Bool.is reflexive for "valid (Distribution (AccountOf * INR))"s (1 mutations)
168.13 s
[really-safe-money-gen] coverage (355/1610): Money\.AccountOfSpec.INR.distribute.Eq (Distribution (AccountOf * INR)).(==) \:\: (Distribution (AccountOf * INR)) -> (Distribution (AccountOf * INR)) -> Bool.is symmetric for "valid (Distribution (AccountOf * INR))"s (1 mutations)
168.13 s
[really-safe-money-gen] coverage (356/1610): Money\.AccountOfSpec.INR.distribute.Show (Distribution (AccountOf * INR)) and Read (Distribution (AccountOf * INR)).are implemented such that read \. show == id for valid values (1 mutations)
168.13 s
[really-safe-money-gen] coverage (357/1610): Money\.AccountOfSpec.INR.distribute.produces valid amounts (9 mutations)
168.13 s
[really-safe-money-gen] coverage (358/1610): Money\.AccountOfSpec.INR.fromAmountOf.produces valid AccountOfs (0 mutations)
168.14 s
[really-safe-money-gen] coverage (359/1610): Money\.AccountOfSpec.INR.sum.matches what you would get with Integer, if nothing fails (9 mutations)
168.14 s
[really-safe-money-gen] coverage (360/1610): Money\.AccountOfSpec.INR.sum.produces valid amounts (9 mutations)
168.14 s
[really-safe-money-gen] coverage (361/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR)."min \:\: (AccountOf * INR -> AccountOf * INR -> AccountOf * INR)".is equivalent to (\\a b -> if a <= b then a else b) for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (362/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR).(>=) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is antisymmetric for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (363/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR).(>=) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (364/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR).(>=) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is reflexive for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (365/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR).(>=) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is transitive for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (366/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR).(<) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is transitive for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (367/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR).(<) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is antireflexive for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (368/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR).(<) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (369/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR)."max \:\: (AccountOf * INR -> AccountOf * INR -> AccountOf * INR)".is equivalent to (\\a b -> if a >= b then a else b) for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (370/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR).(>) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is transitive for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (371/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR).(>) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (372/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR).(>) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is antireflexive for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (373/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR).(<=) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is reflexive for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (374/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR).(<=) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is transitive for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (375/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR).(<=) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is antisymmetric for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (376/1610): Money\.AccountOfSpec.INR.Ord (AccountOf * INR).(<=) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid (AccountOf * INR)"'s (0 mutations)
168.14 s
[really-safe-money-gen] coverage (377/1610): Money\.AccountOfSpec.INR.CHF.rate.produces valid amounts (3 mutations)
168.15 s
[really-safe-money-gen] coverage (378/1610): Money\.AccountOfSpec.INR.CHF.convert.produces valid amounts (6 mutations)
168.15 s
[really-safe-money-gen] coverage (379/1610): Money\.AccountOfSpec.INR.multiply.is distributive with add when both succeed (12 mutations)
168.15 s
[really-safe-money-gen] coverage (380/1610): Money\.AccountOfSpec.INR.multiply.matches what you would get with Integer, if nothing fails (3 mutations)
168.15 s
[really-safe-money-gen] coverage (381/1610): Money\.AccountOfSpec.INR.multiply.is absorbed by 0 (3 mutations)
168.15 s
[really-safe-money-gen] coverage (382/1610): Money\.AccountOfSpec.INR.multiply.produces valid amounts (3 mutations)
168.15 s
[really-safe-money-gen] coverage (383/1610): Money\.AccountOfSpec.INR.multiply.has an identity\: 1 (3 mutations)
168.15 s
[really-safe-money-gen] coverage (384/1610): Money\.AccountOfSpec.INR.negate.produces valid amounts (0 mutations)
168.15 s
[really-safe-money-gen] coverage (385/1610): Money\.AccountOfSpec.INR.Show (AccountOf * INR) and Read (AccountOf * INR).are implemented such that read \. show == id for valid values (1 mutations)
168.15 s
[really-safe-money-gen] coverage (386/1610): Money\.AccountOfSpec.INR.fromMinimalQuantisations.roundtrips with toMinimalQuantisations (6 mutations)
168.16 s
[really-safe-money-gen] coverage (387/1610): Money\.AccountOfSpec.INR.fromMinimalQuantisations.produces valid accounts (6 mutations)
168.16 s
[really-safe-money-gen] coverage (388/1610): Money\.AccountOfSpec.INR.fromRational.produces valid rational (13 mutations)
168.16 s
[really-safe-money-gen] coverage (389/1610): Money\.AccountOfSpec.INR.fromRational.roundtrips with toRational (13 mutations)
168.16 s
[really-safe-money-gen] coverage (390/1610): Money\.AccountOfSpec.INR.toDouble.produces valid Doubles when the quantisation factor is nonzero (0 mutations)
168.16 s
[really-safe-money-gen] coverage (391/1610): Money\.AccountOfSpec.INR.BTC.rate.produces valid amounts (3 mutations)
168.16 s
[really-safe-money-gen] coverage (392/1610): Money\.AccountOfSpec.INR.BTC.convert.produces valid amounts (6 mutations)
168.16 s
[really-safe-money-gen] coverage (393/1610): Money\.AccountOfSpec.INR.toRational.produces valid Rationals when the quantisation factor is nonzero (0 mutations)
168.17 s
[really-safe-money-gen] coverage (394/1610): Money\.AccountOfSpec.INR.fromDouble.roundtrips with toDouble (18 mutations)
168.17 s
[really-safe-money-gen] coverage (395/1610): Money\.AccountOfSpec.INR.fromDouble.produces valid rational (18 mutations)
168.17 s
[really-safe-money-gen] coverage (396/1610): Money\.AccountOfSpec.INR.ADA.convert.produces valid amounts (6 mutations)
168.17 s
[really-safe-money-gen] coverage (397/1610): Money\.AccountOfSpec.INR.ADA.rate.produces valid amounts (3 mutations)
168.17 s
[really-safe-money-gen] coverage (398/1610): Money\.AccountOfSpec.INR.format.produces valid strings (0 mutations)
168.17 s
[really-safe-money-gen] coverage (399/1610): Money\.AccountOfSpec.INR.toMinimalQuantisations.produces valid accounts (0 mutations)
168.17 s
[really-safe-money-gen] coverage (400/1610): Money\.AccountOfSpec.INR.Eq (AccountOf * INR).(/=) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (AccountOf * INR)"s (0 mutations)
168.17 s
[really-safe-money-gen] coverage (401/1610): Money\.AccountOfSpec.INR.Eq (AccountOf * INR).(/=) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is antireflexive for "valid (AccountOf * INR)"s (0 mutations)
168.17 s
[really-safe-money-gen] coverage (402/1610): Money\.AccountOfSpec.INR.Eq (AccountOf * INR).(==) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is reflexive for "valid (AccountOf * INR)"s (0 mutations)
168.17 s
[really-safe-money-gen] coverage (403/1610): Money\.AccountOfSpec.INR.Eq (AccountOf * INR).(==) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is symmetric for "valid (AccountOf * INR)"s (0 mutations)
168.18 s
[really-safe-money-gen] coverage (404/1610): Money\.AccountOfSpec.INR.Eq (AccountOf * INR).(==) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is transitive for "valid (AccountOf * INR)"s (0 mutations)
168.18 s
[really-safe-money-gen] coverage (405/1610): Money\.AccountOfSpec.INR.Eq (AccountOf * INR).(==) \:\: (AccountOf * INR) -> (AccountOf * INR) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (AccountOf * INR)"s (0 mutations)
168.18 s
[really-safe-money-gen] coverage (406/1610): Money\.AccountOfSpec.INR.INR.convert.produces valid amounts (6 mutations)
168.18 s
[really-safe-money-gen] coverage (407/1610): Money\.AccountOfSpec.INR.INR.rate.produces valid amounts (3 mutations)
168.18 s
[really-safe-money-gen] coverage (408/1610): Money\.AccountOfSpec.CHF.fromAmount.produces valid AccountOfs (0 mutations)
168.18 s
[really-safe-money-gen] coverage (409/1610): Money\.AccountOfSpec.CHF.fromMinimalQuantisations.roundtrips with toMinimalQuantisations (6 mutations)
168.18 s
[really-safe-money-gen] coverage (410/1610): Money\.AccountOfSpec.CHF.fromMinimalQuantisations.produces valid accounts (6 mutations)
168.18 s
[really-safe-money-gen] coverage (411/1610): Money\.AccountOfSpec.CHF.multiply.produces valid amounts (3 mutations)
168.18 s
[really-safe-money-gen] coverage (412/1610): Money\.AccountOfSpec.CHF.multiply.is absorbed by 0 (3 mutations)
168.18 s
[really-safe-money-gen] coverage (413/1610): Money\.AccountOfSpec.CHF.multiply.is distributive with add when both succeed (12 mutations)
168.19 s
[really-safe-money-gen] coverage (414/1610): Money\.AccountOfSpec.CHF.multiply.matches what you would get with Integer, if nothing fails (3 mutations)
168.19 s
[really-safe-money-gen] coverage (415/1610): Money\.AccountOfSpec.CHF.multiply.has an identity\: 1 (3 mutations)
168.19 s
[really-safe-money-gen] coverage (416/1610): Money\.AccountOfSpec.CHF.distribute.produces valid amounts (9 mutations)
168.19 s
[really-safe-money-gen] coverage (417/1610): Money\.AccountOfSpec.CHF.distribute.produces results that sum up to the greater whole (18 mutations)
168.19 s
[really-safe-money-gen] coverage (418/1610): Money\.AccountOfSpec.CHF.distribute.Eq (Distribution (AccountOf * CHF)).(/=) \:\: (Distribution (AccountOf * CHF)) -> (Distribution (AccountOf * CHF)) -> Bool.is antireflexive for "valid (Distribution (AccountOf * CHF))"s (1 mutations)
168.19 s
[really-safe-money-gen] coverage (419/1610): Money\.AccountOfSpec.CHF.distribute.Eq (Distribution (AccountOf * CHF)).(/=) \:\: (Distribution (AccountOf * CHF)) -> (Distribution (AccountOf * CHF)) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (Distribution (AccountOf * CHF))"s (1 mutations)
168.19 s
[really-safe-money-gen] coverage (420/1610): Money\.AccountOfSpec.CHF.distribute.Eq (Distribution (AccountOf * CHF)).(==) \:\: (Distribution (AccountOf * CHF)) -> (Distribution (AccountOf * CHF)) -> Bool.is reflexive for "valid (Distribution (AccountOf * CHF))"s (1 mutations)
168.19 s
[really-safe-money-gen] coverage (421/1610): Money\.AccountOfSpec.CHF.distribute.Eq (Distribution (AccountOf * CHF)).(==) \:\: (Distribution (AccountOf * CHF)) -> (Distribution (AccountOf * CHF)) -> Bool.is transitive for "valid (Distribution (AccountOf * CHF))"s (1 mutations)
168.19 s
[really-safe-money-gen] coverage (422/1610): Money\.AccountOfSpec.CHF.distribute.Eq (Distribution (AccountOf * CHF)).(==) \:\: (Distribution (AccountOf * CHF)) -> (Distribution (AccountOf * CHF)) -> Bool.is symmetric for "valid (Distribution (AccountOf * CHF))"s (1 mutations)
168.20 s
[really-safe-money-gen] coverage (423/1610): Money\.AccountOfSpec.CHF.distribute.Eq (Distribution (AccountOf * CHF)).(==) \:\: (Distribution (AccountOf * CHF)) -> (Distribution (AccountOf * CHF)) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (Distribution (AccountOf * CHF))"s (1 mutations)
168.20 s
[really-safe-money-gen] coverage (424/1610): Money\.AccountOfSpec.CHF.distribute.Show (Distribution (AccountOf * CHF)) and Read (Distribution (AccountOf * CHF)).are implemented such that read \. show == id for valid values (1 mutations)
168.20 s
[really-safe-money-gen] coverage (425/1610): Money\.AccountOfSpec.CHF.sum.matches what you would get with Integer, if nothing fails (9 mutations)
168.21 s
[really-safe-money-gen] coverage (426/1610): Money\.AccountOfSpec.CHF.sum.produces valid amounts (9 mutations)
168.21 s
[really-safe-money-gen] coverage (427/1610): Money\.AccountOfSpec.CHF.Show (AccountOf * CHF) and Read (AccountOf * CHF).are implemented such that read \. show == id for valid values (1 mutations)
168.21 s
[really-safe-money-gen] coverage (428/1610): Money\.AccountOfSpec.CHF.abs.produces valid amounts (0 mutations)
168.21 s
[really-safe-money-gen] coverage (429/1610): Money\.AccountOfSpec.CHF.USD.rate.produces valid amounts (3 mutations)
168.21 s
[really-safe-money-gen] coverage (430/1610): Money\.AccountOfSpec.CHF.USD.convert.produces valid amounts (6 mutations)
168.22 s
[really-safe-money-gen] coverage (431/1610): Money\.AccountOfSpec.CHF.BTC.convert.produces valid amounts (6 mutations)
168.22 s
[really-safe-money-gen] coverage (432/1610): Money\.AccountOfSpec.CHF.BTC.rate.produces valid amounts (3 mutations)
168.22 s
[really-safe-money-gen] coverage (433/1610): Money\.AccountOfSpec.CHF.toMinimalQuantisations.produces valid accounts (0 mutations)
168.22 s
[really-safe-money-gen] coverage (434/1610): Money\.AccountOfSpec.CHF.fraction.Produces a result that can be multiplied back (9 mutations)
168.22 s
[really-safe-money-gen] coverage (435/1610): Money\.AccountOfSpec.CHF.fraction.produces valid amounts (9 mutations)
168.22 s
[really-safe-money-gen] coverage (436/1610): Money\.AccountOfSpec.CHF.Eq (AccountOf * CHF).(==) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (AccountOf * CHF)"s (0 mutations)
168.22 s
[really-safe-money-gen] coverage (437/1610): Money\.AccountOfSpec.CHF.Eq (AccountOf * CHF).(==) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is transitive for "valid (AccountOf * CHF)"s (0 mutations)
168.22 s
[really-safe-money-gen] coverage (438/1610): Money\.AccountOfSpec.CHF.Eq (AccountOf * CHF).(==) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is reflexive for "valid (AccountOf * CHF)"s (0 mutations)
168.22 s
[really-safe-money-gen] coverage (439/1610): Money\.AccountOfSpec.CHF.Eq (AccountOf * CHF).(==) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is symmetric for "valid (AccountOf * CHF)"s (0 mutations)
168.22 s
[really-safe-money-gen] coverage (440/1610): Money\.AccountOfSpec.CHF.Eq (AccountOf * CHF).(/=) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (AccountOf * CHF)"s (0 mutations)
168.23 s
[really-safe-money-gen] coverage (441/1610): Money\.AccountOfSpec.CHF.Eq (AccountOf * CHF).(/=) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is antireflexive for "valid (AccountOf * CHF)"s (0 mutations)
168.23 s
[really-safe-money-gen] coverage (442/1610): Money\.AccountOfSpec.CHF.toDouble.produces valid Doubles when the quantisation factor is nonzero (0 mutations)
168.23 s
[really-safe-money-gen] coverage (443/1610): Money\.AccountOfSpec.CHF.fromAmountOf.produces valid AccountOfs (0 mutations)
168.23 s
[really-safe-money-gen] coverage (444/1610): Money\.AccountOfSpec.CHF.negate.produces valid amounts (0 mutations)
168.23 s
[really-safe-money-gen] coverage (445/1610): Money\.AccountOfSpec.CHF.toRational.produces valid Rationals when the quantisation factor is nonzero (0 mutations)
168.23 s
[really-safe-money-gen] coverage (446/1610): Money\.AccountOfSpec.CHF.format.produces valid strings (0 mutations)
168.23 s
[really-safe-money-gen] coverage (447/1610): Money\.AccountOfSpec.CHF.fromRational.produces valid rational (13 mutations)
168.23 s
[really-safe-money-gen] coverage (448/1610): Money\.AccountOfSpec.CHF.fromRational.roundtrips with toRational (13 mutations)
168.23 s
[really-safe-money-gen] coverage (449/1610): Money\.AccountOfSpec.CHF.fromDouble.produces valid rational (18 mutations)
168.24 s
[really-safe-money-gen] coverage (450/1610): Money\.AccountOfSpec.CHF.fromDouble.roundtrips with toDouble (18 mutations)
168.24 s
[really-safe-money-gen] coverage (451/1610): Money\.AccountOfSpec.CHF.ADA.convert.produces valid amounts (6 mutations)
168.24 s
[really-safe-money-gen] coverage (452/1610): Money\.AccountOfSpec.CHF.ADA.rate.produces valid amounts (3 mutations)
168.24 s
[really-safe-money-gen] coverage (453/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF)."min \:\: (AccountOf * CHF -> AccountOf * CHF -> AccountOf * CHF)".is equivalent to (\\a b -> if a <= b then a else b) for "valid (AccountOf * CHF)"'s (0 mutations)
168.24 s
[really-safe-money-gen] coverage (454/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF).(<) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid (AccountOf * CHF)"'s (0 mutations)
168.24 s
[really-safe-money-gen] coverage (455/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF).(<) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is transitive for "valid (AccountOf * CHF)"'s (0 mutations)
168.24 s
[really-safe-money-gen] coverage (456/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF).(<) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is antireflexive for "valid (AccountOf * CHF)"'s (0 mutations)
168.24 s
[really-safe-money-gen] coverage (457/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF).(<=) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid (AccountOf * CHF)"'s (0 mutations)
168.24 s
[really-safe-money-gen] coverage (458/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF).(<=) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is antisymmetric for "valid (AccountOf * CHF)"'s (0 mutations)
168.24 s
[really-safe-money-gen] coverage (459/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF).(<=) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is transitive for "valid (AccountOf * CHF)"'s (0 mutations)
168.24 s
[really-safe-money-gen] coverage (460/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF).(<=) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is reflexive for "valid (AccountOf * CHF)"'s (0 mutations)
168.24 s
[really-safe-money-gen] coverage (461/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF)."max \:\: (AccountOf * CHF -> AccountOf * CHF -> AccountOf * CHF)".is equivalent to (\\a b -> if a >= b then a else b) for "valid (AccountOf * CHF)"'s (0 mutations)
168.24 s
[really-safe-money-gen] coverage (462/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF).(>) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid (AccountOf * CHF)"'s (0 mutations)
168.24 s
[really-safe-money-gen] coverage (463/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF).(>) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is antireflexive for "valid (AccountOf * CHF)"'s (0 mutations)
168.24 s
[really-safe-money-gen] coverage (464/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF).(>) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is transitive for "valid (AccountOf * CHF)"'s (0 mutations)
168.24 s
[really-safe-money-gen] coverage (465/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF).(>=) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid (AccountOf * CHF)"'s (0 mutations)
168.25 s
[really-safe-money-gen] coverage (466/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF).(>=) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is reflexive for "valid (AccountOf * CHF)"'s (0 mutations)
168.25 s
[really-safe-money-gen] coverage (467/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF).(>=) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is antisymmetric for "valid (AccountOf * CHF)"'s (0 mutations)
168.25 s
[really-safe-money-gen] coverage (468/1610): Money\.AccountOfSpec.CHF.Ord (AccountOf * CHF).(>=) \:\: (AccountOf * CHF) -> (AccountOf * CHF) -> Bool.is transitive for "valid (AccountOf * CHF)"'s (0 mutations)
168.25 s
[really-safe-money-gen] coverage (469/1610): Money\.AccountOfSpec.CHF.GenValid (AccountOf * CHF).genValid \:\: Gen (AccountOf * CHF).only generates valid '(AccountOf * CHF)'s (0 mutations)
168.25 s
[really-safe-money-gen] coverage (470/1610): Money\.AccountOfSpec.CHF.subtract.matches what you would get with Integer, if nothing fails (9 mutations)
168.25 s
[really-safe-money-gen] coverage (471/1610): Money\.AccountOfSpec.CHF.CHF.rate.produces valid amounts (3 mutations)
168.25 s
[really-safe-money-gen] coverage (472/1610): Money\.AccountOfSpec.CHF.CHF.convert.produces valid amounts (6 mutations)
168.25 s
[really-safe-money-gen] coverage (473/1610): Money\.AccountOfSpec.CHF.add.is associative when both succeed (9 mutations)
168.25 s
[really-safe-money-gen] coverage (474/1610): Money\.AccountOfSpec.CHF.add.has a left-identity\: zero (9 mutations)
168.26 s
[really-safe-money-gen] coverage (475/1610): Money\.AccountOfSpec.CHF.add.matches what you would get with Integer, if nothing fails (9 mutations)
168.26 s
[really-safe-money-gen] coverage (476/1610): Money\.AccountOfSpec.CHF.add.has a right-identity\: zero (9 mutations)
168.26 s
[really-safe-money-gen] coverage (477/1610): Money\.AccountOfSpec.CHF.add.is commutative (9 mutations)
168.26 s
[really-safe-money-gen] coverage (478/1610): Money\.AccountOfSpec.CHF.add.produces valid amounts (9 mutations)
168.26 s
[really-safe-money-gen] coverage (479/1610): Money\.AccountOfSpec.CHF.INR.convert.produces valid amounts (6 mutations)
168.26 s
[really-safe-money-gen] coverage (480/1610): Money\.AccountOfSpec.CHF.INR.rate.produces valid amounts (3 mutations)
168.26 s
[really-safe-money-gen] coverage (481/1610): Money\.AccountOfSpec.ADA.fromMinimalQuantisations.produces valid accounts (6 mutations)
168.26 s
[really-safe-money-gen] coverage (482/1610): Money\.AccountOfSpec.ADA.fromMinimalQuantisations.roundtrips with toMinimalQuantisations (6 mutations)
168.27 s
[really-safe-money-gen] coverage (483/1610): Money\.AccountOfSpec.ADA.fromDouble.produces valid rational (18 mutations)
168.27 s
[really-safe-money-gen] coverage (484/1610): Money\.AccountOfSpec.ADA.fromDouble.roundtrips with toDouble (18 mutations)
168.27 s
[really-safe-money-gen] coverage (485/1610): Money\.AccountOfSpec.ADA.fromRational.produces valid rational (13 mutations)
168.27 s
[really-safe-money-gen] coverage (486/1610): Money\.AccountOfSpec.ADA.fromRational.roundtrips with toRational (13 mutations)
168.27 s
[really-safe-money-gen] coverage (487/1610): Money\.AccountOfSpec.ADA.Show (AccountOf * ADA) and Read (AccountOf * ADA).are implemented such that read \. show == id for valid values (1 mutations)
168.27 s
[really-safe-money-gen] coverage (488/1610): Money\.AccountOfSpec.ADA.fraction.Produces a result that can be multiplied back (9 mutations)
168.28 s
[really-safe-money-gen] coverage (489/1610): Money\.AccountOfSpec.ADA.fraction.produces valid amounts (9 mutations)
168.28 s
[really-safe-money-gen] coverage (490/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA).(<=) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is antisymmetric for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (491/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA).(<=) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is reflexive for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (492/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA).(<=) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is transitive for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (493/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA).(<=) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (494/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA).(>=) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is antisymmetric for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (495/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA).(>=) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (496/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA).(>=) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is transitive for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (497/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA).(>=) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is reflexive for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (498/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA)."min \:\: (AccountOf * ADA -> AccountOf * ADA -> AccountOf * ADA)".is equivalent to (\\a b -> if a <= b then a else b) for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (499/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA).(>) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is antireflexive for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (500/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA).(>) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is transitive for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (501/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA).(>) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (502/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA)."max \:\: (AccountOf * ADA -> AccountOf * ADA -> AccountOf * ADA)".is equivalent to (\\a b -> if a >= b then a else b) for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (503/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA).(<) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (504/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA).(<) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is transitive for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (505/1610): Money\.AccountOfSpec.ADA.Ord (AccountOf * ADA).(<) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is antireflexive for "valid (AccountOf * ADA)"'s (0 mutations)
168.28 s
[really-safe-money-gen] coverage (506/1610): Money\.AccountOfSpec.ADA.fromAmountOf.produces valid AccountOfs (0 mutations)
168.28 s
[really-safe-money-gen] coverage (507/1610): Money\.AccountOfSpec.ADA.toRational.produces valid Rationals when the quantisation factor is nonzero (0 mutations)
168.28 s
[really-safe-money-gen] coverage (508/1610): Money\.AccountOfSpec.ADA.distribute.Eq (Distribution (AccountOf * ADA)).(==) \:\: (Distribution (AccountOf * ADA)) -> (Distribution (AccountOf * ADA)) -> Bool.is reflexive for "valid (Distribution (AccountOf * ADA))"s (1 mutations)
168.28 s
[really-safe-money-gen] coverage (509/1610): Money\.AccountOfSpec.ADA.distribute.Eq (Distribution (AccountOf * ADA)).(==) \:\: (Distribution (AccountOf * ADA)) -> (Distribution (AccountOf * ADA)) -> Bool.is transitive for "valid (Distribution (AccountOf * ADA))"s (1 mutations)
168.28 s
[really-safe-money-gen] coverage (510/1610): Money\.AccountOfSpec.ADA.distribute.Eq (Distribution (AccountOf * ADA)).(==) \:\: (Distribution (AccountOf * ADA)) -> (Distribution (AccountOf * ADA)) -> Bool.is symmetric for "valid (Distribution (AccountOf * ADA))"s (1 mutations)
168.28 s
[really-safe-money-gen] coverage (511/1610): Money\.AccountOfSpec.ADA.distribute.Eq (Distribution (AccountOf * ADA)).(==) \:\: (Distribution (AccountOf * ADA)) -> (Distribution (AccountOf * ADA)) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (Distribution (AccountOf * ADA))"s (1 mutations)
168.28 s
[really-safe-money-gen] coverage (512/1610): Money\.AccountOfSpec.ADA.distribute.Eq (Distribution (AccountOf * ADA)).(/=) \:\: (Distribution (AccountOf * ADA)) -> (Distribution (AccountOf * ADA)) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (Distribution (AccountOf * ADA))"s (1 mutations)
168.28 s
[really-safe-money-gen] coverage (513/1610): Money\.AccountOfSpec.ADA.distribute.Eq (Distribution (AccountOf * ADA)).(/=) \:\: (Distribution (AccountOf * ADA)) -> (Distribution (AccountOf * ADA)) -> Bool.is antireflexive for "valid (Distribution (AccountOf * ADA))"s (1 mutations)
168.29 s
[really-safe-money-gen] coverage (514/1610): Money\.AccountOfSpec.ADA.distribute.Show (Distribution (AccountOf * ADA)) and Read (Distribution (AccountOf * ADA)).are implemented such that read \. show == id for valid values (1 mutations)
168.29 s
[really-safe-money-gen] coverage (515/1610): Money\.AccountOfSpec.ADA.distribute.produces valid amounts (9 mutations)
168.29 s
[really-safe-money-gen] coverage (516/1610): Money\.AccountOfSpec.ADA.distribute.produces results that sum up to the greater whole (18 mutations)
168.29 s
[really-safe-money-gen] coverage (517/1610): Money\.AccountOfSpec.ADA.toDouble.produces valid Doubles when the quantisation factor is nonzero (0 mutations)
168.29 s
[really-safe-money-gen] coverage (518/1610): Money\.AccountOfSpec.ADA.Eq (AccountOf * ADA).(/=) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is antireflexive for "valid (AccountOf * ADA)"s (0 mutations)
168.29 s
[really-safe-money-gen] coverage (519/1610): Money\.AccountOfSpec.ADA.Eq (AccountOf * ADA).(/=) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (AccountOf * ADA)"s (0 mutations)
168.29 s
[really-safe-money-gen] coverage (520/1610): Money\.AccountOfSpec.ADA.Eq (AccountOf * ADA).(==) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is reflexive for "valid (AccountOf * ADA)"s (0 mutations)
168.29 s
[really-safe-money-gen] coverage (521/1610): Money\.AccountOfSpec.ADA.Eq (AccountOf * ADA).(==) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is transitive for "valid (AccountOf * ADA)"s (0 mutations)
168.29 s
[really-safe-money-gen] coverage (522/1610): Money\.AccountOfSpec.ADA.Eq (AccountOf * ADA).(==) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is symmetric for "valid (AccountOf * ADA)"s (0 mutations)
168.29 s
[really-safe-money-gen] coverage (523/1610): Money\.AccountOfSpec.ADA.Eq (AccountOf * ADA).(==) \:\: (AccountOf * ADA) -> (AccountOf * ADA) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (AccountOf * ADA)"s (0 mutations)
168.29 s
[really-safe-money-gen] coverage (524/1610): Money\.AccountOfSpec.ADA.abs.produces valid amounts (0 mutations)
168.29 s
[really-safe-money-gen] coverage (525/1610): Money\.AccountOfSpec.ADA.format.produces valid strings (0 mutations)
168.29 s
[really-safe-money-gen] coverage (526/1610): Money\.AccountOfSpec.ADA.subtract.matches what you would get with Integer, if nothing fails (9 mutations)
168.29 s
[really-safe-money-gen] coverage (527/1610): Money\.AccountOfSpec.ADA.negate.produces valid amounts (0 mutations)
168.29 s
[really-safe-money-gen] coverage (528/1610): Money\.AccountOfSpec.ADA.CHF.rate.produces valid amounts (3 mutations)
168.29 s
[really-safe-money-gen] coverage (529/1610): Money\.AccountOfSpec.ADA.CHF.convert.produces valid amounts (6 mutations)
168.29 s
[really-safe-money-gen] coverage (530/1610): Money\.AccountOfSpec.ADA.INR.rate.produces valid amounts (3 mutations)
168.30 s
[really-safe-money-gen] coverage (531/1610): Money\.AccountOfSpec.ADA.INR.convert.produces valid amounts (6 mutations)
168.30 s
[really-safe-money-gen] coverage (532/1610): Money\.AccountOfSpec.ADA.fromAmount.produces valid AccountOfs (0 mutations)
168.30 s
[really-safe-money-gen] coverage (533/1610): Money\.AccountOfSpec.ADA.sum.matches what you would get with Integer, if nothing fails (9 mutations)
168.30 s
[really-safe-money-gen] coverage (534/1610): Money\.AccountOfSpec.ADA.sum.produces valid amounts (9 mutations)
168.30 s
[really-safe-money-gen] coverage (535/1610): Money\.AccountOfSpec.ADA.toMinimalQuantisations.produces valid accounts (0 mutations)
168.30 s
[really-safe-money-gen] coverage (536/1610): Money\.AccountOfSpec.ADA.ADA.convert.produces valid amounts (6 mutations)
168.30 s
[really-safe-money-gen] coverage (537/1610): Money\.AccountOfSpec.ADA.ADA.rate.produces valid amounts (3 mutations)
168.30 s
[really-safe-money-gen] coverage (538/1610): Money\.AccountOfSpec.ADA.add.matches what you would get with Integer, if nothing fails (9 mutations)
168.30 s
[really-safe-money-gen] coverage (539/1610): Money\.AccountOfSpec.ADA.add.produces valid amounts (9 mutations)
168.30 s
[really-safe-money-gen] coverage (540/1610): Money\.AccountOfSpec.ADA.add.is commutative (9 mutations)
168.30 s
[really-safe-money-gen] coverage (541/1610): Money\.AccountOfSpec.ADA.add.is associative when both succeed (9 mutations)
168.30 s
[really-safe-money-gen] coverage (542/1610): Money\.AccountOfSpec.ADA.add.has a left-identity\: zero (9 mutations)
168.30 s
[really-safe-money-gen] coverage (543/1610): Money\.AccountOfSpec.ADA.add.has a right-identity\: zero (9 mutations)
168.30 s
[really-safe-money-gen] coverage (544/1610): Money\.AccountOfSpec.ADA.GenValid (AccountOf * ADA).genValid \:\: Gen (AccountOf * ADA).only generates valid '(AccountOf * ADA)'s (0 mutations)
168.31 s
[really-safe-money-gen] coverage (545/1610): Money\.AccountOfSpec.ADA.BTC.convert.produces valid amounts (6 mutations)
168.31 s
[really-safe-money-gen] coverage (546/1610): Money\.AccountOfSpec.ADA.BTC.rate.produces valid amounts (3 mutations)
168.31 s
[really-safe-money-gen] coverage (547/1610): Money\.AccountOfSpec.ADA.multiply.produces valid amounts (3 mutations)
168.31 s
[really-safe-money-gen] coverage (548/1610): Money\.AccountOfSpec.ADA.multiply.is distributive with add when both succeed (12 mutations)
168.31 s
[really-safe-money-gen] coverage (549/1610): Money\.AccountOfSpec.ADA.multiply.has an identity\: 1 (3 mutations)
168.31 s
[really-safe-money-gen] coverage (550/1610): Money\.AccountOfSpec.ADA.multiply.matches what you would get with Integer, if nothing fails (3 mutations)
168.31 s
[really-safe-money-gen] coverage (551/1610): Money\.AccountOfSpec.ADA.multiply.is absorbed by 0 (3 mutations)
168.31 s
[really-safe-money-gen] coverage (552/1610): Money\.AccountOfSpec.ADA.USD.convert.produces valid amounts (6 mutations)
168.31 s
[really-safe-money-gen] coverage (553/1610): Money\.AccountOfSpec.ADA.USD.rate.produces valid amounts (3 mutations)
168.31 s
[really-safe-money-gen] coverage (554/1610): Money\.AccountOfSpec.BTC.add.is commutative (9 mutations)
168.31 s
[really-safe-money-gen] coverage (555/1610): Money\.AccountOfSpec.BTC.add.produces valid amounts (9 mutations)
168.31 s
[really-safe-money-gen] coverage (556/1610): Money\.AccountOfSpec.BTC.add.has a left-identity\: zero (9 mutations)
168.31 s
[really-safe-money-gen] coverage (557/1610): Money\.AccountOfSpec.BTC.add.has a right-identity\: zero (9 mutations)
168.32 s
[really-safe-money-gen] coverage (558/1610): Money\.AccountOfSpec.BTC.add.is associative when both succeed (9 mutations)
168.32 s
[really-safe-money-gen] coverage (559/1610): Money\.AccountOfSpec.BTC.add.matches what you would get with Integer, if nothing fails (9 mutations)
168.32 s
[really-safe-money-gen] coverage (560/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC).(>) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (561/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC).(>) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is transitive for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (562/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC).(>) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is antireflexive for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (563/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC).(<=) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (564/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC).(<=) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is antisymmetric for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (565/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC).(<=) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is reflexive for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (566/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC).(<=) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is transitive for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (567/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC).(<) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is transitive for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (568/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC).(<) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (569/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC).(<) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is antireflexive for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (570/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC)."min \:\: (AccountOf * BTC -> AccountOf * BTC -> AccountOf * BTC)".is equivalent to (\\a b -> if a <= b then a else b) for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (571/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC)."max \:\: (AccountOf * BTC -> AccountOf * BTC -> AccountOf * BTC)".is equivalent to (\\a b -> if a >= b then a else b) for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (572/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC).(>=) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is antisymmetric for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (573/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC).(>=) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (574/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC).(>=) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is transitive for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (575/1610): Money\.AccountOfSpec.BTC.Ord (AccountOf * BTC).(>=) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is reflexive for "valid (AccountOf * BTC)"'s (0 mutations)
168.32 s
[really-safe-money-gen] coverage (576/1610): Money\.AccountOfSpec.BTC.BTC.convert.produces valid amounts (6 mutations)
168.32 s
[really-safe-money-gen] coverage (577/1610): Money\.AccountOfSpec.BTC.BTC.rate.produces valid amounts (3 mutations)
168.32 s
[really-safe-money-gen] coverage (578/1610): Money\.AccountOfSpec.BTC.distribute.produces valid amounts (9 mutations)
168.32 s
[really-safe-money-gen] coverage (579/1610): Money\.AccountOfSpec.BTC.distribute.produces results that sum up to the greater whole (18 mutations)
168.33 s
[really-safe-money-gen] coverage (580/1610): Money\.AccountOfSpec.BTC.distribute.Show (Distribution (AccountOf * BTC)) and Read (Distribution (AccountOf * BTC)).are implemented such that read \. show == id for valid values (1 mutations)
168.33 s
[really-safe-money-gen] coverage (581/1610): Money\.AccountOfSpec.BTC.distribute.Eq (Distribution (AccountOf * BTC)).(==) \:\: (Distribution (AccountOf * BTC)) -> (Distribution (AccountOf * BTC)) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (Distribution (AccountOf * BTC))"s (1 mutations)
168.33 s
[really-safe-money-gen] coverage (582/1610): Money\.AccountOfSpec.BTC.distribute.Eq (Distribution (AccountOf * BTC)).(==) \:\: (Distribution (AccountOf * BTC)) -> (Distribution (AccountOf * BTC)) -> Bool.is reflexive for "valid (Distribution (AccountOf * BTC))"s (1 mutations)
168.33 s
[really-safe-money-gen] coverage (583/1610): Money\.AccountOfSpec.BTC.distribute.Eq (Distribution (AccountOf * BTC)).(==) \:\: (Distribution (AccountOf * BTC)) -> (Distribution (AccountOf * BTC)) -> Bool.is symmetric for "valid (Distribution (AccountOf * BTC))"s (1 mutations)
168.33 s
[really-safe-money-gen] coverage (584/1610): Money\.AccountOfSpec.BTC.distribute.Eq (Distribution (AccountOf * BTC)).(==) \:\: (Distribution (AccountOf * BTC)) -> (Distribution (AccountOf * BTC)) -> Bool.is transitive for "valid (Distribution (AccountOf * BTC))"s (1 mutations)
168.33 s
[really-safe-money-gen] coverage (585/1610): Money\.AccountOfSpec.BTC.distribute.Eq (Distribution (AccountOf * BTC)).(/=) \:\: (Distribution (AccountOf * BTC)) -> (Distribution (AccountOf * BTC)) -> Bool.is antireflexive for "valid (Distribution (AccountOf * BTC))"s (1 mutations)
168.33 s
[really-safe-money-gen] coverage (586/1610): Money\.AccountOfSpec.BTC.distribute.Eq (Distribution (AccountOf * BTC)).(/=) \:\: (Distribution (AccountOf * BTC)) -> (Distribution (AccountOf * BTC)) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (Distribution (AccountOf * BTC))"s (1 mutations)
168.33 s
[really-safe-money-gen] coverage (587/1610): Money\.AccountOfSpec.BTC.toDouble.produces valid Doubles when the quantisation factor is nonzero (0 mutations)
168.33 s
[really-safe-money-gen] coverage (588/1610): Money\.AccountOfSpec.BTC.negate.produces valid amounts (0 mutations)
168.33 s
[really-safe-money-gen] coverage (589/1610): Money\.AccountOfSpec.BTC.fromAmountOf.produces valid AccountOfs (0 mutations)
168.33 s
[really-safe-money-gen] coverage (590/1610): Money\.AccountOfSpec.BTC.multiply.produces valid amounts (3 mutations)
168.33 s
[really-safe-money-gen] coverage (591/1610): Money\.AccountOfSpec.BTC.multiply.is distributive with add when both succeed (12 mutations)
168.33 s
[really-safe-money-gen] coverage (592/1610): Money\.AccountOfSpec.BTC.multiply.is absorbed by 0 (3 mutations)
168.33 s
[really-safe-money-gen] coverage (593/1610): Money\.AccountOfSpec.BTC.multiply.has an identity\: 1 (3 mutations)
168.33 s
[really-safe-money-gen] coverage (594/1610): Money\.AccountOfSpec.BTC.multiply.matches what you would get with Integer, if nothing fails (3 mutations)
168.34 s
[really-safe-money-gen] coverage (595/1610): Money\.AccountOfSpec.BTC.sum.produces valid amounts (9 mutations)
168.34 s
[really-safe-money-gen] coverage (596/1610): Money\.AccountOfSpec.BTC.sum.matches what you would get with Integer, if nothing fails (9 mutations)
168.34 s
[really-safe-money-gen] coverage (597/1610): Money\.AccountOfSpec.BTC.Eq (AccountOf * BTC).(==) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is reflexive for "valid (AccountOf * BTC)"s (0 mutations)
168.34 s
[really-safe-money-gen] coverage (598/1610): Money\.AccountOfSpec.BTC.Eq (AccountOf * BTC).(==) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is transitive for "valid (AccountOf * BTC)"s (0 mutations)
168.34 s
[really-safe-money-gen] coverage (599/1610): Money\.AccountOfSpec.BTC.Eq (AccountOf * BTC).(==) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (AccountOf * BTC)"s (0 mutations)
168.34 s
[really-safe-money-gen] coverage (600/1610): Money\.AccountOfSpec.BTC.Eq (AccountOf * BTC).(==) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is symmetric for "valid (AccountOf * BTC)"s (0 mutations)
168.34 s
[really-safe-money-gen] coverage (601/1610): Money\.AccountOfSpec.BTC.Eq (AccountOf * BTC).(/=) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is antireflexive for "valid (AccountOf * BTC)"s (0 mutations)
168.34 s
[really-safe-money-gen] coverage (602/1610): Money\.AccountOfSpec.BTC.Eq (AccountOf * BTC).(/=) \:\: (AccountOf * BTC) -> (AccountOf * BTC) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (AccountOf * BTC)"s (0 mutations)
168.34 s
[really-safe-money-gen] coverage (603/1610): Money\.AccountOfSpec.BTC.format.produces valid strings (0 mutations)
168.34 s
[really-safe-money-gen] coverage (604/1610): Money\.AccountOfSpec.BTC.USD.convert.produces valid amounts (6 mutations)
168.34 s
[really-safe-money-gen] coverage (605/1610): Money\.AccountOfSpec.BTC.USD.rate.produces valid amounts (3 mutations)
168.34 s
[really-safe-money-gen] coverage (606/1610): Money\.AccountOfSpec.BTC.subtract.matches what you would get with Integer, if nothing fails (9 mutations)
168.34 s
[really-safe-money-gen] coverage (607/1610): Money\.AccountOfSpec.BTC.ADA.convert.produces valid amounts (6 mutations)
168.34 s
[really-safe-money-gen] coverage (608/1610): Money\.AccountOfSpec.BTC.ADA.rate.produces valid amounts (3 mutations)
168.35 s
[really-safe-money-gen] coverage (609/1610): Money\.AccountOfSpec.BTC.fromRational.produces valid rational (13 mutations)
168.35 s
[really-safe-money-gen] coverage (610/1610): Money\.AccountOfSpec.BTC.fromRational.roundtrips with toRational (13 mutations)
168.35 s
[really-safe-money-gen] coverage (611/1610): Money\.AccountOfSpec.BTC.Show (AccountOf * BTC) and Read (AccountOf * BTC).are implemented such that read \. show == id for valid values (1 mutations)
168.35 s
[really-safe-money-gen] coverage (612/1610): Money\.AccountOfSpec.BTC.toMinimalQuantisations.produces valid accounts (0 mutations)
168.35 s
[really-safe-money-gen] coverage (613/1610): Money\.AccountOfSpec.BTC.GenValid (AccountOf * BTC).genValid \:\: Gen (AccountOf * BTC).only generates valid '(AccountOf * BTC)'s (0 mutations)
168.35 s
[really-safe-money-gen] coverage (614/1610): Money\.AccountOfSpec.BTC.toRational.produces valid Rationals when the quantisation factor is nonzero (0 mutations)
168.35 s
[really-safe-money-gen] coverage (615/1610): Money\.AccountOfSpec.BTC.INR.rate.produces valid amounts (3 mutations)
168.35 s
[really-safe-money-gen] coverage (616/1610): Money\.AccountOfSpec.BTC.INR.convert.produces valid amounts (6 mutations)
168.36 s
[really-safe-money-gen] coverage (617/1610): Money\.AccountOfSpec.BTC.fromDouble.roundtrips with toDouble (18 mutations)
168.36 s
[really-safe-money-gen] coverage (618/1610): Money\.AccountOfSpec.BTC.fromDouble.produces valid rational (18 mutations)
168.36 s
[really-safe-money-gen] coverage (619/1610): Money\.AccountOfSpec.BTC.fraction.produces valid amounts (9 mutations)
168.36 s
[really-safe-money-gen] coverage (620/1610): Money\.AccountOfSpec.BTC.fraction.Produces a result that can be multiplied back (9 mutations)
168.36 s
[really-safe-money-gen] coverage (621/1610): Money\.AccountOfSpec.BTC.CHF.rate.produces valid amounts (3 mutations)
168.36 s
[really-safe-money-gen] coverage (622/1610): Money\.AccountOfSpec.BTC.CHF.convert.produces valid amounts (6 mutations)
168.36 s
[really-safe-money-gen] coverage (623/1610): Money\.AccountOfSpec.BTC.fromMinimalQuantisations.roundtrips with toMinimalQuantisations (6 mutations)
168.36 s
[really-safe-money-gen] coverage (624/1610): Money\.AccountOfSpec.BTC.fromMinimalQuantisations.produces valid accounts (6 mutations)
168.36 s
[really-safe-money-gen] coverage (625/1610): Money\.AccountOfSpec.BTC.fromAmount.produces valid AccountOfs (0 mutations)
168.36 s
[really-safe-money-gen] coverage (626/1610): Money\.AccountOfSpec.BTC.abs.produces valid amounts (0 mutations)
168.37 s
[really-safe-money-gen] coverage (627/1610): Money\.ConversionRateOfSpec.INR.ADA.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
168.37 s
[really-safe-money-gen] coverage (628/1610): Money\.ConversionRateOfSpec.INR.ADA.Ratio.fromRatio.produces valid conversion rates (3 mutations)
168.37 s
[really-safe-money-gen] coverage (629/1610): Money\.ConversionRateOfSpec.INR.ADA.Ratio.toRatio.produces valid ratios (0 mutations)
168.37 s
[really-safe-money-gen] coverage (630/1610): Money\.ConversionRateOfSpec.INR.ADA.GenValid (ConversionRateOf INR ADA).genValid \:\: Gen (ConversionRateOf INR ADA).only generates valid '(ConversionRateOf INR ADA)'s (3 mutations)
168.37 s
[really-safe-money-gen] coverage (631/1610): Money\.ConversionRateOfSpec.INR.ADA.Rational.toRational.produces valid rationals (0 mutations)
168.37 s
[really-safe-money-gen] coverage (632/1610): Money\.ConversionRateOfSpec.INR.ADA.Rational.fromRational.produces valid conversion rates (6 mutations)
168.37 s
[really-safe-money-gen] coverage (633/1610): Money\.ConversionRateOfSpec.INR.ADA.Rational.fromRational.roundtrips with toRational (6 mutations)
168.37 s
[really-safe-money-gen] coverage (634/1610): Money\.ConversionRateOfSpec.INR.ADA.compose.produces valid rates (3 mutations)
168.37 s
[really-safe-money-gen] coverage (635/1610): Money\.ConversionRateOfSpec.INR.ADA.invert.produces valid rates (3 mutations)
168.63 s
[really-safe-money-gen] coverage (636/1610): Money\.ConversionRateOfSpec.INR.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
168.63 s
[really-safe-money-gen] coverage (637/1610): Money\.ConversionRateOfSpec.INR.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
168.89 s
[really-safe-money-gen] coverage (638/1610): Money\.ConversionRateOfSpec.INR.ADA.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
168.89 s
[really-safe-money-gen] coverage (639/1610): Money\.ConversionRateOfSpec.INR.BTC.Ratio.toRatio.produces valid ratios (0 mutations)
168.89 s
[really-safe-money-gen] coverage (640/1610): Money\.ConversionRateOfSpec.INR.BTC.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
168.89 s
[really-safe-money-gen] coverage (641/1610): Money\.ConversionRateOfSpec.INR.BTC.Ratio.fromRatio.produces valid conversion rates (3 mutations)
168.89 s
[really-safe-money-gen] coverage (642/1610): Money\.ConversionRateOfSpec.INR.BTC.invert.produces valid rates (3 mutations)
168.89 s
[really-safe-money-gen] coverage (643/1610): Money\.ConversionRateOfSpec.INR.BTC.compose.produces valid rates (3 mutations)
168.89 s
[really-safe-money-gen] coverage (644/1610): Money\.ConversionRateOfSpec.INR.BTC.Rational.toRational.produces valid rationals (0 mutations)
168.89 s
[really-safe-money-gen] coverage (645/1610): Money\.ConversionRateOfSpec.INR.BTC.Rational.fromRational.roundtrips with toRational (6 mutations)
168.89 s
[really-safe-money-gen] coverage (646/1610): Money\.ConversionRateOfSpec.INR.BTC.Rational.fromRational.produces valid conversion rates (6 mutations)
168.89 s
[really-safe-money-gen] coverage (647/1610): Money\.ConversionRateOfSpec.INR.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
169.16 s
[really-safe-money-gen] coverage (648/1610): Money\.ConversionRateOfSpec.INR.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
169.42 s
[really-safe-money-gen] coverage (649/1610): Money\.ConversionRateOfSpec.INR.BTC.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
169.51 s
[really-safe-money-gen] coverage (650/1610): Money\.ConversionRateOfSpec.INR.BTC.GenValid (ConversionRateOf INR BTC).genValid \:\: Gen (ConversionRateOf INR BTC).only generates valid '(ConversionRateOf INR BTC)'s (3 mutations)
169.51 s
[really-safe-money-gen] coverage (651/1610): Money\.ConversionRateOfSpec.INR.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
169.70 s
[really-safe-money-gen] coverage (652/1610): Money\.ConversionRateOfSpec.INR.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
169.97 s
[really-safe-money-gen] coverage (653/1610): Money\.ConversionRateOfSpec.INR.CHF.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
169.97 s
[really-safe-money-gen] coverage (654/1610): Money\.ConversionRateOfSpec.INR.CHF.Ratio.toRatio.produces valid ratios (0 mutations)
169.97 s
[really-safe-money-gen] coverage (655/1610): Money\.ConversionRateOfSpec.INR.CHF.Ratio.fromRatio.produces valid conversion rates (3 mutations)
169.97 s
[really-safe-money-gen] coverage (656/1610): Money\.ConversionRateOfSpec.INR.CHF.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
169.97 s
[really-safe-money-gen] coverage (657/1610): Money\.ConversionRateOfSpec.INR.CHF.Rational.fromRational.roundtrips with toRational (6 mutations)
169.97 s
[really-safe-money-gen] coverage (658/1610): Money\.ConversionRateOfSpec.INR.CHF.Rational.fromRational.produces valid conversion rates (6 mutations)
169.97 s
[really-safe-money-gen] coverage (659/1610): Money\.ConversionRateOfSpec.INR.CHF.Rational.toRational.produces valid rationals (0 mutations)
169.98 s
[really-safe-money-gen] coverage (660/1610): Money\.ConversionRateOfSpec.INR.CHF.invert.produces valid rates (3 mutations)
169.98 s
[really-safe-money-gen] coverage (661/1610): Money\.ConversionRateOfSpec.INR.CHF.compose.produces valid rates (3 mutations)
169.98 s
[really-safe-money-gen] coverage (662/1610): Money\.ConversionRateOfSpec.INR.CHF.GenValid (ConversionRateOf INR CHF).genValid \:\: Gen (ConversionRateOf INR CHF).only generates valid '(ConversionRateOf INR CHF)'s (3 mutations)
169.98 s
[really-safe-money-gen] coverage (663/1610): Money\.ConversionRateOfSpec.INR.USD.GenValid (ConversionRateOf INR USD).genValid \:\: Gen (ConversionRateOf INR USD).only generates valid '(ConversionRateOf INR USD)'s (3 mutations)
169.98 s
[really-safe-money-gen] coverage (664/1610): Money\.ConversionRateOfSpec.INR.USD.Rational.toRational.produces valid rationals (0 mutations)
169.98 s
[really-safe-money-gen] coverage (665/1610): Money\.ConversionRateOfSpec.INR.USD.Rational.fromRational.produces valid conversion rates (6 mutations)
169.98 s
[really-safe-money-gen] coverage (666/1610): Money\.ConversionRateOfSpec.INR.USD.Rational.fromRational.roundtrips with toRational (6 mutations)
169.98 s
[really-safe-money-gen] coverage (667/1610): Money\.ConversionRateOfSpec.INR.USD.invert.produces valid rates (3 mutations)
169.99 s
[really-safe-money-gen] coverage (668/1610): Money\.ConversionRateOfSpec.INR.USD.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
169.99 s
[really-safe-money-gen] coverage (669/1610): Money\.ConversionRateOfSpec.INR.USD.Ratio.fromRatio.produces valid conversion rates (3 mutations)
169.99 s
[really-safe-money-gen] coverage (670/1610): Money\.ConversionRateOfSpec.INR.USD.Ratio.toRatio.produces valid ratios (0 mutations)
169.99 s
[really-safe-money-gen] coverage (671/1610): Money\.ConversionRateOfSpec.INR.USD.compose.produces valid rates (3 mutations)
170.27 s
[really-safe-money-gen] coverage (672/1610): Money\.ConversionRateOfSpec.INR.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
170.27 s
[really-safe-money-gen] coverage (673/1610): Money\.ConversionRateOfSpec.INR.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
170.55 s
[really-safe-money-gen] coverage (674/1610): Money\.ConversionRateOfSpec.INR.USD.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
170.55 s
[really-safe-money-gen] coverage (675/1610): Money\.ConversionRateOfSpec.INR.INR.Rational.toRational.produces valid rationals (0 mutations)
170.55 s
[really-safe-money-gen] coverage (676/1610): Money\.ConversionRateOfSpec.INR.INR.Rational.fromRational.roundtrips with toRational (6 mutations)
170.55 s
[really-safe-money-gen] coverage (677/1610): Money\.ConversionRateOfSpec.INR.INR.Rational.fromRational.produces valid conversion rates (6 mutations)
170.55 s
[really-safe-money-gen] coverage (678/1610): Money\.ConversionRateOfSpec.INR.INR.GenValid (ConversionRateOf INR INR).genValid \:\: Gen (ConversionRateOf INR INR).only generates valid '(ConversionRateOf INR INR)'s (3 mutations)
170.83 s
[really-safe-money-gen] coverage (679/1610): Money\.ConversionRateOfSpec.INR.INR.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
170.83 s
[really-safe-money-gen] coverage (680/1610): Money\.ConversionRateOfSpec.INR.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
171.11 s
[really-safe-money-gen] coverage (681/1610): Money\.ConversionRateOfSpec.INR.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
171.11 s
[really-safe-money-gen] coverage (682/1610): Money\.ConversionRateOfSpec.INR.INR.compose.produces valid rates (3 mutations)
171.11 s
[really-safe-money-gen] coverage (683/1610): Money\.ConversionRateOfSpec.INR.INR.invert.produces valid rates (3 mutations)
171.11 s
[really-safe-money-gen] coverage (684/1610): Money\.ConversionRateOfSpec.INR.INR.Ratio.fromRatio.produces valid conversion rates (3 mutations)
171.11 s
[really-safe-money-gen] coverage (685/1610): Money\.ConversionRateOfSpec.INR.INR.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
171.11 s
[really-safe-money-gen] coverage (686/1610): Money\.ConversionRateOfSpec.INR.INR.Ratio.toRatio.produces valid ratios (0 mutations)
171.12 s
[really-safe-money-gen] coverage (687/1610): Money\.ConversionRateOfSpec.ADA.USD.compose.produces valid rates (3 mutations)
171.12 s
[really-safe-money-gen] coverage (688/1610): Money\.ConversionRateOfSpec.ADA.USD.Ratio.toRatio.produces valid ratios (0 mutations)
171.12 s
[really-safe-money-gen] coverage (689/1610): Money\.ConversionRateOfSpec.ADA.USD.Ratio.fromRatio.produces valid conversion rates (3 mutations)
171.12 s
[really-safe-money-gen] coverage (690/1610): Money\.ConversionRateOfSpec.ADA.USD.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
171.12 s
[really-safe-money-gen] coverage (691/1610): Money\.ConversionRateOfSpec.ADA.USD.invert.produces valid rates (3 mutations)
171.12 s
[really-safe-money-gen] coverage (692/1610): Money\.ConversionRateOfSpec.ADA.USD.Rational.fromRational.produces valid conversion rates (6 mutations)
171.12 s
[really-safe-money-gen] coverage (693/1610): Money\.ConversionRateOfSpec.ADA.USD.Rational.fromRational.roundtrips with toRational (6 mutations)
171.12 s
[really-safe-money-gen] coverage (694/1610): Money\.ConversionRateOfSpec.ADA.USD.Rational.toRational.produces valid rationals (0 mutations)
171.12 s
[really-safe-money-gen] coverage (695/1610): Money\.ConversionRateOfSpec.ADA.USD.GenValid (ConversionRateOf ADA USD).genValid \:\: Gen (ConversionRateOf ADA USD).only generates valid '(ConversionRateOf ADA USD)'s (3 mutations)
171.40 s
[really-safe-money-gen] coverage (696/1610): Money\.ConversionRateOfSpec.ADA.USD.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
171.68 s
[really-safe-money-gen] coverage (697/1610): Money\.ConversionRateOfSpec.ADA.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
171.68 s
[really-safe-money-gen] coverage (698/1610): Money\.ConversionRateOfSpec.ADA.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
171.96 s
[really-safe-money-gen] coverage (699/1610): Money\.ConversionRateOfSpec.ADA.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
171.96 s
[really-safe-money-gen] coverage (700/1610): Money\.ConversionRateOfSpec.ADA.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
172.25 s
[really-safe-money-gen] coverage (701/1610): Money\.ConversionRateOfSpec.ADA.CHF.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
172.25 s
[really-safe-money-gen] coverage (702/1610): Money\.ConversionRateOfSpec.ADA.CHF.compose.produces valid rates (3 mutations)
172.25 s
[really-safe-money-gen] coverage (703/1610): Money\.ConversionRateOfSpec.ADA.CHF.Rational.toRational.produces valid rationals (0 mutations)
172.25 s
[really-safe-money-gen] coverage (704/1610): Money\.ConversionRateOfSpec.ADA.CHF.Rational.fromRational.roundtrips with toRational (6 mutations)
172.25 s
[really-safe-money-gen] coverage (705/1610): Money\.ConversionRateOfSpec.ADA.CHF.Rational.fromRational.produces valid conversion rates (6 mutations)
172.26 s
[really-safe-money-gen] coverage (706/1610): Money\.ConversionRateOfSpec.ADA.CHF.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
172.26 s
[really-safe-money-gen] coverage (707/1610): Money\.ConversionRateOfSpec.ADA.CHF.Ratio.fromRatio.produces valid conversion rates (3 mutations)
172.26 s
[really-safe-money-gen] coverage (708/1610): Money\.ConversionRateOfSpec.ADA.CHF.Ratio.toRatio.produces valid ratios (0 mutations)
172.26 s
[really-safe-money-gen] coverage (709/1610): Money\.ConversionRateOfSpec.ADA.CHF.GenValid (ConversionRateOf ADA CHF).genValid \:\: Gen (ConversionRateOf ADA CHF).only generates valid '(ConversionRateOf ADA CHF)'s (3 mutations)
172.26 s
[really-safe-money-gen] coverage (710/1610): Money\.ConversionRateOfSpec.ADA.CHF.invert.produces valid rates (3 mutations)
172.26 s
[really-safe-money-gen] coverage (711/1610): Money\.ConversionRateOfSpec.ADA.ADA.GenValid (ConversionRateOf ADA ADA).genValid \:\: Gen (ConversionRateOf ADA ADA).only generates valid '(ConversionRateOf ADA ADA)'s (3 mutations)
172.26 s
[really-safe-money-gen] coverage (712/1610): Money\.ConversionRateOfSpec.ADA.ADA.invert.produces valid rates (3 mutations)
172.26 s
[really-safe-money-gen] coverage (713/1610): Money\.ConversionRateOfSpec.ADA.ADA.Ratio.toRatio.produces valid ratios (0 mutations)
172.26 s
[really-safe-money-gen] coverage (714/1610): Money\.ConversionRateOfSpec.ADA.ADA.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
172.26 s
[really-safe-money-gen] coverage (715/1610): Money\.ConversionRateOfSpec.ADA.ADA.Ratio.fromRatio.produces valid conversion rates (3 mutations)
172.26 s
[really-safe-money-gen] coverage (716/1610): Money\.ConversionRateOfSpec.ADA.ADA.compose.produces valid rates (3 mutations)
172.26 s
[really-safe-money-gen] coverage (717/1610): Money\.ConversionRateOfSpec.ADA.ADA.Rational.toRational.produces valid rationals (0 mutations)
172.27 s
[really-safe-money-gen] coverage (718/1610): Money\.ConversionRateOfSpec.ADA.ADA.Rational.fromRational.roundtrips with toRational (6 mutations)
172.27 s
[really-safe-money-gen] coverage (719/1610): Money\.ConversionRateOfSpec.ADA.ADA.Rational.fromRational.produces valid conversion rates (6 mutations)
172.57 s
[really-safe-money-gen] coverage (720/1610): Money\.ConversionRateOfSpec.ADA.ADA.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
172.57 s
[really-safe-money-gen] coverage (721/1610): Money\.ConversionRateOfSpec.ADA.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
172.87 s
[really-safe-money-gen] coverage (722/1610): Money\.ConversionRateOfSpec.ADA.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
173.17 s
[really-safe-money-gen] coverage (723/1610): Money\.ConversionRateOfSpec.ADA.BTC.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
173.47 s
[really-safe-money-gen] coverage (724/1610): Money\.ConversionRateOfSpec.ADA.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
173.47 s
[really-safe-money-gen] coverage (725/1610): Money\.ConversionRateOfSpec.ADA.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
173.47 s
[really-safe-money-gen] coverage (726/1610): Money\.ConversionRateOfSpec.ADA.BTC.GenValid (ConversionRateOf ADA BTC).genValid \:\: Gen (ConversionRateOf ADA BTC).only generates valid '(ConversionRateOf ADA BTC)'s (3 mutations)
173.48 s
[really-safe-money-gen] coverage (727/1610): Money\.ConversionRateOfSpec.ADA.BTC.invert.produces valid rates (3 mutations)
173.48 s
[really-safe-money-gen] coverage (728/1610): Money\.ConversionRateOfSpec.ADA.BTC.Rational.toRational.produces valid rationals (0 mutations)
173.48 s
[really-safe-money-gen] coverage (729/1610): Money\.ConversionRateOfSpec.ADA.BTC.Rational.fromRational.roundtrips with toRational (6 mutations)
173.48 s
[really-safe-money-gen] coverage (730/1610): Money\.ConversionRateOfSpec.ADA.BTC.Rational.fromRational.produces valid conversion rates (6 mutations)
173.48 s
[really-safe-money-gen] coverage (731/1610): Money\.ConversionRateOfSpec.ADA.BTC.compose.produces valid rates (3 mutations)
173.48 s
[really-safe-money-gen] coverage (732/1610): Money\.ConversionRateOfSpec.ADA.BTC.Ratio.toRatio.produces valid ratios (0 mutations)
173.48 s
[really-safe-money-gen] coverage (733/1610): Money\.ConversionRateOfSpec.ADA.BTC.Ratio.fromRatio.produces valid conversion rates (3 mutations)
173.48 s
[really-safe-money-gen] coverage (734/1610): Money\.ConversionRateOfSpec.ADA.BTC.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
173.48 s
[really-safe-money-gen] coverage (735/1610): Money\.ConversionRateOfSpec.ADA.INR.GenValid (ConversionRateOf ADA INR).genValid \:\: Gen (ConversionRateOf ADA INR).only generates valid '(ConversionRateOf ADA INR)'s (3 mutations)
173.48 s
[really-safe-money-gen] coverage (736/1610): Money\.ConversionRateOfSpec.ADA.INR.Rational.fromRational.produces valid conversion rates (6 mutations)
173.49 s
[really-safe-money-gen] coverage (737/1610): Money\.ConversionRateOfSpec.ADA.INR.Rational.fromRational.roundtrips with toRational (6 mutations)
173.49 s
[really-safe-money-gen] coverage (738/1610): Money\.ConversionRateOfSpec.ADA.INR.Rational.toRational.produces valid rationals (0 mutations)
173.49 s
[really-safe-money-gen] coverage (739/1610): Money\.ConversionRateOfSpec.ADA.INR.Ratio.toRatio.produces valid ratios (0 mutations)
173.49 s
[really-safe-money-gen] coverage (740/1610): Money\.ConversionRateOfSpec.ADA.INR.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
173.49 s
[really-safe-money-gen] coverage (741/1610): Money\.ConversionRateOfSpec.ADA.INR.Ratio.fromRatio.produces valid conversion rates (3 mutations)
173.80 s
[really-safe-money-gen] coverage (742/1610): Money\.ConversionRateOfSpec.ADA.INR.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
173.81 s
[really-safe-money-gen] coverage (743/1610): Money\.ConversionRateOfSpec.ADA.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
174.12 s
[really-safe-money-gen] coverage (744/1610): Money\.ConversionRateOfSpec.ADA.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
174.12 s
[really-safe-money-gen] coverage (745/1610): Money\.ConversionRateOfSpec.ADA.INR.compose.produces valid rates (3 mutations)
174.12 s
[really-safe-money-gen] coverage (746/1610): Money\.ConversionRateOfSpec.ADA.INR.invert.produces valid rates (3 mutations)
174.12 s
[really-safe-money-gen] coverage (747/1610): Money\.ConversionRateOfSpec.CHF.BTC.Rational.toRational.produces valid rationals (0 mutations)
174.12 s
[really-safe-money-gen] coverage (748/1610): Money\.ConversionRateOfSpec.CHF.BTC.Rational.fromRational.roundtrips with toRational (6 mutations)
174.12 s
[really-safe-money-gen] coverage (749/1610): Money\.ConversionRateOfSpec.CHF.BTC.Rational.fromRational.produces valid conversion rates (6 mutations)
174.46 s
[really-safe-money-gen] coverage (750/1610): Money\.ConversionRateOfSpec.CHF.BTC.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
174.55 s
[really-safe-money-gen] coverage (751/1610): Money\.ConversionRateOfSpec.CHF.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
174.77 s
[really-safe-money-gen] coverage (752/1610): Money\.ConversionRateOfSpec.CHF.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
174.78 s
[really-safe-money-gen] coverage (753/1610): Money\.ConversionRateOfSpec.CHF.BTC.compose.produces valid rates (3 mutations)
174.78 s
[really-safe-money-gen] coverage (754/1610): Money\.ConversionRateOfSpec.CHF.BTC.Ratio.fromRatio.produces valid conversion rates (3 mutations)
174.78 s
[really-safe-money-gen] coverage (755/1610): Money\.ConversionRateOfSpec.CHF.BTC.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
174.78 s
[really-safe-money-gen] coverage (756/1610): Money\.ConversionRateOfSpec.CHF.BTC.Ratio.toRatio.produces valid ratios (0 mutations)
174.78 s
[really-safe-money-gen] coverage (757/1610): Money\.ConversionRateOfSpec.CHF.BTC.invert.produces valid rates (3 mutations)
174.78 s
[really-safe-money-gen] coverage (758/1610): Money\.ConversionRateOfSpec.CHF.BTC.GenValid (ConversionRateOf CHF BTC).genValid \:\: Gen (ConversionRateOf CHF BTC).only generates valid '(ConversionRateOf CHF BTC)'s (3 mutations)
174.78 s
[really-safe-money-gen] coverage (759/1610): Money\.ConversionRateOfSpec.CHF.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
175.10 s
[really-safe-money-gen] coverage (760/1610): Money\.ConversionRateOfSpec.CHF.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
175.42 s
[really-safe-money-gen] coverage (761/1610): Money\.ConversionRateOfSpec.CHF.ADA.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
175.42 s
[really-safe-money-gen] coverage (762/1610): Money\.ConversionRateOfSpec.CHF.ADA.invert.produces valid rates (3 mutations)
175.42 s
[really-safe-money-gen] coverage (763/1610): Money\.ConversionRateOfSpec.CHF.ADA.Ratio.toRatio.produces valid ratios (0 mutations)
175.43 s
[really-safe-money-gen] coverage (764/1610): Money\.ConversionRateOfSpec.CHF.ADA.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
175.43 s
[really-safe-money-gen] coverage (765/1610): Money\.ConversionRateOfSpec.CHF.ADA.Ratio.fromRatio.produces valid conversion rates (3 mutations)
175.43 s
[really-safe-money-gen] coverage (766/1610): Money\.ConversionRateOfSpec.CHF.ADA.compose.produces valid rates (3 mutations)
175.43 s
[really-safe-money-gen] coverage (767/1610): Money\.ConversionRateOfSpec.CHF.ADA.GenValid (ConversionRateOf CHF ADA).genValid \:\: Gen (ConversionRateOf CHF ADA).only generates valid '(ConversionRateOf CHF ADA)'s (3 mutations)
175.43 s
[really-safe-money-gen] coverage (768/1610): Money\.ConversionRateOfSpec.CHF.ADA.Rational.toRational.produces valid rationals (0 mutations)
175.43 s
[really-safe-money-gen] coverage (769/1610): Money\.ConversionRateOfSpec.CHF.ADA.Rational.fromRational.roundtrips with toRational (6 mutations)
175.43 s
[really-safe-money-gen] coverage (770/1610): Money\.ConversionRateOfSpec.CHF.ADA.Rational.fromRational.produces valid conversion rates (6 mutations)
175.43 s
[really-safe-money-gen] coverage (771/1610): Money\.ConversionRateOfSpec.CHF.USD.invert.produces valid rates (3 mutations)
175.43 s
[really-safe-money-gen] coverage (772/1610): Money\.ConversionRateOfSpec.CHF.USD.GenValid (ConversionRateOf CHF USD).genValid \:\: Gen (ConversionRateOf CHF USD).only generates valid '(ConversionRateOf CHF USD)'s (3 mutations)
175.76 s
[really-safe-money-gen] coverage (773/1610): Money\.ConversionRateOfSpec.CHF.USD.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
176.09 s
[really-safe-money-gen] coverage (774/1610): Money\.ConversionRateOfSpec.CHF.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
176.09 s
[really-safe-money-gen] coverage (775/1610): Money\.ConversionRateOfSpec.CHF.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
176.09 s
[really-safe-money-gen] coverage (776/1610): Money\.ConversionRateOfSpec.CHF.USD.compose.produces valid rates (3 mutations)
176.09 s
[really-safe-money-gen] coverage (777/1610): Money\.ConversionRateOfSpec.CHF.USD.Rational.fromRational.produces valid conversion rates (6 mutations)
176.09 s
[really-safe-money-gen] coverage (778/1610): Money\.ConversionRateOfSpec.CHF.USD.Rational.fromRational.roundtrips with toRational (6 mutations)
176.09 s
[really-safe-money-gen] coverage (779/1610): Money\.ConversionRateOfSpec.CHF.USD.Rational.toRational.produces valid rationals (0 mutations)
176.09 s
[really-safe-money-gen] coverage (780/1610): Money\.ConversionRateOfSpec.CHF.USD.Ratio.fromRatio.produces valid conversion rates (3 mutations)
176.10 s
[really-safe-money-gen] coverage (781/1610): Money\.ConversionRateOfSpec.CHF.USD.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
176.10 s
[really-safe-money-gen] coverage (782/1610): Money\.ConversionRateOfSpec.CHF.USD.Ratio.toRatio.produces valid ratios (0 mutations)
176.10 s
[really-safe-money-gen] coverage (783/1610): Money\.ConversionRateOfSpec.CHF.CHF.GenValid (ConversionRateOf CHF CHF).genValid \:\: Gen (ConversionRateOf CHF CHF).only generates valid '(ConversionRateOf CHF CHF)'s (3 mutations)
176.44 s
[really-safe-money-gen] coverage (784/1610): Money\.ConversionRateOfSpec.CHF.CHF.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
176.77 s
[really-safe-money-gen] coverage (785/1610): Money\.ConversionRateOfSpec.CHF.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
176.77 s
[really-safe-money-gen] coverage (786/1610): Money\.ConversionRateOfSpec.CHF.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
176.77 s
[really-safe-money-gen] coverage (787/1610): Money\.ConversionRateOfSpec.CHF.CHF.Rational.toRational.produces valid rationals (0 mutations)
176.78 s
[really-safe-money-gen] coverage (788/1610): Money\.ConversionRateOfSpec.CHF.CHF.Rational.fromRational.produces valid conversion rates (6 mutations)
176.78 s
[really-safe-money-gen] coverage (789/1610): Money\.ConversionRateOfSpec.CHF.CHF.Rational.fromRational.roundtrips with toRational (6 mutations)
176.78 s
[really-safe-money-gen] coverage (790/1610): Money\.ConversionRateOfSpec.CHF.CHF.invert.produces valid rates (3 mutations)
176.78 s
[really-safe-money-gen] coverage (791/1610): Money\.ConversionRateOfSpec.CHF.CHF.Ratio.toRatio.produces valid ratios (0 mutations)
176.78 s
[really-safe-money-gen] coverage (792/1610): Money\.ConversionRateOfSpec.CHF.CHF.Ratio.fromRatio.produces valid conversion rates (3 mutations)
176.78 s
[really-safe-money-gen] coverage (793/1610): Money\.ConversionRateOfSpec.CHF.CHF.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
176.78 s
[really-safe-money-gen] coverage (794/1610): Money\.ConversionRateOfSpec.CHF.CHF.compose.produces valid rates (3 mutations)
176.78 s
[really-safe-money-gen] coverage (795/1610): Money\.ConversionRateOfSpec.CHF.INR.Ratio.toRatio.produces valid ratios (0 mutations)
176.78 s
[really-safe-money-gen] coverage (796/1610): Money\.ConversionRateOfSpec.CHF.INR.Ratio.fromRatio.produces valid conversion rates (3 mutations)
176.79 s
[really-safe-money-gen] coverage (797/1610): Money\.ConversionRateOfSpec.CHF.INR.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
176.79 s
[really-safe-money-gen] coverage (798/1610): Money\.ConversionRateOfSpec.CHF.INR.compose.produces valid rates (3 mutations)
176.79 s
[really-safe-money-gen] coverage (799/1610): Money\.ConversionRateOfSpec.CHF.INR.invert.produces valid rates (3 mutations)
177.14 s
[really-safe-money-gen] coverage (800/1610): Money\.ConversionRateOfSpec.CHF.INR.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
177.14 s
[really-safe-money-gen] coverage (801/1610): Money\.ConversionRateOfSpec.CHF.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
177.50 s
[really-safe-money-gen] coverage (802/1610): Money\.ConversionRateOfSpec.CHF.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
177.50 s
[really-safe-money-gen] coverage (803/1610): Money\.ConversionRateOfSpec.CHF.INR.GenValid (ConversionRateOf CHF INR).genValid \:\: Gen (ConversionRateOf CHF INR).only generates valid '(ConversionRateOf CHF INR)'s (3 mutations)
177.50 s
[really-safe-money-gen] coverage (804/1610): Money\.ConversionRateOfSpec.CHF.INR.Rational.fromRational.roundtrips with toRational (6 mutations)
177.50 s
[really-safe-money-gen] coverage (805/1610): Money\.ConversionRateOfSpec.CHF.INR.Rational.fromRational.produces valid conversion rates (6 mutations)
177.50 s
[really-safe-money-gen] coverage (806/1610): Money\.ConversionRateOfSpec.CHF.INR.Rational.toRational.produces valid rationals (0 mutations)
177.50 s
[really-safe-money-gen] coverage (807/1610): Money\.ConversionRateOfSpec.USD.CHF.GenValid (ConversionRateOf USD CHF).genValid \:\: Gen (ConversionRateOf USD CHF).only generates valid '(ConversionRateOf USD CHF)'s (3 mutations)
177.50 s
[really-safe-money-gen] coverage (808/1610): Money\.ConversionRateOfSpec.USD.CHF.invert.produces valid rates (3 mutations)
177.86 s
[really-safe-money-gen] coverage (809/1610): Money\.ConversionRateOfSpec.USD.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
177.86 s
[really-safe-money-gen] coverage (810/1610): Money\.ConversionRateOfSpec.USD.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
178.22 s
[really-safe-money-gen] coverage (811/1610): Money\.ConversionRateOfSpec.USD.CHF.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
178.23 s
[really-safe-money-gen] coverage (812/1610): Money\.ConversionRateOfSpec.USD.CHF.Rational.toRational.produces valid rationals (0 mutations)
178.23 s
[really-safe-money-gen] coverage (813/1610): Money\.ConversionRateOfSpec.USD.CHF.Rational.fromRational.roundtrips with toRational (6 mutations)
178.23 s
[really-safe-money-gen] coverage (814/1610): Money\.ConversionRateOfSpec.USD.CHF.Rational.fromRational.produces valid conversion rates (6 mutations)
178.23 s
[really-safe-money-gen] coverage (815/1610): Money\.ConversionRateOfSpec.USD.CHF.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
178.23 s
[really-safe-money-gen] coverage (816/1610): Money\.ConversionRateOfSpec.USD.CHF.Ratio.fromRatio.produces valid conversion rates (3 mutations)
178.23 s
[really-safe-money-gen] coverage (817/1610): Money\.ConversionRateOfSpec.USD.CHF.Ratio.toRatio.produces valid ratios (0 mutations)
178.23 s
[really-safe-money-gen] coverage (818/1610): Money\.ConversionRateOfSpec.USD.CHF.compose.produces valid rates (3 mutations)
178.23 s
[really-safe-money-gen] coverage (819/1610): Money\.ConversionRateOfSpec.USD.USD.Ratio.toRatio.produces valid ratios (0 mutations)
178.23 s
[really-safe-money-gen] coverage (820/1610): Money\.ConversionRateOfSpec.USD.USD.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
178.24 s
[really-safe-money-gen] coverage (821/1610): Money\.ConversionRateOfSpec.USD.USD.Ratio.fromRatio.produces valid conversion rates (3 mutations)
178.60 s
[really-safe-money-gen] coverage (822/1610): Money\.ConversionRateOfSpec.USD.USD.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
178.60 s
[really-safe-money-gen] coverage (823/1610): Money\.ConversionRateOfSpec.USD.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
178.96 s
[really-safe-money-gen] coverage (824/1610): Money\.ConversionRateOfSpec.USD.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
178.96 s
[really-safe-money-gen] coverage (825/1610): Money\.ConversionRateOfSpec.USD.USD.invert.produces valid rates (3 mutations)
178.96 s
[really-safe-money-gen] coverage (826/1610): Money\.ConversionRateOfSpec.USD.USD.Rational.toRational.produces valid rationals (0 mutations)
178.97 s
[really-safe-money-gen] coverage (827/1610): Money\.ConversionRateOfSpec.USD.USD.Rational.fromRational.roundtrips with toRational (6 mutations)
178.97 s
[really-safe-money-gen] coverage (828/1610): Money\.ConversionRateOfSpec.USD.USD.Rational.fromRational.produces valid conversion rates (6 mutations)
178.97 s
[really-safe-money-gen] coverage (829/1610): Money\.ConversionRateOfSpec.USD.USD.compose.produces valid rates (3 mutations)
178.97 s
[really-safe-money-gen] coverage (830/1610): Money\.ConversionRateOfSpec.USD.USD.GenValid (ConversionRateOf USD USD).genValid \:\: Gen (ConversionRateOf USD USD).only generates valid '(ConversionRateOf USD USD)'s (3 mutations)
179.34 s
[really-safe-money-gen] coverage (831/1610): Money\.ConversionRateOfSpec.USD.INR.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
179.34 s
[really-safe-money-gen] coverage (832/1610): Money\.ConversionRateOfSpec.USD.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
179.70 s
[really-safe-money-gen] coverage (833/1610): Money\.ConversionRateOfSpec.USD.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
179.74 s
[really-safe-money-gen] coverage (834/1610): Money\.ConversionRateOfSpec.USD.INR.compose.produces valid rates (3 mutations)
179.74 s
[really-safe-money-gen] coverage (835/1610): Money\.ConversionRateOfSpec.USD.INR.Rational.fromRational.roundtrips with toRational (6 mutations)
179.74 s
[really-safe-money-gen] coverage (836/1610): Money\.ConversionRateOfSpec.USD.INR.Rational.fromRational.produces valid conversion rates (6 mutations)
179.74 s
[really-safe-money-gen] coverage (837/1610): Money\.ConversionRateOfSpec.USD.INR.Rational.toRational.produces valid rationals (0 mutations)
179.74 s
[really-safe-money-gen] coverage (838/1610): Money\.ConversionRateOfSpec.USD.INR.Ratio.toRatio.produces valid ratios (0 mutations)
179.74 s
[really-safe-money-gen] coverage (839/1610): Money\.ConversionRateOfSpec.USD.INR.Ratio.fromRatio.produces valid conversion rates (3 mutations)
179.74 s
[really-safe-money-gen] coverage (840/1610): Money\.ConversionRateOfSpec.USD.INR.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
179.74 s
[really-safe-money-gen] coverage (841/1610): Money\.ConversionRateOfSpec.USD.INR.invert.produces valid rates (3 mutations)
179.74 s
[really-safe-money-gen] coverage (842/1610): Money\.ConversionRateOfSpec.USD.INR.GenValid (ConversionRateOf USD INR).genValid \:\: Gen (ConversionRateOf USD INR).only generates valid '(ConversionRateOf USD INR)'s (3 mutations)
179.74 s
[really-safe-money-gen] coverage (843/1610): Money\.ConversionRateOfSpec.USD.BTC.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
179.74 s
[really-safe-money-gen] coverage (844/1610): Money\.ConversionRateOfSpec.USD.BTC.Ratio.fromRatio.produces valid conversion rates (3 mutations)
179.74 s
[really-safe-money-gen] coverage (845/1610): Money\.ConversionRateOfSpec.USD.BTC.Ratio.toRatio.produces valid ratios (0 mutations)
179.74 s
[really-safe-money-gen] coverage (846/1610): Money\.ConversionRateOfSpec.USD.BTC.compose.produces valid rates (3 mutations)
179.74 s
[really-safe-money-gen] coverage (847/1610): Money\.ConversionRateOfSpec.USD.BTC.Rational.toRational.produces valid rationals (0 mutations)
179.74 s
[really-safe-money-gen] coverage (848/1610): Money\.ConversionRateOfSpec.USD.BTC.Rational.fromRational.produces valid conversion rates (6 mutations)
179.74 s
[really-safe-money-gen] coverage (849/1610): Money\.ConversionRateOfSpec.USD.BTC.Rational.fromRational.roundtrips with toRational (6 mutations)
179.74 s
[really-safe-money-gen] coverage (850/1610): Money\.ConversionRateOfSpec.USD.BTC.GenValid (ConversionRateOf USD BTC).genValid \:\: Gen (ConversionRateOf USD BTC).only generates valid '(ConversionRateOf USD BTC)'s (3 mutations)
179.74 s
[really-safe-money-gen] coverage (851/1610): Money\.ConversionRateOfSpec.USD.BTC.invert.produces valid rates (3 mutations)
180.09 s
[really-safe-money-gen] coverage (852/1610): Money\.ConversionRateOfSpec.USD.BTC.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
180.47 s
[really-safe-money-gen] coverage (853/1610): Money\.ConversionRateOfSpec.USD.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
180.47 s
[really-safe-money-gen] coverage (854/1610): Money\.ConversionRateOfSpec.USD.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
180.48 s
[really-safe-money-gen] coverage (855/1610): Money\.ConversionRateOfSpec.USD.ADA.GenValid (ConversionRateOf USD ADA).genValid \:\: Gen (ConversionRateOf USD ADA).only generates valid '(ConversionRateOf USD ADA)'s (3 mutations)
180.48 s
[really-safe-money-gen] coverage (856/1610): Money\.ConversionRateOfSpec.USD.ADA.compose.produces valid rates (3 mutations)
180.87 s
[really-safe-money-gen] coverage (857/1610): Money\.ConversionRateOfSpec.USD.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
180.87 s
[really-safe-money-gen] coverage (858/1610): Money\.ConversionRateOfSpec.USD.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
181.25 s
[really-safe-money-gen] coverage (859/1610): Money\.ConversionRateOfSpec.USD.ADA.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
181.25 s
[really-safe-money-gen] coverage (860/1610): Money\.ConversionRateOfSpec.USD.ADA.invert.produces valid rates (3 mutations)
181.25 s
[really-safe-money-gen] coverage (861/1610): Money\.ConversionRateOfSpec.USD.ADA.Ratio.toRatio.produces valid ratios (0 mutations)
181.25 s
[really-safe-money-gen] coverage (862/1610): Money\.ConversionRateOfSpec.USD.ADA.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
181.25 s
[really-safe-money-gen] coverage (863/1610): Money\.ConversionRateOfSpec.USD.ADA.Ratio.fromRatio.produces valid conversion rates (3 mutations)
181.26 s
[really-safe-money-gen] coverage (864/1610): Money\.ConversionRateOfSpec.USD.ADA.Rational.fromRational.produces valid conversion rates (6 mutations)
181.26 s
[really-safe-money-gen] coverage (865/1610): Money\.ConversionRateOfSpec.USD.ADA.Rational.fromRational.roundtrips with toRational (6 mutations)
181.26 s
[really-safe-money-gen] coverage (866/1610): Money\.ConversionRateOfSpec.USD.ADA.Rational.toRational.produces valid rationals (0 mutations)
181.26 s
[really-safe-money-gen] coverage (867/1610): Money\.ConversionRateOfSpec.BTC.ADA.Ratio.toRatio.produces valid ratios (0 mutations)
181.26 s
[really-safe-money-gen] coverage (868/1610): Money\.ConversionRateOfSpec.BTC.ADA.Ratio.fromRatio.produces valid conversion rates (3 mutations)
181.26 s
[really-safe-money-gen] coverage (869/1610): Money\.ConversionRateOfSpec.BTC.ADA.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
181.65 s
[really-safe-money-gen] coverage (870/1610): Money\.ConversionRateOfSpec.BTC.ADA.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
181.65 s
[really-safe-money-gen] coverage (871/1610): Money\.ConversionRateOfSpec.BTC.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
182.04 s
[really-safe-money-gen] coverage (872/1610): Money\.ConversionRateOfSpec.BTC.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
182.05 s
[really-safe-money-gen] coverage (873/1610): Money\.ConversionRateOfSpec.BTC.ADA.compose.produces valid rates (3 mutations)
182.05 s
[really-safe-money-gen] coverage (874/1610): Money\.ConversionRateOfSpec.BTC.ADA.invert.produces valid rates (3 mutations)
182.05 s
[really-safe-money-gen] coverage (875/1610): Money\.ConversionRateOfSpec.BTC.ADA.GenValid (ConversionRateOf BTC ADA).genValid \:\: Gen (ConversionRateOf BTC ADA).only generates valid '(ConversionRateOf BTC ADA)'s (3 mutations)
182.05 s
[really-safe-money-gen] coverage (876/1610): Money\.ConversionRateOfSpec.BTC.ADA.Rational.fromRational.produces valid conversion rates (6 mutations)
182.05 s
[really-safe-money-gen] coverage (877/1610): Money\.ConversionRateOfSpec.BTC.ADA.Rational.fromRational.roundtrips with toRational (6 mutations)
182.05 s
[really-safe-money-gen] coverage (878/1610): Money\.ConversionRateOfSpec.BTC.ADA.Rational.toRational.produces valid rationals (0 mutations)
182.05 s
[really-safe-money-gen] coverage (879/1610): Money\.ConversionRateOfSpec.BTC.USD.Rational.toRational.produces valid rationals (0 mutations)
182.05 s
[really-safe-money-gen] coverage (880/1610): Money\.ConversionRateOfSpec.BTC.USD.Rational.fromRational.roundtrips with toRational (6 mutations)
182.05 s
[really-safe-money-gen] coverage (881/1610): Money\.ConversionRateOfSpec.BTC.USD.Rational.fromRational.produces valid conversion rates (6 mutations)
182.45 s
[really-safe-money-gen] coverage (882/1610): Money\.ConversionRateOfSpec.BTC.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
182.45 s
[really-safe-money-gen] coverage (883/1610): Money\.ConversionRateOfSpec.BTC.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
182.85 s
[really-safe-money-gen] coverage (884/1610): Money\.ConversionRateOfSpec.BTC.USD.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
182.85 s
[really-safe-money-gen] coverage (885/1610): Money\.ConversionRateOfSpec.BTC.USD.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
182.85 s
[really-safe-money-gen] coverage (886/1610): Money\.ConversionRateOfSpec.BTC.USD.Ratio.fromRatio.produces valid conversion rates (3 mutations)
182.85 s
[really-safe-money-gen] coverage (887/1610): Money\.ConversionRateOfSpec.BTC.USD.Ratio.toRatio.produces valid ratios (0 mutations)
182.85 s
[really-safe-money-gen] coverage (888/1610): Money\.ConversionRateOfSpec.BTC.USD.compose.produces valid rates (3 mutations)
182.85 s
[really-safe-money-gen] coverage (889/1610): Money\.ConversionRateOfSpec.BTC.USD.invert.produces valid rates (3 mutations)
182.86 s
[really-safe-money-gen] coverage (890/1610): Money\.ConversionRateOfSpec.BTC.USD.GenValid (ConversionRateOf BTC USD).genValid \:\: Gen (ConversionRateOf BTC USD).only generates valid '(ConversionRateOf BTC USD)'s (3 mutations)
182.86 s
[really-safe-money-gen] coverage (891/1610): Money\.ConversionRateOfSpec.BTC.INR.compose.produces valid rates (3 mutations)
182.86 s
[really-safe-money-gen] coverage (892/1610): Money\.ConversionRateOfSpec.BTC.INR.GenValid (ConversionRateOf BTC INR).genValid \:\: Gen (ConversionRateOf BTC INR).only generates valid '(ConversionRateOf BTC INR)'s (3 mutations)
183.27 s
[really-safe-money-gen] coverage (893/1610): Money\.ConversionRateOfSpec.BTC.INR.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
183.27 s
[really-safe-money-gen] coverage (894/1610): Money\.ConversionRateOfSpec.BTC.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
183.68 s
[really-safe-money-gen] coverage (895/1610): Money\.ConversionRateOfSpec.BTC.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
183.68 s
[really-safe-money-gen] coverage (896/1610): Money\.ConversionRateOfSpec.BTC.INR.invert.produces valid rates (3 mutations)
183.69 s
[really-safe-money-gen] coverage (897/1610): Money\.ConversionRateOfSpec.BTC.INR.Rational.fromRational.roundtrips with toRational (6 mutations)
183.69 s
[really-safe-money-gen] coverage (898/1610): Money\.ConversionRateOfSpec.BTC.INR.Rational.fromRational.produces valid conversion rates (6 mutations)
183.69 s
[really-safe-money-gen] coverage (899/1610): Money\.ConversionRateOfSpec.BTC.INR.Rational.toRational.produces valid rationals (0 mutations)
183.69 s
[really-safe-money-gen] coverage (900/1610): Money\.ConversionRateOfSpec.BTC.INR.Ratio.fromRatio.produces valid conversion rates (3 mutations)
183.69 s
[really-safe-money-gen] coverage (901/1610): Money\.ConversionRateOfSpec.BTC.INR.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
183.69 s
[really-safe-money-gen] coverage (902/1610): Money\.ConversionRateOfSpec.BTC.INR.Ratio.toRatio.produces valid ratios (0 mutations)
183.69 s
[really-safe-money-gen] coverage (903/1610): Money\.ConversionRateOfSpec.BTC.CHF.compose.produces valid rates (3 mutations)
183.69 s
[really-safe-money-gen] coverage (904/1610): Money\.ConversionRateOfSpec.BTC.CHF.GenValid (ConversionRateOf BTC CHF).genValid \:\: Gen (ConversionRateOf BTC CHF).only generates valid '(ConversionRateOf BTC CHF)'s (3 mutations)
184.10 s
[really-safe-money-gen] coverage (905/1610): Money\.ConversionRateOfSpec.BTC.CHF.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
184.11 s
[really-safe-money-gen] coverage (906/1610): Money\.ConversionRateOfSpec.BTC.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
184.52 s
[really-safe-money-gen] coverage (907/1610): Money\.ConversionRateOfSpec.BTC.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
184.52 s
[really-safe-money-gen] coverage (908/1610): Money\.ConversionRateOfSpec.BTC.CHF.invert.produces valid rates (3 mutations)
184.52 s
[really-safe-money-gen] coverage (909/1610): Money\.ConversionRateOfSpec.BTC.CHF.Ratio.toRatio.produces valid ratios (0 mutations)
184.52 s
[really-safe-money-gen] coverage (910/1610): Money\.ConversionRateOfSpec.BTC.CHF.Ratio.fromRatio.produces valid conversion rates (3 mutations)
184.52 s
[really-safe-money-gen] coverage (911/1610): Money\.ConversionRateOfSpec.BTC.CHF.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
184.52 s
[really-safe-money-gen] coverage (912/1610): Money\.ConversionRateOfSpec.BTC.CHF.Rational.fromRational.roundtrips with toRational (6 mutations)
184.53 s
[really-safe-money-gen] coverage (913/1610): Money\.ConversionRateOfSpec.BTC.CHF.Rational.fromRational.produces valid conversion rates (6 mutations)
184.53 s
[really-safe-money-gen] coverage (914/1610): Money\.ConversionRateOfSpec.BTC.CHF.Rational.toRational.produces valid rationals (0 mutations)
184.53 s
[really-safe-money-gen] coverage (915/1610): Money\.ConversionRateOfSpec.BTC.BTC.invert.produces valid rates (3 mutations)
184.53 s
[really-safe-money-gen] coverage (916/1610): Money\.ConversionRateOfSpec.BTC.BTC.Rational.toRational.produces valid rationals (0 mutations)
184.53 s
[really-safe-money-gen] coverage (917/1610): Money\.ConversionRateOfSpec.BTC.BTC.Rational.fromRational.produces valid conversion rates (6 mutations)
184.53 s
[really-safe-money-gen] coverage (918/1610): Money\.ConversionRateOfSpec.BTC.BTC.Rational.fromRational.roundtrips with toRational (6 mutations)
184.53 s
[really-safe-money-gen] coverage (919/1610): Money\.ConversionRateOfSpec.BTC.BTC.compose.produces valid rates (3 mutations)
184.53 s
[really-safe-money-gen] coverage (920/1610): Money\.ConversionRateOfSpec.BTC.BTC.GenValid (ConversionRateOf BTC BTC).genValid \:\: Gen (ConversionRateOf BTC BTC).only generates valid '(ConversionRateOf BTC BTC)'s (3 mutations)
184.95 s
[really-safe-money-gen] coverage (921/1610): Money\.ConversionRateOfSpec.BTC.BTC.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
185.00 s
[really-safe-money-gen] coverage (922/1610): Money\.ConversionRateOfSpec.BTC.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates (6 mutations)
185.37 s
[really-safe-money-gen] coverage (923/1610): Money\.ConversionRateOfSpec.BTC.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral (16 mutations)
185.38 s
[really-safe-money-gen] coverage (924/1610): Money\.ConversionRateOfSpec.BTC.BTC.Ratio.fromRatio.roundtrips with toRatio (3 mutations)
185.38 s
[really-safe-money-gen] coverage (925/1610): Money\.ConversionRateOfSpec.BTC.BTC.Ratio.fromRatio.produces valid conversion rates (3 mutations)
185.38 s
[really-safe-money-gen] coverage (926/1610): Money\.ConversionRateOfSpec.BTC.BTC.Ratio.toRatio.produces valid ratios (0 mutations)
185.45 s
[really-safe-money-gen] coverage (927/1610): Money\.QuantisationFactorSpec.fromWord32.produces valid quantisation factors (3 mutations)
185.45 s
[really-safe-money-gen] coverage (928/1610): Money\.QuantisationFactorSpec.digits.works on 10 (0 mutations)
185.45 s
[really-safe-money-gen] coverage (929/1610): Money\.QuantisationFactorSpec.digits.works on 20 (0 mutations)
185.45 s
[really-safe-money-gen] coverage (930/1610): Money\.QuantisationFactorSpec.digits.works on 100 (0 mutations)
185.46 s
[really-safe-money-gen] coverage (931/1610): Money\.QuantisationFactorSpec.digits.produces valid numbers of digits (0 mutations)
185.46 s
[really-safe-money-gen] coverage (932/1610): Money\.QuantisationFactorSpec.digits.works on 1 (0 mutations)
185.62 s
[really-safe-money-gen] coverage (933/1610): Money\.QuantisationFactorSpec.DecimalLiteral.fromDecimalLiteral.fails to render a non-1 integer (14 mutations)
185.76 s
[really-safe-money-gen] coverage (934/1610): Money\.QuantisationFactorSpec.DecimalLiteral.fromDecimalLiteral.fails to render negative fractionals (6 mutations)
185.94 s
[really-safe-money-gen] coverage (935/1610): Money\.QuantisationFactorSpec.DecimalLiteral.fromDecimalLiteral.produces valid factors (14 mutations)
186.02 s
[really-safe-money-gen] coverage (936/1610): Money\.QuantisationFactorSpec.DecimalLiteral.fromDecimalLiteral.fails to render a 0 (3 mutations)
244.23 s
[really-safe-money-gen] coverage (937/1610): Money\.QuantisationFactorSpec.DecimalLiteral.toDecimalLiteral.roundtrips with fromDecimalLiteral (22 mutations)
304.29 s
[really-safe-money-gen] coverage (938/1610): Money\.QuantisationFactorSpec.DecimalLiteral.toDecimalLiteral.produces valid literals (10 mutations)
304.31 s
[really-safe-money-gen] coverage (939/1610): Money\.QuantisationFactorSpec.DecimalLiteral.can turn DecimalLiteral Nothing 1 1 into quantisation factor 10 (11 mutations)
304.31 s
[really-safe-money-gen] coverage (940/1610): Money\.QuantisationFactorSpec.DecimalLiteral.can turn quantisation factor 100 into DecimalLiteral Nothing 1 2 (11 mutations)
304.31 s
[really-safe-money-gen] coverage (941/1610): Money\.QuantisationFactorSpec.DecimalLiteral.can turn quantisation factor 50 into DecimalLiteral Nothing 2 2 (11 mutations)
304.31 s
[really-safe-money-gen] coverage (942/1610): Money\.QuantisationFactorSpec.DecimalLiteral.can turn DecimalLiteral Nothing 1 3 into quantisation factor 1000 (11 mutations)
304.31 s
[really-safe-money-gen] coverage (943/1610): Money\.QuantisationFactorSpec.DecimalLiteral.can turn quantisation factor 10 into DecimalLiteral Nothing 1 1 (11 mutations)
304.31 s
[really-safe-money-gen] coverage (944/1610): Money\.QuantisationFactorSpec.DecimalLiteral.can turn DecimalLiteral Nothing 2 2 into quantisation factor 50 (11 mutations)
304.31 s
[really-safe-money-gen] coverage (945/1610): Money\.QuantisationFactorSpec.DecimalLiteral.can turn DecimalLiteral Nothing 1 0 into quantisation factor 1 (11 mutations)
304.31 s
[really-safe-money-gen] coverage (946/1610): Money\.QuantisationFactorSpec.DecimalLiteral.can turn quantisation factor 20 into DecimalLiteral Nothing 5 2 (11 mutations)
304.31 s
[really-safe-money-gen] coverage (947/1610): Money\.QuantisationFactorSpec.DecimalLiteral.can turn DecimalLiteral Nothing 5 2 into quantisation factor 20 (11 mutations)
304.31 s
[really-safe-money-gen] coverage (948/1610): Money\.QuantisationFactorSpec.DecimalLiteral.can turn quantisation factor 1 into DecimalLiteral Nothing 1 0 (11 mutations)
304.31 s
[really-safe-money-gen] coverage (949/1610): Money\.QuantisationFactorSpec.DecimalLiteral.can turn DecimalLiteral Nothing 1 2 into quantisation factor 100 (11 mutations)
304.31 s
[really-safe-money-gen] coverage (950/1610): Money\.QuantisationFactorSpec.DecimalLiteral.can turn quantisation factor 1000 into DecimalLiteral Nothing 1 3 (11 mutations)
304.40 s
[really-safe-money-gen] coverage (951/1610): Money\.QuantisationFactorSpec.GenValid QuantisationFactor.genValid \:\: Gen QuantisationFactor.only generates valid 'QuantisationFactor's (3 mutations)
304.51 s
[really-safe-money-gen] coverage (952/1610): Money\.MultiAccountSpec.subtractAmount.produces valid amounts (19 mutations)
304.54 s
[really-safe-money-gen] coverage (953/1610): Money\.MultiAccountSpec.subtractAmount.computes this example correctly (10 mutations)
304.55 s
[really-safe-money-gen] coverage (954/1610): Money\.MultiAccountSpec.subtractAmount.adds a non zero amount (1 mutations)
304.57 s
[really-safe-money-gen] coverage (955/1610): Money\.MultiAccountSpec.subtractAmount.removes a zero amount (9 mutations)
304.72 s
[really-safe-money-gen] coverage (956/1610): Money\.MultiAccountSpec.add.has a right-identity\: zero (1 mutations)
305.05 s
[really-safe-money-gen] coverage (957/1610): Money\.MultiAccountSpec.add.is commutative (13 mutations)
305.23 s
[really-safe-money-gen] coverage (958/1610): Money\.MultiAccountSpec.add.produces valid amounts (19 mutations)
305.69 s
[really-safe-money-gen] coverage (959/1610): Money\.MultiAccountSpec.add.is associative when both succeed (13 mutations)
305.83 s
[really-safe-money-gen] coverage (960/1610): Money\.MultiAccountSpec.add.has a left-identity\: zero (1 mutations)
305.99 s
[really-safe-money-gen] coverage (961/1610): Money\.MultiAccountSpec.GenValid (MultiAccount Currency).genValid \:\: Gen (MultiAccount Currency).only generates valid '(MultiAccount Currency)'s (7 mutations)
306.06 s
[really-safe-money-gen] coverage (962/1610): Money\.MultiAccountSpec.Eq (MultiAccount Currency).(==) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is reflexive for "valid (MultiAccount Currency)"s (1 mutations)
306.11 s
[really-safe-money-gen] coverage (963/1610): Money\.MultiAccountSpec.Eq (MultiAccount Currency).(==) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is symmetric for "valid (MultiAccount Currency)"s (1 mutations)
306.16 s
[really-safe-money-gen] coverage (964/1610): Money\.MultiAccountSpec.Eq (MultiAccount Currency).(==) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is transitive for "valid (MultiAccount Currency)"s (1 mutations)
306.22 s
[really-safe-money-gen] coverage (965/1610): Money\.MultiAccountSpec.Eq (MultiAccount Currency).(==) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (MultiAccount Currency)"s (1 mutations)
306.28 s
[really-safe-money-gen] coverage (966/1610): Money\.MultiAccountSpec.Eq (MultiAccount Currency).(/=) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (MultiAccount Currency)"s (1 mutations)
306.36 s
[really-safe-money-gen] coverage (967/1610): Money\.MultiAccountSpec.Eq (MultiAccount Currency).(/=) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is antireflexive for "valid (MultiAccount Currency)"s (1 mutations)
306.62 s
[really-safe-money-gen] coverage (968/1610): Money\.MultiAccountSpec.sum.produces valid amounts (19 mutations)
306.75 s
[really-safe-money-gen] coverage (969/1610): Money\.MultiAccountSpec.Show (MultiAccount Currency) and Read (MultiAccount Currency).are implemented such that read \. show == id for valid values (1 mutations)
306.75 s
[really-safe-money-gen] coverage (970/1610): Money\.MultiAccountSpec.zero.is valid (1 mutations)
306.77 s
[really-safe-money-gen] coverage (971/1610): Money\.MultiAccountSpec.fromAccount.produces valid amounts (9 mutations)
306.88 s
[really-safe-money-gen] coverage (972/1610): Money\.MultiAccountSpec.addAccount.produces valid amounts (19 mutations)
306.92 s
[really-safe-money-gen] coverage (973/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency).(>=) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is reflexive for "valid (MultiAccount Currency)"'s (1 mutations)
306.98 s
[really-safe-money-gen] coverage (974/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency).(>=) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is transitive for "valid (MultiAccount Currency)"'s (1 mutations)
307.03 s
[really-safe-money-gen] coverage (975/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency).(>=) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is antisymmetric for "valid (MultiAccount Currency)"'s (1 mutations)
307.09 s
[really-safe-money-gen] coverage (976/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency).(>=) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid (MultiAccount Currency)"'s (1 mutations)
307.22 s
[really-safe-money-gen] coverage (977/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency)."min \:\: (MultiAccount Currency -> MultiAccount Currency -> MultiAccount Currency)".is equivalent to (\\a b -> if a <= b then a else b) for "valid (MultiAccount Currency)"'s (1 mutations)
307.27 s
[really-safe-money-gen] coverage (978/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency).(>) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid (MultiAccount Currency)"'s (1 mutations)
307.33 s
[really-safe-money-gen] coverage (979/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency).(>) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is antireflexive for "valid (MultiAccount Currency)"'s (1 mutations)
307.38 s
[really-safe-money-gen] coverage (980/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency).(>) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is transitive for "valid (MultiAccount Currency)"'s (1 mutations)
307.42 s
[really-safe-money-gen] coverage (981/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency).(<=) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid (MultiAccount Currency)"'s (1 mutations)
307.47 s
[really-safe-money-gen] coverage (982/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency).(<=) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is reflexive for "valid (MultiAccount Currency)"'s (1 mutations)
307.52 s
[really-safe-money-gen] coverage (983/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency).(<=) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is antisymmetric for "valid (MultiAccount Currency)"'s (1 mutations)
307.58 s
[really-safe-money-gen] coverage (984/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency).(<=) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is transitive for "valid (MultiAccount Currency)"'s (1 mutations)
307.64 s
[really-safe-money-gen] coverage (985/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency).(<) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is transitive for "valid (MultiAccount Currency)"'s (1 mutations)
307.68 s
[really-safe-money-gen] coverage (986/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency).(<) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is antireflexive for "valid (MultiAccount Currency)"'s (1 mutations)
307.71 s
[really-safe-money-gen] coverage (987/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency).(<) \:\: (MultiAccount Currency) -> (MultiAccount Currency) -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid (MultiAccount Currency)"'s (1 mutations)
307.78 s
[really-safe-money-gen] coverage (988/1610): Money\.MultiAccountSpec.Ord (MultiAccount Currency)."max \:\: (MultiAccount Currency -> MultiAccount Currency -> MultiAccount Currency)".is equivalent to (\\a b -> if a >= b then a else b) for "valid (MultiAccount Currency)"'s (1 mutations)
307.91 s
[really-safe-money-gen] coverage (989/1610): Money\.MultiAccountSpec.subtract.produces valid amounts (19 mutations)
307.99 s
[really-safe-money-gen] coverage (990/1610): Money\.MultiAccountSpec.subtract.has a right-identity\: zero (1 mutations)
308.06 s
[really-safe-money-gen] coverage (991/1610): Money\.MultiAccountSpec.addAmount.produces valid amounts (19 mutations)
308.07 s
[really-safe-money-gen] coverage (992/1610): Money\.MultiAccountSpec.addAmount.computes this example correctly (7 mutations)
308.09 s
[really-safe-money-gen] coverage (993/1610): Money\.MultiAccountSpec.addAmount.adds a non zero amount (1 mutations)
308.10 s
[really-safe-money-gen] coverage (994/1610): Money\.MultiAccountSpec.addAmount.removes a zero amount (9 mutations)
308.21 s
[really-safe-money-gen] coverage (995/1610): Money\.MultiAccountSpec.subtractAccount.produces valid amounts (19 mutations)
308.22 s
[really-safe-money-gen] coverage (996/1610): Money\.MultiAccountSpec.lookupAccount.can find an added amount (0 mutations)
308.23 s
[really-safe-money-gen] coverage (997/1610): Money\.MultiAccountSpec.lookupAccount.produces valid amounts (1 mutations)
308.27 s
[really-safe-money-gen] coverage (998/1610): Money\.MultiAccountSpec.convertAll.produces valid results when converting two currencies to one (7 mutations)
308.27 s
[really-safe-money-gen] coverage (999/1610): Money\.MultiAccountSpec.convertAll.produces the right result in this example (7 mutations)
308.28 s
[really-safe-money-gen] coverage (1000/1610): Money\.AmountOfSpec.USD.toMinimalQuantisations.produces valid Int64s (0 mutations)
308.28 s
[really-safe-money-gen] coverage (1001/1610): Money\.AmountOfSpec.USD.toMinimalQuantisations.roundtrips with fromMinimalQuantisations (0 mutations)
308.28 s
[really-safe-money-gen] coverage (1002/1610): Money\.AmountOfSpec.USD.CHF.rate.produces valid amounts (3 mutations)
308.28 s
[really-safe-money-gen] coverage (1003/1610): Money\.AmountOfSpec.USD.CHF.convert.produces valid amounts (6 mutations)
308.28 s
[really-safe-money-gen] coverage (1004/1610): Money\.AmountOfSpec.USD.fromRatio.succeeds on 1 (10 mutations)
308.28 s
[really-safe-money-gen] coverage (1005/1610): Money\.AmountOfSpec.USD.fromRatio.roundtrips with toRatio (10 mutations)
308.28 s
[really-safe-money-gen] coverage (1006/1610): Money\.AmountOfSpec.USD.fromRatio.produces valid AmountOfs (10 mutations)
308.28 s
[really-safe-money-gen] coverage (1007/1610): Money\.AmountOfSpec.USD.fromRatio.succeeds on 77 (10 mutations)
308.28 s
[really-safe-money-gen] coverage (1008/1610): Money\.AmountOfSpec.USD.fromRatio.fails on NaN (2 mutations)
308.28 s
[really-safe-money-gen] coverage (1009/1610): Money\.AmountOfSpec.USD.fromRatio.succeeds on 0 (10 mutations)
308.28 s
[really-safe-money-gen] coverage (1010/1610): Money\.AmountOfSpec.USD.fromRatio.fails on 7\.123 (7 mutations)
308.28 s
[really-safe-money-gen] coverage (1011/1610): Money\.AmountOfSpec.USD.fromRatio.fails on +Infinity (2 mutations)
308.28 s
[really-safe-money-gen] coverage (1012/1610): Money\.AmountOfSpec.USD.add.matches what you would get with Integer, if nothing fails (3 mutations)
308.28 s
[really-safe-money-gen] coverage (1013/1610): Money\.AmountOfSpec.USD.add.has a right-identity\: zero (3 mutations)
308.28 s
[really-safe-money-gen] coverage (1014/1610): Money\.AmountOfSpec.USD.add.produces valid amounts (3 mutations)
308.28 s
[really-safe-money-gen] coverage (1015/1610): Money\.AmountOfSpec.USD.add.has a left-identity\: zero (3 mutations)
308.28 s
[really-safe-money-gen] coverage (1016/1610): Money\.AmountOfSpec.USD.add.is commutative (3 mutations)
308.28 s
[really-safe-money-gen] coverage (1017/1610): Money\.AmountOfSpec.USD.add.is associative when both succeed (3 mutations)
308.29 s
[really-safe-money-gen] coverage (1018/1610): Money\.AmountOfSpec.USD.fromMinimalQuantisations.produces valid amounts (0 mutations)
308.29 s
[really-safe-money-gen] coverage (1019/1610): Money\.AmountOfSpec.USD.fromRational.roundtrips with toRational (10 mutations)
308.29 s
[really-safe-money-gen] coverage (1020/1610): Money\.AmountOfSpec.USD.fromRational.fails on -1 (4 mutations)
308.29 s
[really-safe-money-gen] coverage (1021/1610): Money\.AmountOfSpec.USD.fromRational.fails on +Infinity (2 mutations)
308.29 s
[really-safe-money-gen] coverage (1022/1610): Money\.AmountOfSpec.USD.fromRational.produces valid Amounts (10 mutations)
308.29 s
[really-safe-money-gen] coverage (1023/1610): Money\.AmountOfSpec.USD.fromRational.fails on NaN (2 mutations)
308.29 s
[really-safe-money-gen] coverage (1024/1610): Money\.AmountOfSpec.USD.fromRational.fails on -Infinity (2 mutations)
308.29 s
[really-safe-money-gen] coverage (1025/1610): Money\.AmountOfSpec.USD.fromRational.succeeds on 1 (10 mutations)
308.29 s
[really-safe-money-gen] coverage (1026/1610): Money\.AmountOfSpec.USD.fromRational.succeeds on 0 (10 mutations)
308.29 s
[really-safe-money-gen] coverage (1027/1610): Money\.AmountOfSpec.USD.toRational.produces valid Rationals (0 mutations)
308.29 s
[really-safe-money-gen] coverage (1028/1610): Money\.AmountOfSpec.USD.GenValid (AmountOf * USD).genValid \:\: Gen (AmountOf * USD).only generates valid '(AmountOf * USD)'s (0 mutations)
308.29 s
[really-safe-money-gen] coverage (1029/1610): Money\.AmountOfSpec.USD.zero.is valid (0 mutations)
308.29 s
[really-safe-money-gen] coverage (1030/1610): Money\.AmountOfSpec.USD.Show (AmountOf * USD) and Read (AmountOf * USD).are implemented such that read \. show == id for valid values (1 mutations)
308.29 s
[really-safe-money-gen] coverage (1031/1610): Money\.AmountOfSpec.USD.BTC.convert.produces valid amounts (6 mutations)
308.29 s
[really-safe-money-gen] coverage (1032/1610): Money\.AmountOfSpec.USD.BTC.rate.produces valid amounts (3 mutations)
308.29 s
[really-safe-money-gen] coverage (1033/1610): Money\.AmountOfSpec.USD.fromDouble.produces valid amounts (15 mutations)
308.29 s
[really-safe-money-gen] coverage (1034/1610): Money\.AmountOfSpec.USD.fromDouble.succeeds on 0 (15 mutations)
308.29 s
[really-safe-money-gen] coverage (1035/1610): Money\.AmountOfSpec.USD.fromDouble.succeeds on 1 (15 mutations)
308.29 s
[really-safe-money-gen] coverage (1036/1610): Money\.AmountOfSpec.USD.fromDouble.fails on +Infinity (6 mutations)
308.29 s
[really-safe-money-gen] coverage (1037/1610): Money\.AmountOfSpec.USD.fromDouble.fails on -Infinity (2 mutations)
308.29 s
[really-safe-money-gen] coverage (1038/1610): Money\.AmountOfSpec.USD.fromDouble.fails on NaN (4 mutations)
308.30 s
[really-safe-money-gen] coverage (1039/1610): Money\.AmountOfSpec.USD.fromDouble.fails on -1 (2 mutations)
308.30 s
[really-safe-money-gen] coverage (1040/1610): Money\.AmountOfSpec.USD.fraction.produces valid amounts (3 mutations)
308.30 s
[really-safe-money-gen] coverage (1041/1610): Money\.AmountOfSpec.USD.INR.convert.produces valid amounts (6 mutations)
308.30 s
[really-safe-money-gen] coverage (1042/1610): Money\.AmountOfSpec.USD.INR.rate.produces valid amounts (3 mutations)
308.30 s
[really-safe-money-gen] coverage (1043/1610): Money\.AmountOfSpec.USD.USD.rate.produces valid amounts (3 mutations)
308.30 s
[really-safe-money-gen] coverage (1044/1610): Money\.AmountOfSpec.USD.USD.convert.produces valid amounts (6 mutations)
308.30 s
[really-safe-money-gen] coverage (1045/1610): Money\.AmountOfSpec.USD.sum.produces valid amounts (4 mutations)
308.31 s
[really-safe-money-gen] coverage (1046/1610): Money\.AmountOfSpec.USD.sum.matches what you would get with Integer, if nothing fails (3 mutations)
308.31 s
[really-safe-money-gen] coverage (1047/1610): Money\.AmountOfSpec.USD.subtract.matches what you would get with Integer, if nothing fails (3 mutations)
308.31 s
[really-safe-money-gen] coverage (1048/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD).(<) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is antireflexive for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1049/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD).(<) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is transitive for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1050/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD).(<) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1051/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD).(>) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is antireflexive for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1052/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD).(>) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is transitive for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1053/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD).(>) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1054/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD).(<=) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is transitive for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1055/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD).(<=) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is reflexive for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1056/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD).(<=) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is antisymmetric for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1057/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD).(<=) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1058/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD)."min \:\: (AmountOf * USD -> AmountOf * USD -> AmountOf * USD)".is equivalent to (\\a b -> if a <= b then a else b) for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1059/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD)."max \:\: (AmountOf * USD -> AmountOf * USD -> AmountOf * USD)".is equivalent to (\\a b -> if a >= b then a else b) for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1060/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD).(>=) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1061/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD).(>=) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is antisymmetric for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1062/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD).(>=) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is reflexive for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1063/1610): Money\.AmountOfSpec.USD.Ord (AmountOf * USD).(>=) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is transitive for "valid (AmountOf * USD)"'s (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1064/1610): Money\.AmountOfSpec.USD.toRatio.produces valid Rationals when the quantisation factor is nonzero (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1065/1610): Money\.AmountOfSpec.USD.format.produces valid strings (0 mutations)
308.31 s
[really-safe-money-gen] coverage (1066/1610): Money\.AmountOfSpec.USD.multiply.matches what you would get with Integer, if nothing fails (3 mutations)
308.31 s
[really-safe-money-gen] coverage (1067/1610): Money\.AmountOfSpec.USD.multiply.is absorbed by 0 (3 mutations)
308.31 s
[really-safe-money-gen] coverage (1068/1610): Money\.AmountOfSpec.USD.multiply.is distributive with add when both succeed (6 mutations)
308.31 s
[really-safe-money-gen] coverage (1069/1610): Money\.AmountOfSpec.USD.multiply.has an identity\: 1 (3 mutations)
308.31 s
[really-safe-money-gen] coverage (1070/1610): Money\.AmountOfSpec.USD.multiply.produces valid amounts (3 mutations)
308.31 s
[really-safe-money-gen] coverage (1071/1610): Money\.AmountOfSpec.USD.toDouble.produces valid Doubles (0 mutations)
308.32 s
[really-safe-money-gen] coverage (1072/1610): Money\.AmountOfSpec.USD.distribute.Show (Distribution (AmountOf * USD)) and Read (Distribution (AmountOf * USD)).are implemented such that read \. show == id for valid values (1 mutations)
308.32 s
[really-safe-money-gen] coverage (1073/1610): Money\.AmountOfSpec.USD.distribute.produces valid amounts (6 mutations)
308.32 s
[really-safe-money-gen] coverage (1074/1610): Money\.AmountOfSpec.USD.distribute.produces results that sum up to the greater whole (9 mutations)
308.32 s
[really-safe-money-gen] coverage (1075/1610): Money\.AmountOfSpec.USD.distribute.Eq (Distribution (AmountOf * USD)).(/=) \:\: (Distribution (AmountOf * USD)) -> (Distribution (AmountOf * USD)) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (Distribution (AmountOf * USD))"s (1 mutations)
308.32 s
[really-safe-money-gen] coverage (1076/1610): Money\.AmountOfSpec.USD.distribute.Eq (Distribution (AmountOf * USD)).(/=) \:\: (Distribution (AmountOf * USD)) -> (Distribution (AmountOf * USD)) -> Bool.is antireflexive for "valid (Distribution (AmountOf * USD))"s (1 mutations)
308.32 s
[really-safe-money-gen] coverage (1077/1610): Money\.AmountOfSpec.USD.distribute.Eq (Distribution (AmountOf * USD)).(==) \:\: (Distribution (AmountOf * USD)) -> (Distribution (AmountOf * USD)) -> Bool.is transitive for "valid (Distribution (AmountOf * USD))"s (1 mutations)
308.32 s
[really-safe-money-gen] coverage (1078/1610): Money\.AmountOfSpec.USD.distribute.Eq (Distribution (AmountOf * USD)).(==) \:\: (Distribution (AmountOf * USD)) -> (Distribution (AmountOf * USD)) -> Bool.is reflexive for "valid (Distribution (AmountOf * USD))"s (1 mutations)
308.32 s
[really-safe-money-gen] coverage (1079/1610): Money\.AmountOfSpec.USD.distribute.Eq (Distribution (AmountOf * USD)).(==) \:\: (Distribution (AmountOf * USD)) -> (Distribution (AmountOf * USD)) -> Bool.is symmetric for "valid (Distribution (AmountOf * USD))"s (1 mutations)
308.32 s
[really-safe-money-gen] coverage (1080/1610): Money\.AmountOfSpec.USD.distribute.Eq (Distribution (AmountOf * USD)).(==) \:\: (Distribution (AmountOf * USD)) -> (Distribution (AmountOf * USD)) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (Distribution (AmountOf * USD))"s (1 mutations)
308.32 s
[really-safe-money-gen] coverage (1081/1610): Money\.AmountOfSpec.USD.ADA.convert.produces valid amounts (6 mutations)
308.32 s
[really-safe-money-gen] coverage (1082/1610): Money\.AmountOfSpec.USD.ADA.rate.produces valid amounts (3 mutations)
308.32 s
[really-safe-money-gen] coverage (1083/1610): Money\.AmountOfSpec.USD.Eq (AmountOf * USD).(==) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (AmountOf * USD)"s (0 mutations)
308.32 s
[really-safe-money-gen] coverage (1084/1610): Money\.AmountOfSpec.USD.Eq (AmountOf * USD).(==) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is symmetric for "valid (AmountOf * USD)"s (0 mutations)
308.33 s
[really-safe-money-gen] coverage (1085/1610): Money\.AmountOfSpec.USD.Eq (AmountOf * USD).(==) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is reflexive for "valid (AmountOf * USD)"s (0 mutations)
308.33 s
[really-safe-money-gen] coverage (1086/1610): Money\.AmountOfSpec.USD.Eq (AmountOf * USD).(==) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is transitive for "valid (AmountOf * USD)"s (0 mutations)
308.33 s
[really-safe-money-gen] coverage (1087/1610): Money\.AmountOfSpec.USD.Eq (AmountOf * USD).(/=) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (AmountOf * USD)"s (0 mutations)
308.33 s
[really-safe-money-gen] coverage (1088/1610): Money\.AmountOfSpec.USD.Eq (AmountOf * USD).(/=) \:\: (AmountOf * USD) -> (AmountOf * USD) -> Bool.is antireflexive for "valid (AmountOf * USD)"s (0 mutations)
308.33 s
[really-safe-money-gen] coverage (1089/1610): Money\.AmountOfSpec.ADA.BTC.convert.produces valid amounts (6 mutations)
308.33 s
[really-safe-money-gen] coverage (1090/1610): Money\.AmountOfSpec.ADA.BTC.rate.produces valid amounts (3 mutations)
308.33 s
[really-safe-money-gen] coverage (1091/1610): Money\.AmountOfSpec.ADA.Eq (AmountOf * ADA).(==) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is transitive for "valid (AmountOf * ADA)"s (0 mutations)
308.33 s
[really-safe-money-gen] coverage (1092/1610): Money\.AmountOfSpec.ADA.Eq (AmountOf * ADA).(==) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is symmetric for "valid (AmountOf * ADA)"s (0 mutations)
308.33 s
[really-safe-money-gen] coverage (1093/1610): Money\.AmountOfSpec.ADA.Eq (AmountOf * ADA).(==) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (AmountOf * ADA)"s (0 mutations)
308.33 s
[really-safe-money-gen] coverage (1094/1610): Money\.AmountOfSpec.ADA.Eq (AmountOf * ADA).(==) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is reflexive for "valid (AmountOf * ADA)"s (0 mutations)
308.33 s
[really-safe-money-gen] coverage (1095/1610): Money\.AmountOfSpec.ADA.Eq (AmountOf * ADA).(/=) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is antireflexive for "valid (AmountOf * ADA)"s (0 mutations)
308.33 s
[really-safe-money-gen] coverage (1096/1610): Money\.AmountOfSpec.ADA.Eq (AmountOf * ADA).(/=) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (AmountOf * ADA)"s (0 mutations)
308.33 s
[really-safe-money-gen] coverage (1097/1610): Money\.AmountOfSpec.ADA.zero.is valid (0 mutations)
308.33 s
[really-safe-money-gen] coverage (1098/1610): Money\.AmountOfSpec.ADA.Show (AmountOf * ADA) and Read (AmountOf * ADA).are implemented such that read \. show == id for valid values (1 mutations)
308.33 s
[really-safe-money-gen] coverage (1099/1610): Money\.AmountOfSpec.ADA.toRatio.produces valid Rationals when the quantisation factor is nonzero (0 mutations)
308.33 s
[really-safe-money-gen] coverage (1100/1610): Money\.AmountOfSpec.ADA.toRational.produces valid Rationals (0 mutations)
308.34 s
[really-safe-money-gen] coverage (1101/1610): Money\.AmountOfSpec.ADA.fromRatio.produces valid AmountOfs (10 mutations)
308.34 s
[really-safe-money-gen] coverage (1102/1610): Money\.AmountOfSpec.ADA.fromRatio.roundtrips with toRatio (10 mutations)
308.34 s
[really-safe-money-gen] coverage (1103/1610): Money\.AmountOfSpec.ADA.fromRatio.succeeds on 0 (10 mutations)
308.34 s
[really-safe-money-gen] coverage (1104/1610): Money\.AmountOfSpec.ADA.fromRatio.fails on +Infinity (2 mutations)
308.34 s
[really-safe-money-gen] coverage (1105/1610): Money\.AmountOfSpec.ADA.fromRatio.succeeds on 1 (10 mutations)
308.34 s
[really-safe-money-gen] coverage (1106/1610): Money\.AmountOfSpec.ADA.fromRatio.fails on NaN (2 mutations)
308.34 s
[really-safe-money-gen] coverage (1107/1610): Money\.AmountOfSpec.ADA.fromRatio.succeeds on 77 (10 mutations)
308.34 s
[really-safe-money-gen] coverage (1108/1610): Money\.AmountOfSpec.ADA.fromRatio.fails on 7\.123 (7 mutations)
308.34 s
[really-safe-money-gen] coverage (1109/1610): Money\.AmountOfSpec.ADA.fromRational.fails on NaN (2 mutations)
308.34 s
[really-safe-money-gen] coverage (1110/1610): Money\.AmountOfSpec.ADA.fromRational.succeeds on 1 (10 mutations)
308.34 s
[really-safe-money-gen] coverage (1111/1610): Money\.AmountOfSpec.ADA.fromRational.roundtrips with toRational (10 mutations)
308.34 s
[really-safe-money-gen] coverage (1112/1610): Money\.AmountOfSpec.ADA.fromRational.fails on -1 (4 mutations)
308.34 s
[really-safe-money-gen] coverage (1113/1610): Money\.AmountOfSpec.ADA.fromRational.fails on -Infinity (2 mutations)
308.34 s
[really-safe-money-gen] coverage (1114/1610): Money\.AmountOfSpec.ADA.fromRational.fails on +Infinity (2 mutations)
308.34 s
[really-safe-money-gen] coverage (1115/1610): Money\.AmountOfSpec.ADA.fromRational.produces valid Amounts (10 mutations)
308.34 s
[really-safe-money-gen] coverage (1116/1610): Money\.AmountOfSpec.ADA.fromRational.succeeds on 0 (10 mutations)
308.34 s
[really-safe-money-gen] coverage (1117/1610): Money\.AmountOfSpec.ADA.sum.matches what you would get with Integer, if nothing fails (3 mutations)
308.34 s
[really-safe-money-gen] coverage (1118/1610): Money\.AmountOfSpec.ADA.sum.produces valid amounts (3 mutations)
308.34 s
[really-safe-money-gen] coverage (1119/1610): Money\.AmountOfSpec.ADA.toDouble.produces valid Doubles (0 mutations)
308.34 s
[really-safe-money-gen] coverage (1120/1610): Money\.AmountOfSpec.ADA.add.matches what you would get with Integer, if nothing fails (3 mutations)
308.34 s
[really-safe-money-gen] coverage (1121/1610): Money\.AmountOfSpec.ADA.add.has a left-identity\: zero (3 mutations)
308.34 s
[really-safe-money-gen] coverage (1122/1610): Money\.AmountOfSpec.ADA.add.has a right-identity\: zero (3 mutations)
308.34 s
[really-safe-money-gen] coverage (1123/1610): Money\.AmountOfSpec.ADA.add.is associative when both succeed (3 mutations)
308.35 s
[really-safe-money-gen] coverage (1124/1610): Money\.AmountOfSpec.ADA.add.produces valid amounts (3 mutations)
308.35 s
[really-safe-money-gen] coverage (1125/1610): Money\.AmountOfSpec.ADA.add.is commutative (3 mutations)
308.35 s
[really-safe-money-gen] coverage (1126/1610): Money\.AmountOfSpec.ADA.USD.rate.produces valid amounts (3 mutations)
308.35 s
[really-safe-money-gen] coverage (1127/1610): Money\.AmountOfSpec.ADA.USD.convert.produces valid amounts (6 mutations)
308.35 s
[really-safe-money-gen] coverage (1128/1610): Money\.AmountOfSpec.ADA.fromMinimalQuantisations.produces valid amounts (0 mutations)
308.36 s
[really-safe-money-gen] coverage (1129/1610): Money\.AmountOfSpec.ADA.distribute.Show (Distribution (AmountOf * ADA)) and Read (Distribution (AmountOf * ADA)).are implemented such that read \. show == id for valid values (1 mutations)
308.36 s
[really-safe-money-gen] coverage (1130/1610): Money\.AmountOfSpec.ADA.distribute.produces results that sum up to the greater whole (9 mutations)
308.36 s
[really-safe-money-gen] coverage (1131/1610): Money\.AmountOfSpec.ADA.distribute.Eq (Distribution (AmountOf * ADA)).(/=) \:\: (Distribution (AmountOf * ADA)) -> (Distribution (AmountOf * ADA)) -> Bool.is antireflexive for "valid (Distribution (AmountOf * ADA))"s (1 mutations)
308.36 s
[really-safe-money-gen] coverage (1132/1610): Money\.AmountOfSpec.ADA.distribute.Eq (Distribution (AmountOf * ADA)).(/=) \:\: (Distribution (AmountOf * ADA)) -> (Distribution (AmountOf * ADA)) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (Distribution (AmountOf * ADA))"s (1 mutations)
308.36 s
[really-safe-money-gen] coverage (1133/1610): Money\.AmountOfSpec.ADA.distribute.Eq (Distribution (AmountOf * ADA)).(==) \:\: (Distribution (AmountOf * ADA)) -> (Distribution (AmountOf * ADA)) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (Distribution (AmountOf * ADA))"s (1 mutations)
308.36 s
[really-safe-money-gen] coverage (1134/1610): Money\.AmountOfSpec.ADA.distribute.Eq (Distribution (AmountOf * ADA)).(==) \:\: (Distribution (AmountOf * ADA)) -> (Distribution (AmountOf * ADA)) -> Bool.is reflexive for "valid (Distribution (AmountOf * ADA))"s (1 mutations)
308.36 s
[really-safe-money-gen] coverage (1135/1610): Money\.AmountOfSpec.ADA.distribute.Eq (Distribution (AmountOf * ADA)).(==) \:\: (Distribution (AmountOf * ADA)) -> (Distribution (AmountOf * ADA)) -> Bool.is transitive for "valid (Distribution (AmountOf * ADA))"s (1 mutations)
308.36 s
[really-safe-money-gen] coverage (1136/1610): Money\.AmountOfSpec.ADA.distribute.Eq (Distribution (AmountOf * ADA)).(==) \:\: (Distribution (AmountOf * ADA)) -> (Distribution (AmountOf * ADA)) -> Bool.is symmetric for "valid (Distribution (AmountOf * ADA))"s (1 mutations)
308.36 s
[really-safe-money-gen] coverage (1137/1610): Money\.AmountOfSpec.ADA.distribute.produces valid amounts (6 mutations)
308.36 s
[really-safe-money-gen] coverage (1138/1610): Money\.AmountOfSpec.ADA.toMinimalQuantisations.roundtrips with fromMinimalQuantisations (0 mutations)
308.36 s
[really-safe-money-gen] coverage (1139/1610): Money\.AmountOfSpec.ADA.toMinimalQuantisations.produces valid Int64s (0 mutations)
308.37 s
[really-safe-money-gen] coverage (1140/1610): Money\.AmountOfSpec.ADA.CHF.convert.produces valid amounts (6 mutations)
308.37 s
[really-safe-money-gen] coverage (1141/1610): Money\.AmountOfSpec.ADA.CHF.rate.produces valid amounts (3 mutations)
308.37 s
[really-safe-money-gen] coverage (1142/1610): Money\.AmountOfSpec.ADA.format.produces valid strings (0 mutations)
308.37 s
[really-safe-money-gen] coverage (1143/1610): Money\.AmountOfSpec.ADA.GenValid (AmountOf * ADA).genValid \:\: Gen (AmountOf * ADA).only generates valid '(AmountOf * ADA)'s (0 mutations)
308.37 s
[really-safe-money-gen] coverage (1144/1610): Money\.AmountOfSpec.ADA.ADA.rate.produces valid amounts (3 mutations)
308.38 s
[really-safe-money-gen] coverage (1145/1610): Money\.AmountOfSpec.ADA.ADA.convert.produces valid amounts (6 mutations)
308.38 s
[really-safe-money-gen] coverage (1146/1610): Money\.AmountOfSpec.ADA.fraction.produces valid amounts (3 mutations)
308.38 s
[really-safe-money-gen] coverage (1147/1610): Money\.AmountOfSpec.ADA.INR.rate.produces valid amounts (3 mutations)
308.38 s
[really-safe-money-gen] coverage (1148/1610): Money\.AmountOfSpec.ADA.INR.convert.produces valid amounts (6 mutations)
308.38 s
[really-safe-money-gen] coverage (1149/1610): Money\.AmountOfSpec.ADA.multiply.produces valid amounts (3 mutations)
308.38 s
[really-safe-money-gen] coverage (1150/1610): Money\.AmountOfSpec.ADA.multiply.is absorbed by 0 (3 mutations)
308.38 s
[really-safe-money-gen] coverage (1151/1610): Money\.AmountOfSpec.ADA.multiply.matches what you would get with Integer, if nothing fails (3 mutations)
308.39 s
[really-safe-money-gen] coverage (1152/1610): Money\.AmountOfSpec.ADA.multiply.is distributive with add when both succeed (6 mutations)
308.39 s
[really-safe-money-gen] coverage (1153/1610): Money\.AmountOfSpec.ADA.multiply.has an identity\: 1 (3 mutations)
308.39 s
[really-safe-money-gen] coverage (1154/1610): Money\.AmountOfSpec.ADA.fromDouble.succeeds on 0 (15 mutations)
308.39 s
[really-safe-money-gen] coverage (1155/1610): Money\.AmountOfSpec.ADA.fromDouble.fails on +Infinity (6 mutations)
308.39 s
[really-safe-money-gen] coverage (1156/1610): Money\.AmountOfSpec.ADA.fromDouble.succeeds on 1 (15 mutations)
308.39 s
[really-safe-money-gen] coverage (1157/1610): Money\.AmountOfSpec.ADA.fromDouble.fails on NaN (4 mutations)
308.39 s
[really-safe-money-gen] coverage (1158/1610): Money\.AmountOfSpec.ADA.fromDouble.fails on -Infinity (2 mutations)
308.39 s
[really-safe-money-gen] coverage (1159/1610): Money\.AmountOfSpec.ADA.fromDouble.produces valid amounts (15 mutations)
308.39 s
[really-safe-money-gen] coverage (1160/1610): Money\.AmountOfSpec.ADA.fromDouble.fails on -1 (2 mutations)
308.39 s
[really-safe-money-gen] coverage (1161/1610): Money\.AmountOfSpec.ADA.subtract.matches what you would get with Integer, if nothing fails (3 mutations)
308.39 s
[really-safe-money-gen] coverage (1162/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA).(>) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is antireflexive for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1163/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA).(>) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is transitive for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1164/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA).(>) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1165/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA)."max \:\: (AmountOf * ADA -> AmountOf * ADA -> AmountOf * ADA)".is equivalent to (\\a b -> if a >= b then a else b) for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1166/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA)."min \:\: (AmountOf * ADA -> AmountOf * ADA -> AmountOf * ADA)".is equivalent to (\\a b -> if a <= b then a else b) for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1167/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA).(<=) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1168/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA).(<=) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is transitive for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1169/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA).(<=) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is reflexive for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1170/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA).(<=) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is antisymmetric for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1171/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA).(>=) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1172/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA).(>=) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is reflexive for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1173/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA).(>=) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is transitive for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1174/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA).(>=) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is antisymmetric for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1175/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA).(<) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1176/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA).(<) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is transitive for "valid (AmountOf * ADA)"'s (0 mutations)
308.39 s
[really-safe-money-gen] coverage (1177/1610): Money\.AmountOfSpec.ADA.Ord (AmountOf * ADA).(<) \:\: (AmountOf * ADA) -> (AmountOf * ADA) -> Bool.is antireflexive for "valid (AmountOf * ADA)"'s (0 mutations)
308.40 s
[really-safe-money-gen] coverage (1178/1610): Money\.AmountOfSpec.INR.subtract.matches what you would get with Integer, if nothing fails (3 mutations)
308.40 s
[really-safe-money-gen] coverage (1179/1610): Money\.AmountOfSpec.INR.toDouble.produces valid Doubles (0 mutations)
308.40 s
[really-safe-money-gen] coverage (1180/1610): Money\.AmountOfSpec.INR.distribute.produces results that sum up to the greater whole (9 mutations)
308.40 s
[really-safe-money-gen] coverage (1181/1610): Money\.AmountOfSpec.INR.distribute.produces valid amounts (6 mutations)
308.40 s
[really-safe-money-gen] coverage (1182/1610): Money\.AmountOfSpec.INR.distribute.Show (Distribution (AmountOf * INR)) and Read (Distribution (AmountOf * INR)).are implemented such that read \. show == id for valid values (1 mutations)
308.40 s
[really-safe-money-gen] coverage (1183/1610): Money\.AmountOfSpec.INR.distribute.Eq (Distribution (AmountOf * INR)).(==) \:\: (Distribution (AmountOf * INR)) -> (Distribution (AmountOf * INR)) -> Bool.is reflexive for "valid (Distribution (AmountOf * INR))"s (1 mutations)
308.41 s
[really-safe-money-gen] coverage (1184/1610): Money\.AmountOfSpec.INR.distribute.Eq (Distribution (AmountOf * INR)).(==) \:\: (Distribution (AmountOf * INR)) -> (Distribution (AmountOf * INR)) -> Bool.is symmetric for "valid (Distribution (AmountOf * INR))"s (1 mutations)
308.41 s
[really-safe-money-gen] coverage (1185/1610): Money\.AmountOfSpec.INR.distribute.Eq (Distribution (AmountOf * INR)).(==) \:\: (Distribution (AmountOf * INR)) -> (Distribution (AmountOf * INR)) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (Distribution (AmountOf * INR))"s (1 mutations)
308.41 s
[really-safe-money-gen] coverage (1186/1610): Money\.AmountOfSpec.INR.distribute.Eq (Distribution (AmountOf * INR)).(==) \:\: (Distribution (AmountOf * INR)) -> (Distribution (AmountOf * INR)) -> Bool.is transitive for "valid (Distribution (AmountOf * INR))"s (1 mutations)
308.41 s
[really-safe-money-gen] coverage (1187/1610): Money\.AmountOfSpec.INR.distribute.Eq (Distribution (AmountOf * INR)).(/=) \:\: (Distribution (AmountOf * INR)) -> (Distribution (AmountOf * INR)) -> Bool.is antireflexive for "valid (Distribution (AmountOf * INR))"s (1 mutations)
308.41 s
[really-safe-money-gen] coverage (1188/1610): Money\.AmountOfSpec.INR.distribute.Eq (Distribution (AmountOf * INR)).(/=) \:\: (Distribution (AmountOf * INR)) -> (Distribution (AmountOf * INR)) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (Distribution (AmountOf * INR))"s (1 mutations)
308.41 s
[really-safe-money-gen] coverage (1189/1610): Money\.AmountOfSpec.INR.zero.is valid (0 mutations)
308.41 s
[really-safe-money-gen] coverage (1190/1610): Money\.AmountOfSpec.INR.fromMinimalQuantisations.produces valid amounts (0 mutations)
308.41 s
[really-safe-money-gen] coverage (1191/1610): Money\.AmountOfSpec.INR.fraction.produces valid amounts (3 mutations)
308.41 s
[really-safe-money-gen] coverage (1192/1610): Money\.AmountOfSpec.INR.ADA.rate.produces valid amounts (3 mutations)
308.42 s
[really-safe-money-gen] coverage (1193/1610): Money\.AmountOfSpec.INR.ADA.convert.produces valid amounts (6 mutations)
308.42 s
[really-safe-money-gen] coverage (1194/1610): Money\.AmountOfSpec.INR.fromDouble.fails on -Infinity (2 mutations)
308.42 s
[really-safe-money-gen] coverage (1195/1610): Money\.AmountOfSpec.INR.fromDouble.succeeds on 1 (15 mutations)
308.42 s
[really-safe-money-gen] coverage (1196/1610): Money\.AmountOfSpec.INR.fromDouble.fails on NaN (4 mutations)
308.42 s
[really-safe-money-gen] coverage (1197/1610): Money\.AmountOfSpec.INR.fromDouble.fails on +Infinity (6 mutations)
308.42 s
[really-safe-money-gen] coverage (1198/1610): Money\.AmountOfSpec.INR.fromDouble.fails on -1 (2 mutations)
308.42 s
[really-safe-money-gen] coverage (1199/1610): Money\.AmountOfSpec.INR.fromDouble.succeeds on 0 (15 mutations)
308.42 s
[really-safe-money-gen] coverage (1200/1610): Money\.AmountOfSpec.INR.fromDouble.produces valid amounts (15 mutations)
308.42 s
[really-safe-money-gen] coverage (1201/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR)."max \:\: (AmountOf * INR -> AmountOf * INR -> AmountOf * INR)".is equivalent to (\\a b -> if a >= b then a else b) for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1202/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR).(>) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is transitive for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1203/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR).(>) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1204/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR).(>) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is antireflexive for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1205/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR).(<=) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is transitive for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1206/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR).(<=) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1207/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR).(<=) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is reflexive for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1208/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR).(<=) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is antisymmetric for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1209/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR).(>=) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1210/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR).(>=) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is reflexive for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1211/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR).(>=) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is transitive for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1212/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR).(>=) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is antisymmetric for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1213/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR).(<) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is transitive for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1214/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR).(<) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1215/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR).(<) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is antireflexive for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1216/1610): Money\.AmountOfSpec.INR.Ord (AmountOf * INR)."min \:\: (AmountOf * INR -> AmountOf * INR -> AmountOf * INR)".is equivalent to (\\a b -> if a <= b then a else b) for "valid (AmountOf * INR)"'s (0 mutations)
308.42 s
[really-safe-money-gen] coverage (1217/1610): Money\.AmountOfSpec.INR.CHF.convert.produces valid amounts (6 mutations)
308.43 s
[really-safe-money-gen] coverage (1218/1610): Money\.AmountOfSpec.INR.CHF.rate.produces valid amounts (3 mutations)
308.43 s
[really-safe-money-gen] coverage (1219/1610): Money\.AmountOfSpec.INR.multiply.matches what you would get with Integer, if nothing fails (3 mutations)
308.43 s
[really-safe-money-gen] coverage (1220/1610): Money\.AmountOfSpec.INR.multiply.produces valid amounts (3 mutations)
308.43 s
[really-safe-money-gen] coverage (1221/1610): Money\.AmountOfSpec.INR.multiply.is absorbed by 0 (3 mutations)
308.43 s
[really-safe-money-gen] coverage (1222/1610): Money\.AmountOfSpec.INR.multiply.has an identity\: 1 (3 mutations)
308.43 s
[really-safe-money-gen] coverage (1223/1610): Money\.AmountOfSpec.INR.multiply.is distributive with add when both succeed (6 mutations)
308.43 s
[really-safe-money-gen] coverage (1224/1610): Money\.AmountOfSpec.INR.toMinimalQuantisations.roundtrips with fromMinimalQuantisations (0 mutations)
308.43 s
[really-safe-money-gen] coverage (1225/1610): Money\.AmountOfSpec.INR.toMinimalQuantisations.produces valid Int64s (0 mutations)
308.43 s
[really-safe-money-gen] coverage (1226/1610): Money\.AmountOfSpec.INR.fromRational.succeeds on 0 (10 mutations)
308.43 s
[really-safe-money-gen] coverage (1227/1610): Money\.AmountOfSpec.INR.fromRational.fails on -Infinity (2 mutations)
308.43 s
[really-safe-money-gen] coverage (1228/1610): Money\.AmountOfSpec.INR.fromRational.roundtrips with toRational (10 mutations)
308.43 s
[really-safe-money-gen] coverage (1229/1610): Money\.AmountOfSpec.INR.fromRational.fails on +Infinity (2 mutations)
308.43 s
[really-safe-money-gen] coverage (1230/1610): Money\.AmountOfSpec.INR.fromRational.fails on NaN (2 mutations)
308.44 s
[really-safe-money-gen] coverage (1231/1610): Money\.AmountOfSpec.INR.fromRational.produces valid Amounts (10 mutations)
308.44 s
[really-safe-money-gen] coverage (1232/1610): Money\.AmountOfSpec.INR.fromRational.succeeds on 1 (10 mutations)
308.44 s
[really-safe-money-gen] coverage (1233/1610): Money\.AmountOfSpec.INR.fromRational.fails on -1 (4 mutations)
308.44 s
[really-safe-money-gen] coverage (1234/1610): Money\.AmountOfSpec.INR.add.is commutative (3 mutations)
308.44 s
[really-safe-money-gen] coverage (1235/1610): Money\.AmountOfSpec.INR.add.is associative when both succeed (3 mutations)
308.44 s
[really-safe-money-gen] coverage (1236/1610): Money\.AmountOfSpec.INR.add.matches what you would get with Integer, if nothing fails (3 mutations)
308.44 s
[really-safe-money-gen] coverage (1237/1610): Money\.AmountOfSpec.INR.add.has a left-identity\: zero (3 mutations)
308.44 s
[really-safe-money-gen] coverage (1238/1610): Money\.AmountOfSpec.INR.add.has a right-identity\: zero (3 mutations)
308.44 s
[really-safe-money-gen] coverage (1239/1610): Money\.AmountOfSpec.INR.add.produces valid amounts (3 mutations)
308.44 s
[really-safe-money-gen] coverage (1240/1610): Money\.AmountOfSpec.INR.toRatio.produces valid Rationals when the quantisation factor is nonzero (0 mutations)
308.44 s
[really-safe-money-gen] coverage (1241/1610): Money\.AmountOfSpec.INR.Show (AmountOf * INR) and Read (AmountOf * INR).are implemented such that read \. show == id for valid values (1 mutations)
308.44 s
[really-safe-money-gen] coverage (1242/1610): Money\.AmountOfSpec.INR.toRational.produces valid Rationals (0 mutations)
308.44 s
[really-safe-money-gen] coverage (1243/1610): Money\.AmountOfSpec.INR.sum.produces valid amounts (3 mutations)
308.44 s
[really-safe-money-gen] coverage (1244/1610): Money\.AmountOfSpec.INR.sum.matches what you would get with Integer, if nothing fails (3 mutations)
308.45 s
[really-safe-money-gen] coverage (1245/1610): Money\.AmountOfSpec.INR.format.produces valid strings (0 mutations)
308.45 s
[really-safe-money-gen] coverage (1246/1610): Money\.AmountOfSpec.INR.INR.rate.produces valid amounts (3 mutations)
308.45 s
[really-safe-money-gen] coverage (1247/1610): Money\.AmountOfSpec.INR.INR.convert.produces valid amounts (6 mutations)
308.45 s
[really-safe-money-gen] coverage (1248/1610): Money\.AmountOfSpec.INR.BTC.rate.produces valid amounts (3 mutations)
308.45 s
[really-safe-money-gen] coverage (1249/1610): Money\.AmountOfSpec.INR.BTC.convert.produces valid amounts (6 mutations)
308.45 s
[really-safe-money-gen] coverage (1250/1610): Money\.AmountOfSpec.INR.fromRatio.fails on NaN (2 mutations)
308.45 s
[really-safe-money-gen] coverage (1251/1610): Money\.AmountOfSpec.INR.fromRatio.fails on +Infinity (2 mutations)
308.45 s
[really-safe-money-gen] coverage (1252/1610): Money\.AmountOfSpec.INR.fromRatio.succeeds on 1 (10 mutations)
308.45 s
[really-safe-money-gen] coverage (1253/1610): Money\.AmountOfSpec.INR.fromRatio.succeeds on 0 (10 mutations)
308.45 s
[really-safe-money-gen] coverage (1254/1610): Money\.AmountOfSpec.INR.fromRatio.roundtrips with toRatio (10 mutations)
308.46 s
[really-safe-money-gen] coverage (1255/1610): Money\.AmountOfSpec.INR.fromRatio.produces valid AmountOfs (10 mutations)
308.46 s
[really-safe-money-gen] coverage (1256/1610): Money\.AmountOfSpec.INR.fromRatio.fails on 7\.123 (7 mutations)
308.46 s
[really-safe-money-gen] coverage (1257/1610): Money\.AmountOfSpec.INR.fromRatio.succeeds on 77 (10 mutations)
308.46 s
[really-safe-money-gen] coverage (1258/1610): Money\.AmountOfSpec.INR.GenValid (AmountOf * INR).genValid \:\: Gen (AmountOf * INR).only generates valid '(AmountOf * INR)'s (0 mutations)
308.46 s
[really-safe-money-gen] coverage (1259/1610): Money\.AmountOfSpec.INR.Eq (AmountOf * INR).(==) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is symmetric for "valid (AmountOf * INR)"s (0 mutations)
308.46 s
[really-safe-money-gen] coverage (1260/1610): Money\.AmountOfSpec.INR.Eq (AmountOf * INR).(==) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is transitive for "valid (AmountOf * INR)"s (0 mutations)
308.46 s
[really-safe-money-gen] coverage (1261/1610): Money\.AmountOfSpec.INR.Eq (AmountOf * INR).(==) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is reflexive for "valid (AmountOf * INR)"s (0 mutations)
308.46 s
[really-safe-money-gen] coverage (1262/1610): Money\.AmountOfSpec.INR.Eq (AmountOf * INR).(==) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (AmountOf * INR)"s (0 mutations)
308.46 s
[really-safe-money-gen] coverage (1263/1610): Money\.AmountOfSpec.INR.Eq (AmountOf * INR).(/=) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (AmountOf * INR)"s (0 mutations)
308.46 s
[really-safe-money-gen] coverage (1264/1610): Money\.AmountOfSpec.INR.Eq (AmountOf * INR).(/=) \:\: (AmountOf * INR) -> (AmountOf * INR) -> Bool.is antireflexive for "valid (AmountOf * INR)"s (0 mutations)
308.46 s
[really-safe-money-gen] coverage (1265/1610): Money\.AmountOfSpec.INR.USD.convert.produces valid amounts (6 mutations)
308.46 s
[really-safe-money-gen] coverage (1266/1610): Money\.AmountOfSpec.INR.USD.rate.produces valid amounts (3 mutations)
308.46 s
[really-safe-money-gen] coverage (1267/1610): Money\.AmountOfSpec.BTC.format.produces valid strings (0 mutations)
308.46 s
[really-safe-money-gen] coverage (1268/1610): Money\.AmountOfSpec.BTC.toMinimalQuantisations.roundtrips with fromMinimalQuantisations (0 mutations)
308.46 s
[really-safe-money-gen] coverage (1269/1610): Money\.AmountOfSpec.BTC.toMinimalQuantisations.produces valid Int64s (0 mutations)
308.46 s
[really-safe-money-gen] coverage (1270/1610): Money\.AmountOfSpec.BTC.INR.rate.produces valid amounts (3 mutations)
308.47 s
[really-safe-money-gen] coverage (1271/1610): Money\.AmountOfSpec.BTC.INR.convert.produces valid amounts (6 mutations)
308.47 s
[really-safe-money-gen] coverage (1272/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC).(<=) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1273/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC).(<=) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is transitive for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1274/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC).(<=) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is reflexive for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1275/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC).(<=) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is antisymmetric for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1276/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC)."min \:\: (AmountOf * BTC -> AmountOf * BTC -> AmountOf * BTC)".is equivalent to (\\a b -> if a <= b then a else b) for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1277/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC).(>=) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is antisymmetric for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1278/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC).(>=) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is reflexive for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1279/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC).(>=) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1280/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC).(>=) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is transitive for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1281/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC)."max \:\: (AmountOf * BTC -> AmountOf * BTC -> AmountOf * BTC)".is equivalent to (\\a b -> if a >= b then a else b) for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1282/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC).(<) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1283/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC).(<) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is antireflexive for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1284/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC).(<) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is transitive for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1285/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC).(>) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is antireflexive for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1286/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC).(>) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is transitive for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1287/1610): Money\.AmountOfSpec.BTC.Ord (AmountOf * BTC).(>) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid (AmountOf * BTC)"'s (0 mutations)
308.47 s
[really-safe-money-gen] coverage (1288/1610): Money\.AmountOfSpec.BTC.fromRatio.roundtrips with toRatio (10 mutations)
308.47 s
[really-safe-money-gen] coverage (1289/1610): Money\.AmountOfSpec.BTC.fromRatio.fails on NaN (2 mutations)
308.47 s
[really-safe-money-gen] coverage (1290/1610): Money\.AmountOfSpec.BTC.fromRatio.succeeds on 77 (10 mutations)
308.47 s
[really-safe-money-gen] coverage (1291/1610): Money\.AmountOfSpec.BTC.fromRatio.succeeds on 0 (10 mutations)
308.47 s
[really-safe-money-gen] coverage (1292/1610): Money\.AmountOfSpec.BTC.fromRatio.succeeds on 1 (10 mutations)
308.47 s
[really-safe-money-gen] coverage (1293/1610): Money\.AmountOfSpec.BTC.fromRatio.produces valid AmountOfs (10 mutations)
308.47 s
[really-safe-money-gen] coverage (1294/1610): Money\.AmountOfSpec.BTC.fromRatio.fails on +Infinity (2 mutations)
308.47 s
[really-safe-money-gen] coverage (1295/1610): Money\.AmountOfSpec.BTC.fromRatio.fails on 7\.123 (7 mutations)
308.48 s
[really-safe-money-gen] coverage (1296/1610): Money\.AmountOfSpec.BTC.CHF.convert.produces valid amounts (6 mutations)
308.48 s
[really-safe-money-gen] coverage (1297/1610): Money\.AmountOfSpec.BTC.CHF.rate.produces valid amounts (3 mutations)
308.48 s
[really-safe-money-gen] coverage (1298/1610): Money\.AmountOfSpec.BTC.fromRational.fails on NaN (2 mutations)
308.48 s
[really-safe-money-gen] coverage (1299/1610): Money\.AmountOfSpec.BTC.fromRational.produces valid Amounts (10 mutations)
308.48 s
[really-safe-money-gen] coverage (1300/1610): Money\.AmountOfSpec.BTC.fromRational.fails on -1 (4 mutations)
308.48 s
[really-safe-money-gen] coverage (1301/1610): Money\.AmountOfSpec.BTC.fromRational.succeeds on 1 (10 mutations)
308.48 s
[really-safe-money-gen] coverage (1302/1610): Money\.AmountOfSpec.BTC.fromRational.fails on +Infinity (2 mutations)
308.48 s
[really-safe-money-gen] coverage (1303/1610): Money\.AmountOfSpec.BTC.fromRational.fails on -Infinity (2 mutations)
308.48 s
[really-safe-money-gen] coverage (1304/1610): Money\.AmountOfSpec.BTC.fromRational.succeeds on 0 (10 mutations)
308.48 s
[really-safe-money-gen] coverage (1305/1610): Money\.AmountOfSpec.BTC.fromRational.roundtrips with toRational (10 mutations)
308.48 s
[really-safe-money-gen] coverage (1306/1610): Money\.AmountOfSpec.BTC.fromDouble.fails on +Infinity (6 mutations)
308.48 s
[really-safe-money-gen] coverage (1307/1610): Money\.AmountOfSpec.BTC.fromDouble.succeeds on 1 (15 mutations)
308.48 s
[really-safe-money-gen] coverage (1308/1610): Money\.AmountOfSpec.BTC.fromDouble.produces valid amounts (15 mutations)
308.48 s
[really-safe-money-gen] coverage (1309/1610): Money\.AmountOfSpec.BTC.fromDouble.fails on -1 (2 mutations)
308.48 s
[really-safe-money-gen] coverage (1310/1610): Money\.AmountOfSpec.BTC.fromDouble.succeeds on 0 (15 mutations)
308.48 s
[really-safe-money-gen] coverage (1311/1610): Money\.AmountOfSpec.BTC.fromDouble.fails on -Infinity (2 mutations)
308.48 s
[really-safe-money-gen] coverage (1312/1610): Money\.AmountOfSpec.BTC.fromDouble.fails on NaN (4 mutations)
308.48 s
[really-safe-money-gen] coverage (1313/1610): Money\.AmountOfSpec.BTC.GenValid (AmountOf * BTC).genValid \:\: Gen (AmountOf * BTC).only generates valid '(AmountOf * BTC)'s (0 mutations)
308.48 s
[really-safe-money-gen] coverage (1314/1610): Money\.AmountOfSpec.BTC.USD.rate.produces valid amounts (3 mutations)
308.49 s
[really-safe-money-gen] coverage (1315/1610): Money\.AmountOfSpec.BTC.USD.convert.produces valid amounts (6 mutations)
308.49 s
[really-safe-money-gen] coverage (1316/1610): Money\.AmountOfSpec.BTC.Eq (AmountOf * BTC).(==) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is reflexive for "valid (AmountOf * BTC)"s (0 mutations)
308.49 s
[really-safe-money-gen] coverage (1317/1610): Money\.AmountOfSpec.BTC.Eq (AmountOf * BTC).(==) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is transitive for "valid (AmountOf * BTC)"s (0 mutations)
308.49 s
[really-safe-money-gen] coverage (1318/1610): Money\.AmountOfSpec.BTC.Eq (AmountOf * BTC).(==) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (AmountOf * BTC)"s (0 mutations)
308.49 s
[really-safe-money-gen] coverage (1319/1610): Money\.AmountOfSpec.BTC.Eq (AmountOf * BTC).(==) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is symmetric for "valid (AmountOf * BTC)"s (0 mutations)
308.49 s
[really-safe-money-gen] coverage (1320/1610): Money\.AmountOfSpec.BTC.Eq (AmountOf * BTC).(/=) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (AmountOf * BTC)"s (0 mutations)
308.49 s
[really-safe-money-gen] coverage (1321/1610): Money\.AmountOfSpec.BTC.Eq (AmountOf * BTC).(/=) \:\: (AmountOf * BTC) -> (AmountOf * BTC) -> Bool.is antireflexive for "valid (AmountOf * BTC)"s (0 mutations)
308.49 s
[really-safe-money-gen] coverage (1322/1610): Money\.AmountOfSpec.BTC.add.has a right-identity\: zero (3 mutations)
308.49 s
[really-safe-money-gen] coverage (1323/1610): Money\.AmountOfSpec.BTC.add.has a left-identity\: zero (3 mutations)
308.49 s
[really-safe-money-gen] coverage (1324/1610): Money\.AmountOfSpec.BTC.add.matches what you would get with Integer, if nothing fails (3 mutations)
308.49 s
[really-safe-money-gen] coverage (1325/1610): Money\.AmountOfSpec.BTC.add.is commutative (3 mutations)
308.49 s
[really-safe-money-gen] coverage (1326/1610): Money\.AmountOfSpec.BTC.add.produces valid amounts (3 mutations)
308.49 s
[really-safe-money-gen] coverage (1327/1610): Money\.AmountOfSpec.BTC.add.is associative when both succeed (3 mutations)
308.49 s
[really-safe-money-gen] coverage (1328/1610): Money\.AmountOfSpec.BTC.ADA.convert.produces valid amounts (6 mutations)
308.50 s
[really-safe-money-gen] coverage (1329/1610): Money\.AmountOfSpec.BTC.ADA.rate.produces valid amounts (3 mutations)
308.50 s
[really-safe-money-gen] coverage (1330/1610): Money\.AmountOfSpec.BTC.zero.is valid (0 mutations)
308.50 s
[really-safe-money-gen] coverage (1331/1610): Money\.AmountOfSpec.BTC.BTC.convert.produces valid amounts (6 mutations)
308.50 s
[really-safe-money-gen] coverage (1332/1610): Money\.AmountOfSpec.BTC.BTC.rate.produces valid amounts (3 mutations)
308.50 s
[really-safe-money-gen] coverage (1333/1610): Money\.AmountOfSpec.BTC.toDouble.produces valid Doubles (0 mutations)
308.50 s
[really-safe-money-gen] coverage (1334/1610): Money\.AmountOfSpec.BTC.Show (AmountOf * BTC) and Read (AmountOf * BTC).are implemented such that read \. show == id for valid values (1 mutations)
308.50 s
[really-safe-money-gen] coverage (1335/1610): Money\.AmountOfSpec.BTC.subtract.matches what you would get with Integer, if nothing fails (3 mutations)
308.50 s
[really-safe-money-gen] coverage (1336/1610): Money\.AmountOfSpec.BTC.fromMinimalQuantisations.produces valid amounts (0 mutations)
308.50 s
[really-safe-money-gen] coverage (1337/1610): Money\.AmountOfSpec.BTC.toRatio.produces valid Rationals when the quantisation factor is nonzero (0 mutations)
308.50 s
[really-safe-money-gen] coverage (1338/1610): Money\.AmountOfSpec.BTC.sum.matches what you would get with Integer, if nothing fails (3 mutations)
308.50 s
[really-safe-money-gen] coverage (1339/1610): Money\.AmountOfSpec.BTC.sum.produces valid amounts (3 mutations)
308.51 s
[really-safe-money-gen] coverage (1340/1610): Money\.AmountOfSpec.BTC.distribute.Eq (Distribution (AmountOf * BTC)).(/=) \:\: (Distribution (AmountOf * BTC)) -> (Distribution (AmountOf * BTC)) -> Bool.is antireflexive for "valid (Distribution (AmountOf * BTC))"s (1 mutations)
308.51 s
[really-safe-money-gen] coverage (1341/1610): Money\.AmountOfSpec.BTC.distribute.Eq (Distribution (AmountOf * BTC)).(/=) \:\: (Distribution (AmountOf * BTC)) -> (Distribution (AmountOf * BTC)) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (Distribution (AmountOf * BTC))"s (1 mutations)
308.51 s
[really-safe-money-gen] coverage (1342/1610): Money\.AmountOfSpec.BTC.distribute.Eq (Distribution (AmountOf * BTC)).(==) \:\: (Distribution (AmountOf * BTC)) -> (Distribution (AmountOf * BTC)) -> Bool.is reflexive for "valid (Distribution (AmountOf * BTC))"s (1 mutations)
308.51 s
[really-safe-money-gen] coverage (1343/1610): Money\.AmountOfSpec.BTC.distribute.Eq (Distribution (AmountOf * BTC)).(==) \:\: (Distribution (AmountOf * BTC)) -> (Distribution (AmountOf * BTC)) -> Bool.is symmetric for "valid (Distribution (AmountOf * BTC))"s (1 mutations)
308.51 s
[really-safe-money-gen] coverage (1344/1610): Money\.AmountOfSpec.BTC.distribute.Eq (Distribution (AmountOf * BTC)).(==) \:\: (Distribution (AmountOf * BTC)) -> (Distribution (AmountOf * BTC)) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (Distribution (AmountOf * BTC))"s (1 mutations)
308.51 s
[really-safe-money-gen] coverage (1345/1610): Money\.AmountOfSpec.BTC.distribute.Eq (Distribution (AmountOf * BTC)).(==) \:\: (Distribution (AmountOf * BTC)) -> (Distribution (AmountOf * BTC)) -> Bool.is transitive for "valid (Distribution (AmountOf * BTC))"s (1 mutations)
308.51 s
[really-safe-money-gen] coverage (1346/1610): Money\.AmountOfSpec.BTC.distribute.produces valid amounts (6 mutations)
308.51 s
[really-safe-money-gen] coverage (1347/1610): Money\.AmountOfSpec.BTC.distribute.produces results that sum up to the greater whole (9 mutations)
308.51 s
[really-safe-money-gen] coverage (1348/1610): Money\.AmountOfSpec.BTC.distribute.Show (Distribution (AmountOf * BTC)) and Read (Distribution (AmountOf * BTC)).are implemented such that read \. show == id for valid values (1 mutations)
308.51 s
[really-safe-money-gen] coverage (1349/1610): Money\.AmountOfSpec.BTC.toRational.produces valid Rationals (0 mutations)
308.52 s
[really-safe-money-gen] coverage (1350/1610): Money\.AmountOfSpec.BTC.fraction.produces valid amounts (3 mutations)
308.52 s
[really-safe-money-gen] coverage (1351/1610): Money\.AmountOfSpec.BTC.multiply.is absorbed by 0 (3 mutations)
308.52 s
[really-safe-money-gen] coverage (1352/1610): Money\.AmountOfSpec.BTC.multiply.has an identity\: 1 (3 mutations)
308.52 s
[really-safe-money-gen] coverage (1353/1610): Money\.AmountOfSpec.BTC.multiply.produces valid amounts (3 mutations)
308.52 s
[really-safe-money-gen] coverage (1354/1610): Money\.AmountOfSpec.BTC.multiply.matches what you would get with Integer, if nothing fails (3 mutations)
308.52 s
[really-safe-money-gen] coverage (1355/1610): Money\.AmountOfSpec.BTC.multiply.is distributive with add when both succeed (6 mutations)
308.52 s
[really-safe-money-gen] coverage (1356/1610): Money\.AmountOfSpec.CHF.INR.convert.produces valid amounts (6 mutations)
308.52 s
[really-safe-money-gen] coverage (1357/1610): Money\.AmountOfSpec.CHF.INR.rate.produces valid amounts (3 mutations)
308.52 s
[really-safe-money-gen] coverage (1358/1610): Money\.AmountOfSpec.CHF.USD.convert.produces valid amounts (6 mutations)
308.53 s
[really-safe-money-gen] coverage (1359/1610): Money\.AmountOfSpec.CHF.USD.rate.produces valid amounts (3 mutations)
308.53 s
[really-safe-money-gen] coverage (1360/1610): Money\.AmountOfSpec.CHF.fromMinimalQuantisations.produces valid amounts (0 mutations)
308.53 s
[really-safe-money-gen] coverage (1361/1610): Money\.AmountOfSpec.CHF.fromRatio.succeeds on 0 (10 mutations)
308.53 s
[really-safe-money-gen] coverage (1362/1610): Money\.AmountOfSpec.CHF.fromRatio.fails on +Infinity (2 mutations)
308.53 s
[really-safe-money-gen] coverage (1363/1610): Money\.AmountOfSpec.CHF.fromRatio.fails on NaN (2 mutations)
308.53 s
[really-safe-money-gen] coverage (1364/1610): Money\.AmountOfSpec.CHF.fromRatio.roundtrips with toRatio (10 mutations)
308.53 s
[really-safe-money-gen] coverage (1365/1610): Money\.AmountOfSpec.CHF.fromRatio.succeeds on 1 (10 mutations)
308.53 s
[really-safe-money-gen] coverage (1366/1610): Money\.AmountOfSpec.CHF.fromRatio.fails on 7\.123 (7 mutations)
308.53 s
[really-safe-money-gen] coverage (1367/1610): Money\.AmountOfSpec.CHF.fromRatio.succeeds on 77 (10 mutations)
308.53 s
[really-safe-money-gen] coverage (1368/1610): Money\.AmountOfSpec.CHF.fromRatio.produces valid AmountOfs (10 mutations)
308.53 s
[really-safe-money-gen] coverage (1369/1610): Money\.AmountOfSpec.CHF.fraction.produces valid amounts (3 mutations)
308.53 s
[really-safe-money-gen] coverage (1370/1610): Money\.AmountOfSpec.CHF.multiply.has an identity\: 1 (3 mutations)
308.53 s
[really-safe-money-gen] coverage (1371/1610): Money\.AmountOfSpec.CHF.multiply.is absorbed by 0 (3 mutations)
308.53 s
[really-safe-money-gen] coverage (1372/1610): Money\.AmountOfSpec.CHF.multiply.is distributive with add when both succeed (6 mutations)
308.53 s
[really-safe-money-gen] coverage (1373/1610): Money\.AmountOfSpec.CHF.multiply.matches what you would get with Integer, if nothing fails (3 mutations)
308.54 s
[really-safe-money-gen] coverage (1374/1610): Money\.AmountOfSpec.CHF.multiply.produces valid amounts (3 mutations)
308.54 s
[really-safe-money-gen] coverage (1375/1610): Money\.AmountOfSpec.CHF.toRatio.produces valid Rationals when the quantisation factor is nonzero (0 mutations)
308.54 s
[really-safe-money-gen] coverage (1376/1610): Money\.AmountOfSpec.CHF.fromRational.fails on +Infinity (2 mutations)
308.54 s
[really-safe-money-gen] coverage (1377/1610): Money\.AmountOfSpec.CHF.fromRational.produces valid Amounts (10 mutations)
308.54 s
[really-safe-money-gen] coverage (1378/1610): Money\.AmountOfSpec.CHF.fromRational.succeeds on 0 (10 mutations)
308.54 s
[really-safe-money-gen] coverage (1379/1610): Money\.AmountOfSpec.CHF.fromRational.fails on -Infinity (2 mutations)
308.54 s
[really-safe-money-gen] coverage (1380/1610): Money\.AmountOfSpec.CHF.fromRational.fails on -1 (4 mutations)
308.54 s
[really-safe-money-gen] coverage (1381/1610): Money\.AmountOfSpec.CHF.fromRational.fails on NaN (2 mutations)
308.54 s
[really-safe-money-gen] coverage (1382/1610): Money\.AmountOfSpec.CHF.fromRational.roundtrips with toRational (10 mutations)
308.54 s
[really-safe-money-gen] coverage (1383/1610): Money\.AmountOfSpec.CHF.fromRational.succeeds on 1 (10 mutations)
308.54 s
[really-safe-money-gen] coverage (1384/1610): Money\.AmountOfSpec.CHF.Eq (AmountOf * CHF).(==) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (AmountOf * CHF)"s (0 mutations)
308.54 s
[really-safe-money-gen] coverage (1385/1610): Money\.AmountOfSpec.CHF.Eq (AmountOf * CHF).(==) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is symmetric for "valid (AmountOf * CHF)"s (0 mutations)
308.54 s
[really-safe-money-gen] coverage (1386/1610): Money\.AmountOfSpec.CHF.Eq (AmountOf * CHF).(==) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is reflexive for "valid (AmountOf * CHF)"s (0 mutations)
308.54 s
[really-safe-money-gen] coverage (1387/1610): Money\.AmountOfSpec.CHF.Eq (AmountOf * CHF).(==) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is transitive for "valid (AmountOf * CHF)"s (0 mutations)
308.54 s
[really-safe-money-gen] coverage (1388/1610): Money\.AmountOfSpec.CHF.Eq (AmountOf * CHF).(/=) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is antireflexive for "valid (AmountOf * CHF)"s (0 mutations)
308.54 s
[really-safe-money-gen] coverage (1389/1610): Money\.AmountOfSpec.CHF.Eq (AmountOf * CHF).(/=) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (AmountOf * CHF)"s (0 mutations)
308.55 s
[really-safe-money-gen] coverage (1390/1610): Money\.AmountOfSpec.CHF.sum.matches what you would get with Integer, if nothing fails (3 mutations)
308.55 s
[really-safe-money-gen] coverage (1391/1610): Money\.AmountOfSpec.CHF.sum.produces valid amounts (3 mutations)
308.55 s
[really-safe-money-gen] coverage (1392/1610): Money\.AmountOfSpec.CHF.BTC.convert.produces valid amounts (6 mutations)
308.55 s
[really-safe-money-gen] coverage (1393/1610): Money\.AmountOfSpec.CHF.BTC.rate.produces valid amounts (3 mutations)
308.55 s
[really-safe-money-gen] coverage (1394/1610): Money\.AmountOfSpec.CHF.zero.is valid (0 mutations)
308.55 s
[really-safe-money-gen] coverage (1395/1610): Money\.AmountOfSpec.CHF.subtract.matches what you would get with Integer, if nothing fails (3 mutations)
308.55 s
[really-safe-money-gen] coverage (1396/1610): Money\.AmountOfSpec.CHF.toDouble.produces valid Doubles (0 mutations)
308.56 s
[really-safe-money-gen] coverage (1397/1610): Money\.AmountOfSpec.CHF.toRational.produces valid Rationals (0 mutations)
308.56 s
[really-safe-money-gen] coverage (1398/1610): Money\.AmountOfSpec.CHF.CHF.convert.produces valid amounts (6 mutations)
308.56 s
[really-safe-money-gen] coverage (1399/1610): Money\.AmountOfSpec.CHF.CHF.rate.produces valid amounts (3 mutations)
308.56 s
[really-safe-money-gen] coverage (1400/1610): Money\.AmountOfSpec.CHF.Show (AmountOf * CHF) and Read (AmountOf * CHF).are implemented such that read \. show == id for valid values (1 mutations)
308.56 s
[really-safe-money-gen] coverage (1401/1610): Money\.AmountOfSpec.CHF.format.produces valid strings (0 mutations)
308.56 s
[really-safe-money-gen] coverage (1402/1610): Money\.AmountOfSpec.CHF.fromDouble.succeeds on 1 (15 mutations)
308.57 s
[really-safe-money-gen] coverage (1403/1610): Money\.AmountOfSpec.CHF.fromDouble.produces valid amounts (15 mutations)
308.57 s
[really-safe-money-gen] coverage (1404/1610): Money\.AmountOfSpec.CHF.fromDouble.fails on +Infinity (6 mutations)
308.57 s
[really-safe-money-gen] coverage (1405/1610): Money\.AmountOfSpec.CHF.fromDouble.succeeds on 0 (15 mutations)
308.57 s
[really-safe-money-gen] coverage (1406/1610): Money\.AmountOfSpec.CHF.fromDouble.fails on -1 (2 mutations)
308.57 s
[really-safe-money-gen] coverage (1407/1610): Money\.AmountOfSpec.CHF.fromDouble.fails on NaN (4 mutations)
308.57 s
[really-safe-money-gen] coverage (1408/1610): Money\.AmountOfSpec.CHF.fromDouble.fails on -Infinity (2 mutations)
308.57 s
[really-safe-money-gen] coverage (1409/1610): Money\.AmountOfSpec.CHF.ADA.rate.produces valid amounts (3 mutations)
308.57 s
[really-safe-money-gen] coverage (1410/1610): Money\.AmountOfSpec.CHF.ADA.convert.produces valid amounts (6 mutations)
308.57 s
[really-safe-money-gen] coverage (1411/1610): Money\.AmountOfSpec.CHF.toMinimalQuantisations.produces valid Int64s (0 mutations)
308.57 s
[really-safe-money-gen] coverage (1412/1610): Money\.AmountOfSpec.CHF.toMinimalQuantisations.roundtrips with fromMinimalQuantisations (0 mutations)
308.57 s
[really-safe-money-gen] coverage (1413/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF)."max \:\: (AmountOf * CHF -> AmountOf * CHF -> AmountOf * CHF)".is equivalent to (\\a b -> if a >= b then a else b) for "valid (AmountOf * CHF)"'s (0 mutations)
308.57 s
[really-safe-money-gen] coverage (1414/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF)."min \:\: (AmountOf * CHF -> AmountOf * CHF -> AmountOf * CHF)".is equivalent to (\\a b -> if a <= b then a else b) for "valid (AmountOf * CHF)"'s (0 mutations)
308.57 s
[really-safe-money-gen] coverage (1415/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF).(>) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid (AmountOf * CHF)"'s (0 mutations)
308.57 s
[really-safe-money-gen] coverage (1416/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF).(>) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is antireflexive for "valid (AmountOf * CHF)"'s (0 mutations)
308.57 s
[really-safe-money-gen] coverage (1417/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF).(>) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is transitive for "valid (AmountOf * CHF)"'s (0 mutations)
308.57 s
[really-safe-money-gen] coverage (1418/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF).(>=) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is transitive for "valid (AmountOf * CHF)"'s (0 mutations)
308.57 s
[really-safe-money-gen] coverage (1419/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF).(>=) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid (AmountOf * CHF)"'s (0 mutations)
308.57 s
[really-safe-money-gen] coverage (1420/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF).(>=) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is antisymmetric for "valid (AmountOf * CHF)"'s (0 mutations)
308.57 s
[really-safe-money-gen] coverage (1421/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF).(>=) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is reflexive for "valid (AmountOf * CHF)"'s (0 mutations)
308.57 s
[really-safe-money-gen] coverage (1422/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF).(<) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is antireflexive for "valid (AmountOf * CHF)"'s (0 mutations)
308.57 s
[really-safe-money-gen] coverage (1423/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF).(<) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid (AmountOf * CHF)"'s (0 mutations)
308.57 s
[really-safe-money-gen] coverage (1424/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF).(<) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is transitive for "valid (AmountOf * CHF)"'s (0 mutations)
308.58 s
[really-safe-money-gen] coverage (1425/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF).(<=) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is transitive for "valid (AmountOf * CHF)"'s (0 mutations)
308.58 s
[really-safe-money-gen] coverage (1426/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF).(<=) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid (AmountOf * CHF)"'s (0 mutations)
308.58 s
[really-safe-money-gen] coverage (1427/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF).(<=) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is reflexive for "valid (AmountOf * CHF)"'s (0 mutations)
308.58 s
[really-safe-money-gen] coverage (1428/1610): Money\.AmountOfSpec.CHF.Ord (AmountOf * CHF).(<=) \:\: (AmountOf * CHF) -> (AmountOf * CHF) -> Bool.is antisymmetric for "valid (AmountOf * CHF)"'s (0 mutations)
308.58 s
[really-safe-money-gen] coverage (1429/1610): Money\.AmountOfSpec.CHF.GenValid (AmountOf * CHF).genValid \:\: Gen (AmountOf * CHF).only generates valid '(AmountOf * CHF)'s (0 mutations)
308.58 s
[really-safe-money-gen] coverage (1430/1610): Money\.AmountOfSpec.CHF.distribute.Show (Distribution (AmountOf * CHF)) and Read (Distribution (AmountOf * CHF)).are implemented such that read \. show == id for valid values (1 mutations)
308.58 s
[really-safe-money-gen] coverage (1431/1610): Money\.AmountOfSpec.CHF.distribute.produces valid amounts (6 mutations)
308.58 s
[really-safe-money-gen] coverage (1432/1610): Money\.AmountOfSpec.CHF.distribute.produces results that sum up to the greater whole (9 mutations)
308.59 s
[really-safe-money-gen] coverage (1433/1610): Money\.AmountOfSpec.CHF.distribute.Eq (Distribution (AmountOf * CHF)).(/=) \:\: (Distribution (AmountOf * CHF)) -> (Distribution (AmountOf * CHF)) -> Bool.is antireflexive for "valid (Distribution (AmountOf * CHF))"s (1 mutations)
308.59 s
[really-safe-money-gen] coverage (1434/1610): Money\.AmountOfSpec.CHF.distribute.Eq (Distribution (AmountOf * CHF)).(/=) \:\: (Distribution (AmountOf * CHF)) -> (Distribution (AmountOf * CHF)) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (Distribution (AmountOf * CHF))"s (1 mutations)
308.59 s
[really-safe-money-gen] coverage (1435/1610): Money\.AmountOfSpec.CHF.distribute.Eq (Distribution (AmountOf * CHF)).(==) \:\: (Distribution (AmountOf * CHF)) -> (Distribution (AmountOf * CHF)) -> Bool.is symmetric for "valid (Distribution (AmountOf * CHF))"s (1 mutations)
308.59 s
[really-safe-money-gen] coverage (1436/1610): Money\.AmountOfSpec.CHF.distribute.Eq (Distribution (AmountOf * CHF)).(==) \:\: (Distribution (AmountOf * CHF)) -> (Distribution (AmountOf * CHF)) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (Distribution (AmountOf * CHF))"s (1 mutations)
308.59 s
[really-safe-money-gen] coverage (1437/1610): Money\.AmountOfSpec.CHF.distribute.Eq (Distribution (AmountOf * CHF)).(==) \:\: (Distribution (AmountOf * CHF)) -> (Distribution (AmountOf * CHF)) -> Bool.is reflexive for "valid (Distribution (AmountOf * CHF))"s (1 mutations)
308.59 s
[really-safe-money-gen] coverage (1438/1610): Money\.AmountOfSpec.CHF.distribute.Eq (Distribution (AmountOf * CHF)).(==) \:\: (Distribution (AmountOf * CHF)) -> (Distribution (AmountOf * CHF)) -> Bool.is transitive for "valid (Distribution (AmountOf * CHF))"s (1 mutations)
308.59 s
[really-safe-money-gen] coverage (1439/1610): Money\.AmountOfSpec.CHF.add.is commutative (3 mutations)
308.59 s
[really-safe-money-gen] coverage (1440/1610): Money\.AmountOfSpec.CHF.add.has a left-identity\: zero (3 mutations)
308.59 s
[really-safe-money-gen] coverage (1441/1610): Money\.AmountOfSpec.CHF.add.is associative when both succeed (3 mutations)
308.59 s
[really-safe-money-gen] coverage (1442/1610): Money\.AmountOfSpec.CHF.add.produces valid amounts (3 mutations)
308.59 s
[really-safe-money-gen] coverage (1443/1610): Money\.AmountOfSpec.CHF.add.matches what you would get with Integer, if nothing fails (3 mutations)
308.59 s
[really-safe-money-gen] coverage (1444/1610): Money\.AmountOfSpec.CHF.add.has a right-identity\: zero (3 mutations)
308.73 s
[really-safe-money-gen] coverage (1445/1610): Money\.AmountSpec.fraction.Produces a result that has been rounded in the right direction when using RoundDown (0 mutations)
308.73 s
[really-safe-money-gen] coverage (1446/1610): Money\.AmountSpec.fraction.Correctly fractions 101 with 1 % 100 (3 mutations)
308.94 s
[really-safe-money-gen] coverage (1447/1610): Money\.AmountSpec.fraction.Produces a result that can be multiplied back (3 mutations)
309.12 s
[really-safe-money-gen] coverage (1448/1610): Money\.AmountSpec.fraction.produces valid amounts (3 mutations)
309.13 s
[really-safe-money-gen] coverage (1449/1610): Money\.AmountSpec.fraction.Correctly fractions 100 with 1 % 100 (3 mutations)
309.26 s
[really-safe-money-gen] coverage (1450/1610): Money\.AmountSpec.fraction.Produces a result that has been rounded in the right direction when using RoundUp (0 mutations)
309.26 s
[really-safe-money-gen] coverage (1451/1610): Money\.AmountSpec.format.formats 1 correctly with quantisation factor 1 (0 mutations)
309.26 s
[really-safe-money-gen] coverage (1452/1610): Money\.AmountSpec.format.formats 1 correctly with quantisation factor 10 (0 mutations)
309.40 s
[really-safe-money-gen] coverage (1453/1610): Money\.AmountSpec.format.produces valid strings (0 mutations)
309.60 s
[really-safe-money-gen] coverage (1454/1610): Money\.AmountSpec.fromRatio.produces valid Amounts (10 mutations)
309.89 s
[really-safe-money-gen] coverage (1455/1610): Money\.AmountSpec.fromRatio.roundtrips with toRatio (10 mutations)
310.09 s
[really-safe-money-gen] coverage (1456/1610): Money\.AmountSpec.fromRatio.succeeds on 1 (10 mutations)
310.17 s
[really-safe-money-gen] coverage (1457/1610): Money\.AmountSpec.fromRatio.fails on NaN (2 mutations)
310.25 s
[really-safe-money-gen] coverage (1458/1610): Money\.AmountSpec.fromRatio.fails on +Infinity (2 mutations)
310.25 s
[really-safe-money-gen] coverage (1459/1610): Money\.AmountSpec.fromRatio.succeeds on 77\.02 with quantisation factor 100 (10 mutations)
310.45 s
[really-safe-money-gen] coverage (1460/1610): Money\.AmountSpec.fromRatio.succeeds on 0 (10 mutations)
310.45 s
[really-safe-money-gen] coverage (1461/1610): Money\.AmountSpec.fromRatio.fails on 7\.123 with quantisation factor 10 (7 mutations)
310.45 s
[really-safe-money-gen] coverage (1462/1610): Money\.AmountSpec.distribute.correctly distributes 3 into 3 (4 mutations)
310.70 s
[really-safe-money-gen] coverage (1463/1610): Money\.AmountSpec.distribute.produces results that sum up to the greater whole (9 mutations)
311.10 s
[really-safe-money-gen] coverage (1464/1610): Money\.AmountSpec.distribute.Show (Distribution Amount) and Read (Distribution Amount).are implemented such that read \. show == id for valid values (1 mutations)
311.10 s
[really-safe-money-gen] coverage (1465/1610): Money\.AmountSpec.distribute.correctly distributes 10 into 4 (4 mutations)
311.16 s
[really-safe-money-gen] coverage (1466/1610): Money\.AmountSpec.distribute.GenValid (Distribution Amount).genValid \:\: Gen (Distribution Amount).only generates valid '(Distribution Amount)'s (3 mutations)
311.16 s
[really-safe-money-gen] coverage (1467/1610): Money\.AmountSpec.distribute.correctly distributes 5 into 3 (4 mutations)
311.20 s
[really-safe-money-gen] coverage (1468/1610): Money\.AmountSpec.distribute.Eq (Distribution Amount).(==) \:\: (Distribution Amount) -> (Distribution Amount) -> Bool.is symmetric for "valid (Distribution Amount)"s (1 mutations)
311.25 s
[really-safe-money-gen] coverage (1469/1610): Money\.AmountSpec.distribute.Eq (Distribution Amount).(==) \:\: (Distribution Amount) -> (Distribution Amount) -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid (Distribution Amount)"s (1 mutations)
311.31 s
[really-safe-money-gen] coverage (1470/1610): Money\.AmountSpec.distribute.Eq (Distribution Amount).(==) \:\: (Distribution Amount) -> (Distribution Amount) -> Bool.is reflexive for "valid (Distribution Amount)"s (1 mutations)
311.34 s
[really-safe-money-gen] coverage (1471/1610): Money\.AmountSpec.distribute.Eq (Distribution Amount).(==) \:\: (Distribution Amount) -> (Distribution Amount) -> Bool.is transitive for "valid (Distribution Amount)"s (1 mutations)
311.39 s
[really-safe-money-gen] coverage (1472/1610): Money\.AmountSpec.distribute.Eq (Distribution Amount).(/=) \:\: (Distribution Amount) -> (Distribution Amount) -> Bool.is antireflexive for "valid (Distribution Amount)"s (1 mutations)
311.43 s
[really-safe-money-gen] coverage (1473/1610): Money\.AmountSpec.distribute.Eq (Distribution Amount).(/=) \:\: (Distribution Amount) -> (Distribution Amount) -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid (Distribution Amount)"s (1 mutations)
311.49 s
[really-safe-money-gen] coverage (1474/1610): Money\.AmountSpec.distribute.produces valid amounts (6 mutations)
311.77 s
[really-safe-money-gen] coverage (1475/1610): Money\.AmountSpec.sum.produces valid amounts (3 mutations)
312.04 s
[really-safe-money-gen] coverage (1476/1610): Money\.AmountSpec.sum.matches what you would get with Integer, if nothing fails (3 mutations)
312.04 s
[really-safe-money-gen] coverage (1477/1610): Money\.AmountSpec.sum.fails to sum above maxBound (3 mutations)
312.04 s
[really-safe-money-gen] coverage (1478/1610): Money\.AmountSpec.sum.correctly sums [1,2,3] to 6 (3 mutations)
312.10 s
[really-safe-money-gen] coverage (1479/1610): Money\.AmountSpec.multiply.matches what you would get with Integer, if nothing fails (3 mutations)
312.10 s
[really-safe-money-gen] coverage (1480/1610): Money\.AmountSpec.multiply.fails for 2 * maxbound (3 mutations)
312.14 s
[really-safe-money-gen] coverage (1481/1610): Money\.AmountSpec.multiply.produces valid amounts (3 mutations)
312.19 s
[really-safe-money-gen] coverage (1482/1610): Money\.AmountSpec.multiply.is absorbed by 0 (3 mutations)
312.27 s
[really-safe-money-gen] coverage (1483/1610): Money\.AmountSpec.multiply.is distributive with add when both succeed (6 mutations)
312.32 s
[really-safe-money-gen] coverage (1484/1610): Money\.AmountSpec.multiply.has an identity\: 1 (3 mutations)
312.32 s
[really-safe-money-gen] coverage (1485/1610): Money\.AmountSpec.multiply.succeeds for 3 * 6 (3 mutations)
312.41 s
[really-safe-money-gen] coverage (1486/1610): Money\.AmountSpec.Show Amount and Read Amount.are implemented such that read \. show == id for valid values (1 mutations)
312.41 s
[really-safe-money-gen] coverage (1487/1610): Money\.AmountSpec.fromDouble.fails on really large numbers (9 mutations)
312.61 s
[really-safe-money-gen] coverage (1488/1610): Money\.AmountSpec.fromDouble.roundtrips with toDouble, back to double (15 mutations)
312.61 s
[really-safe-money-gen] coverage (1489/1610): Money\.AmountSpec.fromDouble.succeeds on 77\.02 with quantisation factor 100 (15 mutations)
312.67 s
[really-safe-money-gen] coverage (1490/1610): Money\.AmountSpec.fromDouble.produces valid amounts (15 mutations)
312.67 s
[really-safe-money-gen] coverage (1491/1610): Money\.AmountSpec.fromDouble.fails on really large numbers:1 (6 mutations)
312.72 s
[really-safe-money-gen] coverage (1492/1610): Money\.AmountSpec.fromDouble.fails on NaN (4 mutations)
312.76 s
[really-safe-money-gen] coverage (1493/1610): Money\.AmountSpec.fromDouble.fails on -1 (2 mutations)
312.76 s
[really-safe-money-gen] coverage (1494/1610): Money\.AmountSpec.fromDouble.fails on 7\.123 with quantisation factor 10 (12 mutations)
312.79 s
[really-safe-money-gen] coverage (1495/1610): Money\.AmountSpec.fromDouble.fails on -Infinity (2 mutations)
312.84 s
[really-safe-money-gen] coverage (1496/1610): Money\.AmountSpec.fromDouble.fails on +Infinity (6 mutations)
312.96 s
[really-safe-money-gen] coverage (1497/1610): Money\.AmountSpec.fromDouble.succeeds on 1 (15 mutations)
313.06 s
[really-safe-money-gen] coverage (1498/1610): Money\.AmountSpec.fromDouble.succeeds on 0 (15 mutations)
313.08 s
[really-safe-money-gen] coverage (1499/1610): Money\.AmountSpec.Ord Amount.(<=) \:\: Amount -> Amount -> Bool.is reflexive for "valid Amount"'s (0 mutations)
313.11 s
[really-safe-money-gen] coverage (1500/1610): Money\.AmountSpec.Ord Amount.(<=) \:\: Amount -> Amount -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid Amount"'s (0 mutations)
313.13 s
[really-safe-money-gen] coverage (1501/1610): Money\.AmountSpec.Ord Amount.(<=) \:\: Amount -> Amount -> Bool.is antisymmetric for "valid Amount"'s (0 mutations)
313.16 s
[really-safe-money-gen] coverage (1502/1610): Money\.AmountSpec.Ord Amount.(<=) \:\: Amount -> Amount -> Bool.is transitive for "valid Amount"'s (0 mutations)
313.18 s
[really-safe-money-gen] coverage (1503/1610): Money\.AmountSpec.Ord Amount.(>=) \:\: Amount -> Amount -> Bool.is transitive for "valid Amount"'s (0 mutations)
313.21 s
[really-safe-money-gen] coverage (1504/1610): Money\.AmountSpec.Ord Amount.(>=) \:\: Amount -> Amount -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid Amount"'s (0 mutations)
313.23 s
[really-safe-money-gen] coverage (1505/1610): Money\.AmountSpec.Ord Amount.(>=) \:\: Amount -> Amount -> Bool.is antisymmetric for "valid Amount"'s (0 mutations)
313.25 s
[really-safe-money-gen] coverage (1506/1610): Money\.AmountSpec.Ord Amount.(>=) \:\: Amount -> Amount -> Bool.is reflexive for "valid Amount"'s (0 mutations)
313.28 s
[really-safe-money-gen] coverage (1507/1610): Money\.AmountSpec.Ord Amount."max \:\: (Amount -> Amount -> Amount)".is equivalent to (\\a b -> if a >= b then a else b) for "valid Amount"'s (0 mutations)
313.30 s
[really-safe-money-gen] coverage (1508/1610): Money\.AmountSpec.Ord Amount.(<) \:\: Amount -> Amount -> Bool.is antireflexive for "valid Amount"'s (0 mutations)
313.33 s
[really-safe-money-gen] coverage (1509/1610): Money\.AmountSpec.Ord Amount.(<) \:\: Amount -> Amount -> Bool.is transitive for "valid Amount"'s (0 mutations)
313.35 s
[really-safe-money-gen] coverage (1510/1610): Money\.AmountSpec.Ord Amount.(<) \:\: Amount -> Amount -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid Amount"'s (0 mutations)
313.38 s
[really-safe-money-gen] coverage (1511/1610): Money\.AmountSpec.Ord Amount."min \:\: (Amount -> Amount -> Amount)".is equivalent to (\\a b -> if a <= b then a else b) for "valid Amount"'s (0 mutations)
313.41 s
[really-safe-money-gen] coverage (1512/1610): Money\.AmountSpec.Ord Amount.(>) \:\: Amount -> Amount -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid Amount"'s (0 mutations)
313.43 s
[really-safe-money-gen] coverage (1513/1610): Money\.AmountSpec.Ord Amount.(>) \:\: Amount -> Amount -> Bool.is antireflexive for "valid Amount"'s (0 mutations)
313.45 s
[really-safe-money-gen] coverage (1514/1610): Money\.AmountSpec.Ord Amount.(>) \:\: Amount -> Amount -> Bool.is transitive for "valid Amount"'s (0 mutations)
313.51 s
[really-safe-money-gen] coverage (1515/1610): Money\.AmountSpec.toRational.produces valid Rationals when the quantisation factor is nonzero (0 mutations)
313.53 s
[really-safe-money-gen] coverage (1516/1610): Money\.AmountSpec.toRational.produces an invalid Rational with quantisation factor 0 (0 mutations)
313.65 s
[really-safe-money-gen] coverage (1517/1610): Money\.AmountSpec.fromRational.roundtrips with toRational (10 mutations)
313.79 s
[really-safe-money-gen] coverage (1518/1610): Money\.AmountSpec.fromRational.succeeds on 0 (10 mutations)
313.79 s
[really-safe-money-gen] coverage (1519/1610): Money\.AmountSpec.fromRational.fails on really large numbers (10 mutations)
313.83 s
[really-safe-money-gen] coverage (1520/1610): Money\.AmountSpec.fromRational.fails on -Infinity (2 mutations)
313.96 s
[really-safe-money-gen] coverage (1521/1610): Money\.AmountSpec.fromRational.succeeds on 1 (10 mutations)
313.96 s
[really-safe-money-gen] coverage (1522/1610): Money\.AmountSpec.fromRational.succeeds on 77\.02 with quantisation factor 100 (10 mutations)
313.96 s
[really-safe-money-gen] coverage (1523/1610): Money\.AmountSpec.fromRational.fails on 7\.123 with quantisation factor 10 (7 mutations)
314.00 s
[really-safe-money-gen] coverage (1524/1610): Money\.AmountSpec.fromRational.fails on +Infinity (2 mutations)
314.07 s
[really-safe-money-gen] coverage (1525/1610): Money\.AmountSpec.fromRational.fails on -1 (4 mutations)
314.12 s
[really-safe-money-gen] coverage (1526/1610): Money\.AmountSpec.fromRational.fails on NaN (2 mutations)
314.26 s
[really-safe-money-gen] coverage (1527/1610): Money\.AmountSpec.fromRational.produces valid Amounts (10 mutations)
314.35 s
[really-safe-money-gen] coverage (1528/1610): Money\.AmountSpec.add.is associative when both succeed (3 mutations)
314.44 s
[really-safe-money-gen] coverage (1529/1610): Money\.AmountSpec.add.is commutative (3 mutations)
314.44 s
[really-safe-money-gen] coverage (1530/1610): Money\.AmountSpec.add.fails for maxBound + 1 (3 mutations)
314.50 s
[really-safe-money-gen] coverage (1531/1610): Money\.AmountSpec.add.matches what you would get with Integer, if nothing fails (3 mutations)
314.55 s
[really-safe-money-gen] coverage (1532/1610): Money\.AmountSpec.add.has a right-identity\: zero (3 mutations)
314.60 s
[really-safe-money-gen] coverage (1533/1610): Money\.AmountSpec.add.produces valid amounts (3 mutations)
314.60 s
[really-safe-money-gen] coverage (1534/1610): Money\.AmountSpec.add.fails for maxBound + maxBound (3 mutations)
314.64 s
[really-safe-money-gen] coverage (1535/1610): Money\.AmountSpec.add.has a left-identity\: zero (3 mutations)
314.68 s
[really-safe-money-gen] coverage (1536/1610): Money\.AmountSpec.toMinimalQuantisations.roundtrips with fromMinimalQuantisations (0 mutations)
314.69 s
[really-safe-money-gen] coverage (1537/1610): Money\.AmountSpec.toMinimalQuantisations.produces valid Int64s (0 mutations)
314.71 s
[really-safe-money-gen] coverage (1538/1610): Money\.AmountSpec.Eq Amount.(/=) \:\: Amount -> Amount -> Bool.is antireflexive for "valid Amount"s (0 mutations)
314.74 s
[really-safe-money-gen] coverage (1539/1610): Money\.AmountSpec.Eq Amount.(/=) \:\: Amount -> Amount -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid Amount"s (0 mutations)
314.77 s
[really-safe-money-gen] coverage (1540/1610): Money\.AmountSpec.Eq Amount.(==) \:\: Amount -> Amount -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid Amount"s (0 mutations)
314.80 s
[really-safe-money-gen] coverage (1541/1610): Money\.AmountSpec.Eq Amount.(==) \:\: Amount -> Amount -> Bool.is transitive for "valid Amount"s (0 mutations)
314.82 s
[really-safe-money-gen] coverage (1542/1610): Money\.AmountSpec.Eq Amount.(==) \:\: Amount -> Amount -> Bool.is reflexive for "valid Amount"s (0 mutations)
314.84 s
[really-safe-money-gen] coverage (1543/1610): Money\.AmountSpec.Eq Amount.(==) \:\: Amount -> Amount -> Bool.is symmetric for "valid Amount"s (0 mutations)
314.87 s
[really-safe-money-gen] coverage (1544/1610): Money\.AmountSpec.GenValid Amount.genValid \:\: Gen Amount.only generates valid 'Amount's (0 mutations)
314.90 s
[really-safe-money-gen] coverage (1545/1610): Money\.AmountSpec.toDouble.produces valid Doubles (0 mutations)
314.90 s
[really-safe-money-gen] coverage (1546/1610): Money\.AmountSpec.toDouble.succeeds on 7702 with quantisation factor 100 (0 mutations)
314.92 s
[really-safe-money-gen] coverage (1547/1610): Money\.AmountSpec.toDouble.produces an infinite Double with quantisation factor 0 (0 mutations)
315.28 s
[really-safe-money-gen] coverage (1548/1610): Money\.AmountSpec.rate.produces valid conversion rates (3 mutations)
315.89 s
[really-safe-money-gen] coverage (1549/1610): Money\.AmountSpec.rate.computes a rate that can be used to do a conversion without rounding (6 mutations)
315.89 s
[really-safe-money-gen] coverage (1550/1610): Money\.AmountSpec.rate.computes this USD to CHF rate correctly (3 mutations)
315.89 s
[really-safe-money-gen] coverage (1551/1610): Money\.AmountSpec.zero.is valid (0 mutations)
316.11 s
[really-safe-money-gen] coverage (1552/1610): Money\.AmountSpec.convert.succeeds in converting 1\:1 without rounding if the quantisation factor is the same (6 mutations)
316.11 s
[really-safe-money-gen] coverage (1553/1610): Money\.AmountSpec.convert.converts this USD to CHF correctly (6 mutations)
316.62 s
[really-safe-money-gen] coverage (1554/1610): Money\.AmountSpec.convert.produces valid amounts (6 mutations)
316.64 s
[really-safe-money-gen] coverage (1555/1610): Money\.AmountSpec.toRatio.produces an invalid Rational with quantisation factor 0 (0 mutations)
316.71 s
[really-safe-money-gen] coverage (1556/1610): Money\.AmountSpec.toRatio.produces valid Rationals when the quantisation factor is nonzero (0 mutations)
316.71 s
[really-safe-money-gen] coverage (1557/1610): Money\.AmountSpec.subtract.fails for 0 - maxBound (3 mutations)
316.71 s
[really-safe-money-gen] coverage (1558/1610): Money\.AmountSpec.subtract.fails for 0 - 1 (3 mutations)
316.78 s
[really-safe-money-gen] coverage (1559/1610): Money\.AmountSpec.subtract.matches what you would get with Integer, if nothing fails (3 mutations)
316.78 s
[really-safe-money-gen] coverage (1560/1610): Money\.AmountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 600 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 20} (11 mutations)
316.78 s
[really-safe-money-gen] coverage (1561/1610): Money\.AmountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 100000000} into DecimalLiteral (Just True) 500 8 (14 mutations)
316.78 s
[really-safe-money-gen] coverage (1562/1610): Money\.AmountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 2 0 into decimalLiteral QuantisationFactor {unQuantisationFactor = 1} (10 mutations)
316.78 s
[really-safe-money-gen] coverage (1563/1610): Money\.AmountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 20} into DecimalLiteral (Just True) 600 2 (14 mutations)
316.78 s
[really-safe-money-gen] coverage (1564/1610): Money\.AmountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 20 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 20} (10 mutations)
316.78 s
[really-safe-money-gen] coverage (1565/1610): Money\.AmountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 500 8 into decimalLiteral QuantisationFactor {unQuantisationFactor = 100000000} (10 mutations)
316.78 s
[really-safe-money-gen] coverage (1566/1610): Money\.AmountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 200 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 100} (10 mutations)
316.78 s
[really-safe-money-gen] coverage (1567/1610): Money\.AmountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 20} into DecimalLiteral (Just True) 10 2 (14 mutations)
316.78 s
[really-safe-money-gen] coverage (1568/1610): Money\.AmountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 500 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 20} (10 mutations)
316.95 s
[really-safe-money-gen] coverage (1569/1610): Money\.AmountSpec.DecimalLiteral.Amount\.fromDecimalLiteral.produces valid factors (10 mutations)
316.95 s
[really-safe-money-gen] coverage (1570/1610): Money\.AmountSpec.DecimalLiteral.Amount\.fromDecimalLiteral.fails on this amount that is too precise (7 mutations)
316.95 s
[really-safe-money-gen] coverage (1571/1610): Money\.AmountSpec.DecimalLiteral.Amount\.fromDecimalLiteral.fails on this amount that is too precise:1 (7 mutations)
316.95 s
[really-safe-money-gen] coverage (1572/1610): Money\.AmountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 1} into DecimalLiteral (Just True) 2 0 (14 mutations)
316.95 s
[really-safe-money-gen] coverage (1573/1610): Money\.AmountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 1} into DecimalLiteral (Just True) 1 0 (14 mutations)
316.95 s
[really-safe-money-gen] coverage (1574/1610): Money\.AmountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 100} into DecimalLiteral (Just True) 3 2 (14 mutations)
316.95 s
[really-safe-money-gen] coverage (1575/1610): Money\.AmountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 100 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 100} (10 mutations)
316.95 s
[really-safe-money-gen] coverage (1576/1610): Money\.AmountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 20} into DecimalLiteral (Just True) 500 2 (14 mutations)
316.95 s
[really-safe-money-gen] coverage (1577/1610): Money\.AmountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 3 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 100} (10 mutations)
316.95 s
[really-safe-money-gen] coverage (1578/1610): Money\.AmountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 100} into DecimalLiteral (Just True) 200 2 (14 mutations)
316.95 s
[really-safe-money-gen] coverage (1579/1610): Money\.AmountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 4 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 100} (10 mutations)
316.95 s
[really-safe-money-gen] coverage (1580/1610): Money\.AmountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 100} into DecimalLiteral (Just True) 100 2 (14 mutations)
316.95 s
[really-safe-money-gen] coverage (1581/1610): Money\.AmountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 100} into DecimalLiteral (Just True) 4 2 (14 mutations)
340.68 s
[really-safe-money-gen] coverage (1582/1610): Money\.AmountSpec.DecimalLiteral.Amount\.toDecimalLiteral.produces valid decimal literals (13 mutations)
380.31 s
[really-safe-money-gen] coverage (1583/1610): Money\.AmountSpec.DecimalLiteral.Amount\.toDecimalLiteral.roundtrips with Amount\.fromDecimalLiteral (23 mutations)
380.33 s
[really-safe-money-gen] coverage (1584/1610): Money\.AmountSpec.DecimalLiteral.can turn decimalLiteral QuantisationFactor {unQuantisationFactor = 20} into DecimalLiteral (Just True) 20 2 (14 mutations)
380.33 s
[really-safe-money-gen] coverage (1585/1610): Money\.AmountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 1 0 into decimalLiteral QuantisationFactor {unQuantisationFactor = 1} (10 mutations)
380.33 s
[really-safe-money-gen] coverage (1586/1610): Money\.AmountSpec.DecimalLiteral.can turn DecimalLiteral (Just True) 10 2 into decimalLiteral QuantisationFactor {unQuantisationFactor = 20} (10 mutations)
380.34 s
[really-safe-money-gen] coverage (1587/1610): Money\.AmountSpec.fromMinimalQuantisations.produces valid amounts (0 mutations)
380.44 s
[really-safe-money-gen] coverage (1588/1610): Money\.CurrencySpec.Eq Currency.(/=) \:\: Currency -> Currency -> Bool.is antireflexive for "valid Currency"s (1 mutations)
380.54 s
[really-safe-money-gen] coverage (1589/1610): Money\.CurrencySpec.Eq Currency.(/=) \:\: Currency -> Currency -> Bool.is equivalent to (\\a b -> not $ a == b) for "valid Currency"s (1 mutations)
380.66 s
[really-safe-money-gen] coverage (1590/1610): Money\.CurrencySpec.Eq Currency.(==) \:\: Currency -> Currency -> Bool.is equivalent to (\\a b -> not $ a /= b) for "valid Currency"s (1 mutations)
380.76 s
[really-safe-money-gen] coverage (1591/1610): Money\.CurrencySpec.Eq Currency.(==) \:\: Currency -> Currency -> Bool.is symmetric for "valid Currency"s (1 mutations)
380.86 s
[really-safe-money-gen] coverage (1592/1610): Money\.CurrencySpec.Eq Currency.(==) \:\: Currency -> Currency -> Bool.is transitive for "valid Currency"s (1 mutations)
380.95 s
[really-safe-money-gen] coverage (1593/1610): Money\.CurrencySpec.Eq Currency.(==) \:\: Currency -> Currency -> Bool.is reflexive for "valid Currency"s (1 mutations)
380.97 s
[really-safe-money-gen] coverage (1594/1610): Money\.CurrencySpec.Show Currency and Read Currency.are implemented such that read \. show == id for valid values (1 mutations)
381.12 s
[really-safe-money-gen] coverage (1595/1610): Money\.CurrencySpec.Ord Currency."max \:\: (Currency -> Currency -> Currency)".is equivalent to (\\a b -> if a >= b then a else b) for "valid Currency"'s (1 mutations)
381.33 s
[really-safe-money-gen] coverage (1596/1610): Money\.CurrencySpec.Ord Currency."min \:\: (Currency -> Currency -> Currency)".is equivalent to (\\a b -> if a <= b then a else b) for "valid Currency"'s (1 mutations)
381.43 s
[really-safe-money-gen] coverage (1597/1610): Money\.CurrencySpec.Ord Currency.(<=) \:\: Currency -> Currency -> Bool.is transitive for "valid Currency"'s (1 mutations)
381.51 s
[really-safe-money-gen] coverage (1598/1610): Money\.CurrencySpec.Ord Currency.(<=) \:\: Currency -> Currency -> Bool.is antisymmetric for "valid Currency"'s (1 mutations)
381.61 s
[really-safe-money-gen] coverage (1599/1610): Money\.CurrencySpec.Ord Currency.(<=) \:\: Currency -> Currency -> Bool.is equivalent to (\\a b -> compare a b /= GT) for "valid Currency"'s (1 mutations)
381.71 s
[really-safe-money-gen] coverage (1600/1610): Money\.CurrencySpec.Ord Currency.(<=) \:\: Currency -> Currency -> Bool.is reflexive for "valid Currency"'s (1 mutations)
381.82 s
[really-safe-money-gen] coverage (1601/1610): Money\.CurrencySpec.Ord Currency.(>) \:\: Currency -> Currency -> Bool.is transitive for "valid Currency"'s (1 mutations)
381.92 s
[really-safe-money-gen] coverage (1602/1610): Money\.CurrencySpec.Ord Currency.(>) \:\: Currency -> Currency -> Bool.is equivalent to (\\a b -> compare a b == GT) for "valid Currency"'s (1 mutations)
382.01 s
[really-safe-money-gen] coverage (1603/1610): Money\.CurrencySpec.Ord Currency.(>) \:\: Currency -> Currency -> Bool.is antireflexive for "valid Currency"'s (1 mutations)
382.14 s
[really-safe-money-gen] coverage (1604/1610): Money\.CurrencySpec.Ord Currency.(>=) \:\: Currency -> Currency -> Bool.is transitive for "valid Currency"'s (1 mutations)
382.24 s
[really-safe-money-gen] coverage (1605/1610): Money\.CurrencySpec.Ord Currency.(>=) \:\: Currency -> Currency -> Bool.is antisymmetric for "valid Currency"'s (1 mutations)
382.32 s
[really-safe-money-gen] coverage (1606/1610): Money\.CurrencySpec.Ord Currency.(>=) \:\: Currency -> Currency -> Bool.is reflexive for "valid Currency"'s (1 mutations)
382.39 s
[really-safe-money-gen] coverage (1607/1610): Money\.CurrencySpec.Ord Currency.(>=) \:\: Currency -> Currency -> Bool.is equivalent to (\\a b -> compare a b /= LT) for "valid Currency"'s (1 mutations)
382.47 s
[really-safe-money-gen] coverage (1608/1610): Money\.CurrencySpec.Ord Currency.(<) \:\: Currency -> Currency -> Bool.is equivalent to (\\a b -> compare a b == LT) for "valid Currency"'s (1 mutations)
382.60 s
[really-safe-money-gen] coverage (1609/1610): Money\.CurrencySpec.Ord Currency.(<) \:\: Currency -> Currency -> Bool.is transitive for "valid Currency"'s (1 mutations)
382.69 s
[really-safe-money-gen] coverage (1610/1610): Money\.CurrencySpec.Ord Currency.(<) \:\: Currency -> Currency -> Bool.is antireflexive for "valid Currency"'s (1 mutations)
382.78 s
[really-safe-money-gen] mutation-nix: running mutations
385.20 s
[really-safe-money-gen] TTTTTTeeTTTTeeeTTTeTTTTTTTTTTTTTTTsseeeessseeeseeeeeeeeeeeeeeettsssstttssstsssssssssssssssiittttiiitttitttttttttttttttnniiiinnniiiniiiiiiiiiiiiiiiggnnnngggnnngnnnnnnnnnnnnnnn gggg ggg gggggggggggggggmm mmm m uummmmuuummmummmmmmmmmmmmmmmttuuuutttuuutuuuuuuuuuuuuuuuaattttaaatttatttttttttttttttttaaaatttaaataaaaaaaaaaaaaaaiittttiiitttitttttttttttttttooiiiioooiiioiiiiiiiiiiiiiiinnoooonnnooonooooooooooooooo nnnn nnn nnnnnnnnnnnnnnnII IIC C nnNCNCnnoCCNoCCCNCCCINCICNCCtteoeottnooenoooeoooneonoeooLLgngnLLsnngsnnngnnntgntngnniiadasiitdsatdssasdsLasLsasstttFttttBFttBFttttFtittitttt eleB olBeolBBeBlBteBtBeBBaa i oaaoio oioo oio o o oottapaottlpoalpooaopoaaoaoaoo t tl lt lltl lttltltllss a ssaa aa a rrstsarrttasttaasatassasasaaccr rtcc tr ttrt trrtrtrtt//csc //ss css c s cc c c MM/r/sMMrrs/rrss/srs//s/s/ssooMcMrooccrMccrrMrcrMMrMrMrrnno/ocnn//co//ccoc/coocococceenMn/eeMM/nMM//n/M/nn/n/n//yyeoeMyyooMeooMMeMoMeeMeMeMM//ynyo//nnoynnooyonoyyoyoyooAA/e/nAAeen/eenn/nen//n/n/nnmmAyAemmyyeAyyeeAeyeAAeAeAeeoom/myoo//ym//yymy/ymmymymyyuuoAo/uuAA/oAA//o/A/oo/o/o//nnumuAnnmmAummAAuAmAuuAuAuAAttnonmttoomnoommnmomnnmnmnmm..tuto..uuotuuootouottototoohh.n.uhhnnu.nnuu.unu..u.u.uusshthnssttnhttnnhntnhhnhnhnn::s.st::..ts..ttst.tsstststt88:h:.58hh.:hh..:.h.::.:.:..005s5h60ssh5sshh4hsh53h3h3hh116:4s91::s1::ss7s:s18s8s8ss::954:::55:855::6:4:88:9:9::33:6:513645:6144:575::3:3:336619118694419877116415898588--0:08--::40::6608:44-8-9-8933-7-:1317:-17::-:7:-1:1:1::881-21980-110-1121-116505055::9230::-605-60030605:-:-:--
385.20 s
[really-safe-money-gen]
385.20 s
[really-safe-money-gen] :9:-
385.20 s
[really-safe-money-gen]
385.20 s
[really-safe-money-gen] 16-:16--:-6-:
385.20 s
[really-safe-money-gen] 1
385.20 s
[really-safe-money-gen] 1
385.20 s
[really-safe-money-gen] 11@@
385.20 s
[really-safe-money-gen] :
385.20 s
[really-safe-money-gen] 1@@9:2
385.20 s
[really-safe-money-gen] 9:22
385.20 s
[really-safe-money-gen] 1:2
385.20 s
[really-safe-money-gen] @6@0@60@@@
385.20 s
[really-safe-money-gen] @5@@:
385.21 s
[really-safe-money-gen] 3@:
385.21 s
[really-safe-money-gen] 33@5
385.21 s
[really-safe-money-gen] 3@@:@:@:: @@@:
385.21 s
[really-safe-money-gen] @:@
385.21 s
[really-safe-money-gen] @::@:@:@
385.21 s
[really-safe-money-gen]
385.21 s
[really-safe-money-gen]
385.21 s
[really-safe-money-gen]
385.21 s
[really-safe-money-gen] -- @
385.21 s
[really-safe-money-gen] --@@
385.21 s
[really-safe-money-gen] @@
385.21 s
[really-safe-money-gen]
385.21 s
[really-safe-money-gen]
385.21 s
[really-safe-money-gen] @
385.21 s
[really-safe-money-gen] -@-@-@@77- -@57@ @-@ @@-@ @-3@3@3@@995-5@69 -@5 -@@4@-@58 8 8 88654 68-5 1-5 7 4 15-6-6--,,661-,,54-551--3-7-5,3,3,3377,6,577615,6544,535,7878788 7,71 6,476,7771,47 5 6 56++ 7 5++,71 ,733 571 +,+,+,,77+ +,577 ,+7 ,,+, ,+3737377995+5769 +75 +7747+758 8 8 88654 68+5 1+5 7 4 15+6+6++,,661+,,54+551++3+7+5,3,3,3377,6,577615,6544,535,7878788 7,71 6,476,7771,47 5 6 56@@ 7 5@@,71 ,733 571 @,@,@,,@@@ @,@@7 ,@7 ,,@, ,@@7@7@77
385.21 s
[really-safe-money-gen]
385.21 s
[really-safe-money-gen] @@@7
385.21 s
[really-safe-money-gen]
385.21 s
[really-safe-money-gen] @7@ @77@7@7@
385.21 s
[really-safe-money-gen]
385.21 s
[really-safe-money-gen]
385.21 s
[really-safe-money-gen]
385.21 s
[really-safe-money-gen] @
385.21 s
[really-safe-money-gen] @@
385.21 s
[really-safe-money-gen] @@
385.22 s
[really-safe-money-gen] @
385.22 s
[really-safe-money-gen] @ @ @@qq
385.22 s
[really-safe-money-gen] @ q@
385.22 s
[really-safe-money-gen] @ @
385.22 s
[really-safe-money-gen] @@ @
385.22 s
[really-safe-money-gen] @ -@f@f@@uu @ u
385.22 s
[really-safe-money-gen] @
385.22 s
[really-safe-money-gen] @@ @ @ -
385.22 s
[really-safe-money-gen] r
385.22 s
[really-safe-money-gen] r
385.22 s
[really-safe-money-gen]
385.22 s
[really-safe-money-gen] aa
385.22 s
[really-safe-money-gen] a
385.22 s
[really-safe-money-gen]
385.22 s
[really-safe-money-gen]
385.22 s
[really-safe-money-gen]
385.22 s
[really-safe-money-gen]
385.22 s
[really-safe-money-gen] o o nn n N-mfm-ftt t o-RrR-rii i t aoa oss (s hNtmtNmaa( m sa i m iioiRioRtts(a mt m 2 i a m 2ntoaotaiimsx ai(a (2 x a ghntnhtooamBilosxm=s mmBixm=
385.22 s
[really-safe-money-gen] iaiaiinnlao2lnmBa m=aao2Ba nlolnoFFllu eFaox(a xxu ox(fg n gnaaeln=raluBfl(BBn=uBfr
385.22 s
[really-safe-money-gen] :a:
385.24 s
[really-safe-money-gen] accred Cclnorlfood noro :l: lttCrI(hteduoeruuI(duomf f oohC fuorInmronn fInmRrQ:Qr:rruh=rnrC dICmdd=r dIaou:uo:FFnu okFh=InhIII o=Intma am ookn(mSou tun fm tiRnQnRQrrSkfIirn(=ent==rIf=eoatutaummiSrnzmkf gke onr gntiaitaaazioteaSr(rSgffmto(raisnsinttezme,tiofairrrIemfaloataotSS,eIg SzmrlzaoongIrl ntitnitt ,nrrteIo elmmtrno :aisiasrrr taer,nm:, IIeatm::loaolaiierelsi tI: :nngleI: ntn tnnseg tnren r:ttr gn Q:FiF:iggtsr:)gegtWe eea:rtWu:aoa:o )ta: sreosWggl:aeoa cnc n(( )l =(tagrtorr lgrnQtFtQFQQ= W Q)lrd)raa(W rdtuoaouauu =:odu a6 dllmo(a6iarcracaad :ria=:l4=6 arml4sn t ntnnid dvn : 4((xda at-o-tottviW6Mtd :-d mmB6x:-ti>r>iriiMvo4oiiW:>i-aao4B:>is s ssoMr dsvo v>xxu o oaR-Ra-aadod- aMrWIM BBn-uWInta>at>tt d6>atodonoIood>nonFit ti iia 4 id6rtdnuu drtaoiRioRoo a I(o 4de tnn:I decnoaonann( -n(na 6gaedd:n:6gtFntnFtFF((>tfF -4e g t:4eoaaiaaiaaf( era(> r(e::We rrclolcoccrfIgoc( -)(r::ogW-) t n tnttornemtfI> f) reo> -o-a-oaoomotrIorn ar WWdrr a>r>l>rlrrIme)nrotI2oaoo6)dI2 nIg t men
385.24 s
[really-safe-money-gen] m2rr4 6n
385.24 s
[really-safe-money-gen] R-M-M--00tneae0Igt I
385.24 s
[really-safe-money-gen] dd)a4t a>a>a>>))etr2g)nee n 66
385.24 s
[really-safe-money-gen] 2)e t y y ge)
385.25 s
[really-safe-money-gen] r trg t 44
385.25 s
[really-safe-money-gen]
385.25 s
[really-safe-money-gen] g iRbMbRM==rg a=e)e e )) e oaeaeaa ar( l g r g
385.25 s
[really-safe-money-gen]
385.25 s
[really-safe-money-gen] r nt y ty""lam "r() r ) aiAbAib%% la :%am a lomemoeff: x :fla(rl (r no on ""::B " xm r m -auAuaA
385.25 s
[really-safe-money-gen]
385.25 s
[really-safe-money-gen] :o W
385.25 s
[really-safe-money-gen] :Ba:: r a:>lnmnml W uro :ox::: rrx: toto qqoWn rq uB : : B M-
385.25 s
[really-safe-money-gen] u
385.26 s
[really-safe-money-gen] u-uurod:duWnoIW rr:::oIa> n n>aadr :3aodunoI ::uny ftft nn3d: 2nr ntrn::I ntbMr
385.26 s
[really-safe-money-gen] r
385.26 s
[really-safe-money-gen] Mtt23:I td:dedt::nIIdeeao o aii 2 n-i3: g3e tnn g ymfmfyss- Wt>s2 :e2gIIett:eAbRrRrbaa>-oe a W:r enngee:rmeaoaoett >rgWt-o
385.27 s
[really-safe-money-gen] -rttegg
385.27 s
[really-safe-money-gen] o tmtm iiW deoi>rW >
385.27 s
[really-safe-money-gen] eereeW uAiRiRAoooW6rro do gg
385.27 s
[really-safe-money-gen] rro nmoaoamnnro4
385.27 s
[really-safe-money-gen] dnW6r W ee
385.27 s
[really-safe-money-gen]
385.27 s
[really-safe-money-gen] r tontntoFFdr) 6Fo4d o rr d
385.27 s
[really-safe-money-gen] uaiaiuaa6d
385.27 s
[really-safe-money-gen] 4ar)6 r
385.27 s
[really-safe-money-gen]
385.27 s
[really-safe-money-gen] 6 nloloncc46 )cd
385.27 s
[really-safe-money-gen] 4 d 4 ft n nttt)4 t6 ) 6 ) r
385.27 s
[really-safe-money-gen] (a(a
385.27 s
[really-safe-money-gen] oo ) fo4
385.27 s
[really-safe-money-gen] r4
385.27 s
[really-safe-money-gen] ro QlQl rrf )r) )r mfu u fFF)f
385.27 s
[really-safe-money-gen] F = r =Rra(a(roo
385.27 s
[really-safe-money-gen] ) r of f= rr aonQnQorr
385.27 s
[really-safe-money-gen] r) i) = itmtutummm r= m
385.27 s
[really-safe-money-gen] 1
385.28 s
[really-safe-money-gen] irr == 1iRiaiaRaa a r 1 i oasnsnatt :i t - ==1ii -ntatattSS :1 S :r - 11r aititiitt t : i ii+ iloisisorr I-sr :2 i11 -+:2 noaoaniis n mi I:
385.28 s
[really-safe-money-gen] 2 i :
385.28 s
[really-safe-money-gen] (antntannmstian n -
385.28 s
[really-safe-money-gen] ++2ii -QlFiFilggame2lgstI s-
385.28 s
[really-safe-money-gen] 22I u aoao lag
385.28 s
[really-safe-money-gen] l men m ii-
385.28 s
[really-safe-money-gen]
385.28 s
[really-safe-money-gen] n a(cncn(((lle-e(agt a 22 --t nQtFtFQQQelr rQleeil
385.28 s
[really-safe-money-gen]
385.28 s
[really-safe-money-gen] eituoaoauuure
385.28 s
[really-safe-money-gen] Culrgnli-- gniarcrcaaaCr hae
385.28 s
[really-safe-money-gen] e en i e sn t tnnnhC iunr rir niiriatqoqotttuh nntC
385.28 s
[really-safe-money-gen] fCi nn
385.28 s
[really-safe-money-gen] ftifrfriiinu kih hfiii is) ) ssskn i su ru nnfii roa q qaaa k f:an nr ff ntrfrfttt: :tk <k iir <Fi
385.28 s
[really-safe-money-gen] )
385.29 s
[really-safe-money-gen] )iii::rr i <ff rr ao ooo : Ao:r 0: > 0cn r rnnnA =<mn:
385.29 s
[really-safe-money-gen] :0rr <>
385.29 s
[really-safe-money-gen] tF
385.29 s
[really-safe-money-gen]
385.29 s
[really-safe-money-gen] FFFmA oF =r+
385.29 s
[really-safe-money-gen] m r+oa| | aaaom(0uaA A+>>a0m rc cccuof
385.29 s
[really-safe-money-gen] ncm(= m x
385.29 s
[really-safe-money-gen] a= ti i tttnur+ttof o mmB+x qos|s|oootno
385.29 s
[really-safe-money-gen] our(iu aao B(ifrI I rrr
385.29 s
[really-safe-money-gen] tm rnofnnixxu ofn) nini
385.29 s
[really-safe-money-gen] I tmr tnBBn ur qvsvsqqq ni q
385.29 s
[really-safe-money-gen] Ioi
385.29 s
[really-safe-money-gen] oodinoirfaIaIfff tn f nmf iuuIndmf
385.29 s
[really-safe-money-gen] )lnln))) e ) tI fnn
385.29 s
[really-safe-money-gen] II - iviv gi enn dd+i
385.29 s
[really-safe-money-gen] nr rdadar== rf = gto rII f+t
385.29 s
[really-safe-money-gen] l l
385.29 s
[really-safe-money-gen]
385.29 s
[really-safe-money-gen]
385.29 s
[really-safe-money-gen] a s
385.29 s
[really-safe-money-gen] ret
385.29 s
[really-safe-money-gen]
385.29 s
[really-safe-money-gen] e<|-riri- s lTm ag <++ F g d d ms ra lr( ia r1i = = am:ul s ars0 nlia
385.29 s
[really-safe-money-gen] s| r r|llla:ellm:l m
385.30 s
[really-safe-money-gen] snl I N N eell
385.30 s
[really-safe-money-gen] eea: <a iiie nio=o=ittelW rtl : l nnf
385.30 s
[really-safe-money-gen] i: vst t s reo C lW:0l f: aIhNhNIddCrr hdeo )e iin lnioioneehCd uerrW
385.30 s
[really-safe-money-gen] r ffo rW ivntntvccuh3 ncCdo C t o daghghaiinu2 kih3r h FT >r l
385.30 s
[really-safe-money-gen] i
385.30 s
[really-safe-money-gen] ilmmkn mu2d u ar( d ri-n-niaa k- =an 3 n lur m3t d g gdll= > lk-2 ktse a2h=
385.30 s
[really-safe-money-gen]
385.30 s
[really-safe-money-gen] ss = tAs > he
385.30 s
[really-safe-money-gen] > x e r|-|-r A Ihm = - =e
385.30 s
[really-safe-money-gen] tB-nN ::mAneo: I> n mho> o=r r =::omtnu:An A aeu Nt | | uoe n mtItmN xnnIohN< < NIInugNtIoenhoo B dntio r ronntneo nugteut oNIthnt0 0 ttt trtstneennh uo
385.31 s
[really-safe-money-gen] eigh < <h
385.31 s
[really-safe-money-gen]
385.31 s
[really-safe-money-gen] s )hm
385.31 s
[really-safe-money-gen] trg ti nt gn
385.31 s
[really-safe-money-gen] i= = i--ms ia- )eN n dh eg+n 0 0n amfnl s rosg tIi r
385.31 s
[really-safe-money-gen] gN N g la gl mf)tm
385.31 s
[really-safe-money-gen] th)n )
385.31 s
[really-safe-money-gen] o=o=
385.31 s
[really-safe-money-gen] ll*
385.31 s
[really-safe-money-gen] e a ha he
385.31 s
[really-safe-money-gen] g |+t t + el r l*fil en
385.35 s
[really-safe-money-gen] f hNhN re( C l nl n n ioio Crf h e(*ge N * o|ntnt|ddhCr udrf
385.35 s
[really-safe-money-gen] r No t ghgh eeuho neCr( C ot t( T
385.35 s
[really-safe-money-gen] i
385.35 s
[really-safe-money-gen] iFccnum kchof h th hf (r+n+naiiknI Siumr hi uer iu g glmmSkn imnIo in nnoese
385.35 s
[really-safe-money-gen]
385.35 s
[really-safe-money-gen] saaiSt zaknm eng k mlI |+|+ellzieeelStI lg
385.35 s
[really-safe-money-gen] t SNIsn= ssezgl
385.35 s
[really-safe-money-gen] sien s
385.35 s
[really-safe-money-gen] heionev r n =
385.35 s
[really-safe-money-gen] ers- zgt e elztt aN |o| ==-
385.35 s
[really-safe-money-gen] ae =ere nseheJlo< t N -l
385.35 s
[really-safe-money-gen] ageJ e
385.35 s
[really-safe-money-gen] iguit F Tocc J c-lrlu N -nrsdh1a(rtee :uie ass oJ gat i lruhiii :sni :let tu
385.35 s
[really-safe-money-gen] l rn=s eillni t l : hs ()g e< nii nW iii :J( iti :A
385.35 s
[really-safe-money-gen] N =gnni o(fnnW:uA en n :m= o=0
385.35 s
[really-safe-money-gen] ggfirA g o smelg( o t )N fdmr irWtols
385.35 s
[really-safe-money-gen] Ai WuN hN o $$r 6oe$fdo use mf ono|io=t er4us 6r(ne o rtt nt h|llse ntlr4dAt J ur d hrghNi oots-t oe 6m Ju ne 6(i
385.35 s
[really-safe-money-gen] ionrgg t> =gs-4o(us tse4(n< ntg BB= (=Bt> u(st tl fg gh
385.35 s
[really-safe-money-gen] <aa==I( a -nft ( s-r
385.35 s
[really-safe-money-gen] 0
385.35 s
[really-safe-money-gen] i ss =nf0s=I>tr ( (=e>o | n 0ee0 tr
385.35 s
[really-safe-money-gen] e=n o(A f= m = g
385.35 s
[really-safe-money-gen] 0eo+ tI(mAmer JII o
385.35 s
[really-safe-money-gen] |=11+
385.35 s
[really-safe-money-gen] gm 10en(Imolo0unn|Nt| 00 +eI 0
385.35 s
[really-safe-money-gen] gtfnousm
385.35 s
[really-safe-money-gen] stt oh oN rn +eertuneI+teerteo to(( )ti( rgoent n gg hrt|htffi enf )emgt Jt (ee<iwh ehrrniag r rIe (ue Arr nieorioo n
385.35 s
[really-safe-money-gen] eioia)nr((sgim) 0gsrtwnmmi -rfmn
385.35 s
[really-safe-money-gen] t (fteno :
385.35 s
[really-safe-money-gen] ewhigIIfi I -ae:fr r ua:= ies
385.35 s
[really-safe-money-gen] nn f :rni
385.35 s
[really-safe-money-gen] g:ro( in
385.35 s
[really-safe-money-gen] =sre ttn :etf -e omA:ft-IN
385.35 s
[really-safe-money-gen] ew eeroi se rImIm: no| i= ggetnItgFi nIno T( tt =s
385.35 s
[really-safe-money-gen] |rrs n ran :tntuIr( eho
385.35 s
[really-safe-money-gen] e aat(it=al i:etennufigit oll rfe=lsin gegtternenh = t =e g ef Iege e
385.35 s
[really-safe-money-gen] o rge
385.35 s
[really-safe-money-gen] hqq=sre1q
385.35 s
[really-safe-money-gen] inrer(g mi
385.35 s
[really-safe-money-gen] r eff t r
385.35 s
[really-safe-money-gen] f rft r (e If- wl r 0 > e- :fr n > ie w::
385.35 s
[really-safe-money-gen] = - : >rg>::r tr st li:: =m> : e : o- e W|e l es a m>rW Im> g>o re teFF 0xW F a oInI e ro=et ll )Bo l xm-rntnW rmdt
385.35 s
[really-safe-money-gen] s lr=oo
385.36 s
[really-safe-money-gen] or o Ba>dteto a6h uree
385.36 s
[really-safe-money-gen] aa ud a ox 6egert:x4e lets tt n6 ttuBW4gegdh:B)r ts u )) d4t)hnoo)ere6e o w Rurl
385.36 s
[really-safe-money-gen]
385.36 s
[really-safe-money-gen] I)h
385.36 s
[really-safe-money-gen] edur r r4nIuri alet ++t
385.36 s
[really-safe-money-gen] e+nIndr - ) nn)s ttsR h +rn
385.36 s
[really-safe-money-gen] d6)->: Dtd)e iRua e ) D+I4)> :rieI
385.36 s
[really-safe-money-gen] loalt n )D i
385.36 s
[really-safe-money-gen] )
385.36 s
[really-safe-money-gen] W )sg
385.36 s
[really-safe-money-gen] =enttil
385.36 s
[really-safe-money-gen] i s + WoI)te+
385.36 s
[really-safe-money-gen]
385.36 s
[really-safe-money-gen] taiRoe Dti s t r
385.36 s
[really-safe-money-gen] orn
385.36 s
[really-safe-money-gen] rr loant ihn
385.36 s
[really-safe-money-gen] t ri )rdt i r nta ddse rdin )d6e
385.36 s
[really-safe-money-gen] b- e:ailreetniieb i
385.36 s
[really-safe-money-gen] 64gu>i s:lo eccr fbcuin 4)et n u n:siiiD uitf
385.36 s
[really-safe-money-gen] ) reW lR:a:ummbintme i r doi ta:l laausoeadrfr)-IrflRt RtlltttdlI ))>nd eaiR:aRsser Isn>T)
385.36 s
[really-safe-money-gen] t6Fttoa:ta di(n t r
385.36 s
[really-safe-money-gen] Wo4a int it==Ibrt=omu
385.36 s
[really-safe-money-gen] oE)lroaiRoi nu o Eae
385.37 s
[really-safe-money-gen] rq senloanocctt>Ecqx
385.37 s
[really-safe-money-gen] duresa
385.37 s
[really-safe-money-gen] ntaneeoe qeuB 6a)
385.37 s
[really-safe-money-gen] ul ailaiiEdmuiao 4l) l lo
385.37 s
[really-safe-money-gen] lllqIaallu )C
385.37 s
[really-safe-money-gen] t:
385.37 s
[really-safe-money-gen] n iiunxliCn h R: a :nnatBCnhd ru
385.38 s
[really-safe-money-gen] a l :ggloohguI )n tR
385.38 s
[really-safe-money-gen] CEuu n
385.38 s
[really-safe-money-gen] )k ia R$$hqnn$k
385.38 s
[really-safe-money-gen] s ot a uudk s ni tllnaIsl t
385.38 s
[really-safe-money-gen] f ao iookl) of h tln oggsC
385.38 s
[really-safe-money-gen] fg esh ar nBB h Bs nme:le aaafu sam an:
385.38 s
[really-safe-money-gen] s rlss n msa Nl ur e
385.39 s
[really-safe-money-gen] eesk ael olNRle s ms l ltteoats u01a l-ehhrttRurl lf e1reiChialet((l r0CnnhiottsRffes C h gunniRuarrrmth(uN
385.39 s
[really-safe-money-gen] ngaoaltooCahufno k
385.39 s
[really-safe-money-gen] lnttimmhlenrkt
385.39 s
[really-safe-money-gen]
385.39 s
[really-safe-money-gen] aiRoIIulnko
385.39 s
[really-safe-money-gen] h loannnne
385.39 s
[really-safe-money-gen] m i ntattkrN I n =ailee
385.40 s
[really-safe-money-gen] Co n g lo gg ht t
385.40 s
[really-safe-money-gen] r n=rr uh e =a aa ni g * lrll kn r e r
385.40 s
[really-safe-money-gen] g a l e( =*qq
385.40 s
[really-safe-money-gen] l self* ff e elsr r( eql seo( f:: lfs Je mf*r::e s e u
385.40 s
[really-safe-money-gen] JIr o l e:
385.40 s
[really-safe-money-gen] es uno(mFFs
385.40 s
[really-safe-money-gen] : lt stmfIlle s teIrnoo
385.40 s
[really-safe-money-gen] F e( gnotaa e l A (rtmett le o Jm AaeIg)) sl a uo mlgnr
385.40 s
[really-safe-money-gen]
385.40 s
[really-safe-money-gen] es t su o rta
385.40 s
[really-safe-money-gen] e ) tn u:ael
385.40 s
[really-safe-money-gen] t n:lg J ( t r: u A(l W:a:ii s lm(e(o:l nn tl eoft(r W eitur fdW:oppl (tn no-r3o:rrre A -tm-o2r diit m-p- I m dW3nn o-r (nTI-3o2tt- u iT(thn>2r ff-lnTnhfeit d- ethtirgseR-3>""Tt ifsoe ga>2 %%h (s mr'et R%%i-( "'I friR-a00s-f'%fn:r oa>t.. rf%rt:o:nt i%%'Tor0oe m:aiRoddfhmo.mgII loanffriIm%IennI)nta""osnIdnrttn ail m tnft eetqlo)ddI'et"e:ggef)n eenfge g:erg
385.40 s
[really-safe-money-gen] aqcctregdr raeqlfiieorreaI lrf)
385.40 s
[really-safe-money-gen] mmgm acln-'
385.41 s
[really-safe-money-gen] aarI:li't> -qllan:'m e i>fsslt aigWs
385.41 s
[really-safe-money-gen]
385.41 s
[really-safe-money-gen]
385.41 s
[really-safe-money-gen] 'eIilseo W gnss rrto
385.41 s
[really-safe-money-gen]
385.41 s
[really-safe-money-gen] irt
385.41 s
[really-safe-money-gen] t dhr saet h-6ed-- lgh
385.41 s
[really-safe-money-gen] e>4o6--t'ee o )r4 h ro-rW e)||ei r-eort os-e tr)irVVr >t|id)c)aaet i c6
385.41 s
[really-safe-money-gen] a)llthWcVa4 l
385.41 s
[really-safe-money-gen] iiieoaal)
385.41 s
[really-safe-money-gen] l ddcorlll y
385.42 s
[really-safe-money-gen] aaardliyr ttle6yd )neelt4 an)o yi)nto
385.42 s
[really-safe-money-gen] ttt c oet hhnart
385.42 s
[really-safe-money-gen] saaol) tsatttl)shaf y
385.42 s
[really-safe-money-gen] aafeaas fte,nnan
385.42 s
[really-safe-money-gen] e , fo,a b''et nbuAA, b utmm su't oobatA iuuuf mitnnteiot'tt ,tu's''i 'ns
385.43 s
[really-safe-money-gen] tbst
385.44 s
[really-safe-money-gen] ii'u
385.44 s
[really-safe-money-gen] 'ssst
385.44 s
[really-safe-money-gen] issisttt rr'siistcc
385.44 s
[really-safe-money-gen] rttillcyyt lppyoo sspiiottsiiivvteei..v eII... eeI... enn.oo ttn o''tzz ee'rrzooe''r..o
385.44 s
[really-safe-money-gen]
385.44 s
[really-safe-money-gen] '.
386.05 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:390:5-14:
386.05 s
[really-safe-money-gen] @@ -387,7 +387,7 @@
386.06 s
[really-safe-money-gen] fromRational (QuantisationFactor qf) r
386.06 s
[really-safe-money-gen] | isInvalid r = Nothing
386.06 s
[really-safe-money-gen] | r < 0 = Nothing
386.06 s
[really-safe-money-gen] - | otherwise =
386.06 s
[really-safe-money-gen] + | True =
386.06 s
[really-safe-money-gen] let resultRational :: Rational
386.06 s
[really-safe-money-gen] resultRational = r * (fromIntegral :: Word32 -> Rational) qf
386.06 s
[really-safe-money-gen] ceiled :: Natural
386.19 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:390:5-14:
386.19 s
[really-safe-money-gen] @@ -387,7 +387,7 @@
386.19 s
[really-safe-money-gen] fromRational (QuantisationFactor qf) r
386.19 s
[really-safe-money-gen] | isInvalid r = Nothing
386.19 s
[really-safe-money-gen] | r < 0 = Nothing
386.19 s
[really-safe-money-gen] - | otherwise =
386.19 s
[really-safe-money-gen] + | False =
386.19 s
[really-safe-money-gen] let resultRational :: Rational
386.19 s
[really-safe-money-gen] resultRational = r * (fromIntegral :: Word32 -> Rational) qf
386.19 s
[really-safe-money-gen] ceiled :: Natural
386.35 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Amount.hs:390:5-14:
386.35 s
[really-safe-money-gen] @@ -387,7 +387,7 @@
386.35 s
[really-safe-money-gen] fromRational (QuantisationFactor qf) r
386.35 s
[really-safe-money-gen] | isInvalid r = Nothing
386.35 s
[really-safe-money-gen] | r < 0 = Nothing
386.35 s
[really-safe-money-gen] - | otherwise =
386.35 s
[really-safe-money-gen] + | not (otherwise) =
386.35 s
[really-safe-money-gen] let resultRational :: Rational
386.35 s
[really-safe-money-gen] resultRational = r * (fromIntegral :: Word32 -> Rational) qf
386.35 s
[really-safe-money-gen] ceiled :: Natural
386.56 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:397:14-31:
386.56 s
[really-safe-money-gen] @@ -394,7 +394,7 @@
386.56 s
[really-safe-money-gen] ceiled = (ceiling :: Rational -> Natural) resultRational
386.57 s
[really-safe-money-gen] floored :: Natural
386.57 s
[really-safe-money-gen] floored = (floor :: Rational -> Natural) resultRational
386.57 s
[really-safe-money-gen] - in if ceiled == floored
386.57 s
[really-safe-money-gen] + in if True
386.57 s
[really-safe-money-gen] then
386.57 s
[really-safe-money-gen] if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
386.57 s
[really-safe-money-gen] then Nothing
386.70 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:397:14-31:
386.70 s
[really-safe-money-gen] @@ -394,7 +394,7 @@
386.70 s
[really-safe-money-gen] ceiled = (ceiling :: Rational -> Natural) resultRational
386.70 s
[really-safe-money-gen] floored :: Natural
386.70 s
[really-safe-money-gen] floored = (floor :: Rational -> Natural) resultRational
386.70 s
[really-safe-money-gen] - in if ceiled == floored
386.70 s
[really-safe-money-gen] + in if False
386.70 s
[really-safe-money-gen] then
386.70 s
[really-safe-money-gen] if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
386.70 s
[really-safe-money-gen] then Nothing
386.83 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Amount.hs:397:14-31:
386.83 s
[really-safe-money-gen] @@ -394,7 +394,7 @@
386.83 s
[really-safe-money-gen] ceiled = (ceiling :: Rational -> Natural) resultRational
386.83 s
[really-safe-money-gen] floored :: Natural
386.83 s
[really-safe-money-gen] floored = (floor :: Rational -> Natural) resultRational
386.83 s
[really-safe-money-gen] - in if ceiled == floored
386.83 s
[really-safe-money-gen] + in if not (ceiled == floored)
386.83 s
[really-safe-money-gen] then
386.83 s
[really-safe-money-gen] if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
386.83 s
[really-safe-money-gen] then Nothing
386.86 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:399:18-83:
386.86 s
[really-safe-money-gen] @@ -396,7 +396,7 @@
386.86 s
[really-safe-money-gen] floored = (floor :: Rational -> Natural) resultRational
386.86 s
[really-safe-money-gen] in if ceiled == floored
386.86 s
[really-safe-money-gen] then
386.86 s
[really-safe-money-gen] - if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
386.86 s
[really-safe-money-gen] + if False
386.86 s
[really-safe-money-gen] then Nothing
386.86 s
[really-safe-money-gen] else Just $ Amount (fromIntegral ceiled)
386.86 s
[really-safe-money-gen] else Nothing
386.98 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Amount.hs:399:15-57:
386.98 s
[really-safe-money-gen] @@ -396,7 +396,7 @@
386.98 s
[really-safe-money-gen] floored = (floor :: Rational -> Natural) resultRational
386.98 s
[really-safe-money-gen] in if ceiled == floored
386.98 s
[really-safe-money-gen] then
386.98 s
[really-safe-money-gen] - if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
386.98 s
[really-safe-money-gen] + if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
386.98 s
[really-safe-money-gen] then Nothing
386.98 s
[really-safe-money-gen] else Just $ Amount (fromIntegral ceiled)
386.99 s
[really-safe-money-gen] else Nothing
387.01 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:399:18-83:
387.01 s
[really-safe-money-gen] @@ -396,7 +396,7 @@
387.01 s
[really-safe-money-gen] floored = (floor :: Rational -> Natural) resultRational
387.01 s
[really-safe-money-gen] in if ceiled == floored
387.01 s
[really-safe-money-gen] then
387.01 s
[really-safe-money-gen] - if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
387.01 s
[really-safe-money-gen] + if True
387.01 s
[really-safe-money-gen] then Nothing
387.01 s
[really-safe-money-gen] else Just $ Amount (fromIntegral ceiled)
387.02 s
[really-safe-money-gen] else Nothing
387.02 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Amount.hs:399:18-83:
387.02 s
[really-safe-money-gen] @@ -396,7 +396,7 @@
387.02 s
[really-safe-money-gen] floored = (floor :: Rational -> Natural) resultRational
387.02 s
[really-safe-money-gen] in if ceiled == floored
387.02 s
[really-safe-money-gen] then
387.02 s
[really-safe-money-gen] - if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
387.02 s
[really-safe-money-gen] + if not (ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64))
387.02 s
[really-safe-money-gen] then Nothing
387.03 s
[really-safe-money-gen] else Just $ Amount (fromIntegral ceiled)
387.03 s
[really-safe-money-gen] else Nothing
387.11 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Amount.hs:397:11-25:
387.11 s
[really-safe-money-gen] @@ -394,7 +394,7 @@
387.11 s
[really-safe-money-gen] ceiled = (ceiling :: Rational -> Natural) resultRational
387.11 s
[really-safe-money-gen] floored :: Natural
387.11 s
[really-safe-money-gen] floored = (floor :: Rational -> Natural) resultRational
387.11 s
[really-safe-money-gen] - in if ceiled == floored
387.11 s
[really-safe-money-gen] + in if ceiled == floored
387.11 s
[really-safe-money-gen] then
387.11 s
[really-safe-money-gen] if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
387.11 s
[really-safe-money-gen] then Nothing
387.27 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:320:9-10:
387.27 s
[really-safe-money-gen] @@ -317,7 +317,7 @@
387.27 s
[really-safe-money-gen] Double ->
387.27 s
[really-safe-money-gen] Maybe Amount
387.27 s
[really-safe-money-gen] fromDouble (QuantisationFactor qf) d
387.27 s
[really-safe-money-gen] - | d < 0 = Nothing
387.27 s
[really-safe-money-gen] + | d < 1 = Nothing
387.27 s
[really-safe-money-gen] | otherwise =
387.27 s
[really-safe-money-gen] let resultDouble :: Double
387.27 s
[really-safe-money-gen] resultDouble = d * (fromIntegral :: Word32 -> Double) qf
387.28 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:320:5-10:
387.28 s
[really-safe-money-gen] @@ -317,7 +317,7 @@
387.28 s
[really-safe-money-gen] Double ->
387.28 s
[really-safe-money-gen] Maybe Amount
387.28 s
[really-safe-money-gen] fromDouble (QuantisationFactor qf) d
387.28 s
[really-safe-money-gen] - | d < 0 = Nothing
387.28 s
[really-safe-money-gen] + | False = Nothing
387.28 s
[really-safe-money-gen] | otherwise =
387.28 s
[really-safe-money-gen] let resultDouble :: Double
387.28 s
[really-safe-money-gen] resultDouble = d * (fromIntegral :: Word32 -> Double) qf
387.28 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Amount.hs:320:5-10:
387.28 s
[really-safe-money-gen] @@ -317,7 +317,7 @@
387.29 s
[really-safe-money-gen] Double ->
387.29 s
[really-safe-money-gen] Maybe Amount
387.29 s
[really-safe-money-gen] fromDouble (QuantisationFactor qf) d
387.29 s
[really-safe-money-gen] - | d < 0 = Nothing
387.29 s
[really-safe-money-gen] + | not (d < 0) = Nothing
387.29 s
[really-safe-money-gen] | otherwise =
387.29 s
[really-safe-money-gen] let resultDouble :: Double
387.29 s
[really-safe-money-gen] resultDouble = d * (fromIntegral :: Word32 -> Double) qf
387.29 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:320:5-10:
387.29 s
[really-safe-money-gen] @@ -317,7 +317,7 @@
387.29 s
[really-safe-money-gen] Double ->
387.29 s
[really-safe-money-gen] Maybe Amount
387.29 s
[really-safe-money-gen] fromDouble (QuantisationFactor qf) d
387.29 s
[really-safe-money-gen] - | d < 0 = Nothing
387.29 s
[really-safe-money-gen] + | True = Nothing
387.29 s
[really-safe-money-gen] | otherwise =
387.29 s
[really-safe-money-gen] let resultDouble :: Double
387.29 s
[really-safe-money-gen] resultDouble = d * (fromIntegral :: Word32 -> Double) qf
387.39 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:321:5-14:
387.39 s
[really-safe-money-gen] @@ -318,7 +318,7 @@
387.39 s
[really-safe-money-gen] Maybe Amount
387.39 s
[really-safe-money-gen] fromDouble (QuantisationFactor qf) d
387.39 s
[really-safe-money-gen] | d < 0 = Nothing
387.39 s
[really-safe-money-gen] - | otherwise =
387.39 s
[really-safe-money-gen] + | True =
387.39 s
[really-safe-money-gen] let resultDouble :: Double
387.39 s
[really-safe-money-gen] resultDouble = d * (fromIntegral :: Word32 -> Double) qf
387.39 s
[really-safe-money-gen] in go resultDouble
387.39 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Amount.hs:321:5-14:
387.39 s
[really-safe-money-gen] @@ -318,7 +318,7 @@
387.39 s
[really-safe-money-gen] Maybe Amount
387.39 s
[really-safe-money-gen] fromDouble (QuantisationFactor qf) d
387.39 s
[really-safe-money-gen] | d < 0 = Nothing
387.39 s
[really-safe-money-gen] - | otherwise =
387.39 s
[really-safe-money-gen] + | not (otherwise) =
387.39 s
[really-safe-money-gen] let resultDouble :: Double
387.39 s
[really-safe-money-gen] resultDouble = d * (fromIntegral :: Word32 -> Double) qf
387.39 s
[really-safe-money-gen] in go resultDouble
387.40 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:321:5-14:
387.40 s
[really-safe-money-gen] @@ -318,7 +318,7 @@
387.40 s
[really-safe-money-gen] Maybe Amount
387.40 s
[really-safe-money-gen] fromDouble (QuantisationFactor qf) d
387.40 s
[really-safe-money-gen] | d < 0 = Nothing
387.40 s
[really-safe-money-gen] - | otherwise =
387.40 s
[really-safe-money-gen] + | False =
387.40 s
[really-safe-money-gen] let resultDouble :: Double
387.40 s
[really-safe-money-gen] resultDouble = d * (fromIntegral :: Word32 -> Double) qf
387.40 s
[really-safe-money-gen] in go resultDouble
387.42 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:327:9-16:
387.42 s
[really-safe-money-gen] @@ -324,7 +324,7 @@
387.42 s
[really-safe-money-gen] in go resultDouble
387.42 s
[really-safe-money-gen] where
387.43 s
[really-safe-money-gen] go resultDouble
387.43 s
[really-safe-money-gen] - | isNaN d = Nothing
387.43 s
[really-safe-money-gen] + | False = Nothing
387.43 s
[really-safe-money-gen] | isInfinite d = Nothing
387.43 s
[really-safe-money-gen] | otherwise =
387.43 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
387.54 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:327:9-16:
387.54 s
[really-safe-money-gen] @@ -324,7 +324,7 @@
387.54 s
[really-safe-money-gen] in go resultDouble
387.54 s
[really-safe-money-gen] where
387.54 s
[really-safe-money-gen] go resultDouble
387.54 s
[really-safe-money-gen] - | isNaN d = Nothing
387.54 s
[really-safe-money-gen] + | True = Nothing
387.54 s
[really-safe-money-gen] | isInfinite d = Nothing
387.54 s
[really-safe-money-gen] | otherwise =
387.54 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
387.69 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Amount.hs:327:9-16:
387.69 s
[really-safe-money-gen] @@ -324,7 +324,7 @@
387.69 s
[really-safe-money-gen] in go resultDouble
387.69 s
[really-safe-money-gen] where
387.69 s
[really-safe-money-gen] go resultDouble
387.69 s
[really-safe-money-gen] - | isNaN d = Nothing
387.69 s
[really-safe-money-gen] + | not (isNaN d) = Nothing
387.69 s
[really-safe-money-gen] | isInfinite d = Nothing
387.71 s
[really-safe-money-gen] | otherwise =
387.71 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
387.73 s
[really-safe-money-gen] TeTseTtseitsnitgni gnm gum tumatutatitaoitnoi noC noC noCsnotsnBtsoBtooBloo loa lta tas trs crs/crM/coM/noMenoyen/yeA/ymA/omAuomnuotnu.tnh.tsh.:sh3:s23:823:829:9-9:2-912-:11
387.73 s
[really-safe-money-gen] :8@
387.73 s
[really-safe-money-gen] :@@
387.73 s
[really-safe-money-gen] @@- @3- 23-523,527,6 7,+ 73+ 23+523,527,6 7,@ 7@@
387.74 s
[really-safe-money-gen] @@
387.74 s
[really-safe-money-gen] @
387.74 s
[really-safe-money-gen] w hw eh re erg
387.74 s
[really-safe-money-gen] eo
387.74 s
[really-safe-money-gen] r e s ug logt oDr oerusebuslluetl
387.74 s
[really-safe-money-gen] Dt oD uo bu lb el
387.74 s
[really-safe-money-gen] e
387.74 s
[really-safe-money-gen] | i s N a N| |di si=Ns aNNNao Ntd h di= n =gN
387.74 s
[really-safe-money-gen] oN to ht ih ni gn
387.74 s
[really-safe-money-gen] g -
387.74 s
[really-safe-money-gen] | - i s I n f| i |ni isitIsenI fndif ni=in tiNeto etd h di= n =gN
387.74 s
[really-safe-money-gen] oN-to ht ih ni gn
387.74 s
[really-safe-money-gen] g +
387.74 s
[really-safe-money-gen] | + o t h e r| w |iF saTelr su=ee
387.74 s
[really-safe-money-gen] +== NN oo tt hh ii|nn ggT
387.74 s
[really-safe-money-gen]
387.74 s
[really-safe-money-gen] r u e =
387.74 s
[really-safe-money-gen] || oo tt hh ee rr ww ii ss-ee- ==S
387.74 s
[really-safe-money-gen]
387.74 s
[really-safe-money-gen] h o r t c u t f o r --n--u mSSbhheoorrrstt cctuuhtta tff ooarrr enn uuwmmabbyee rrtsso ott hhbaaittg aaarrneey wwwaaayyy
387.74 s
[really-safe-money-gen] tt oo oo bb ii gg aa nn yy-ww-aa yys
387.74 s
[really-safe-money-gen]
387.75 s
[really-safe-money-gen] o t h a t w e d o--n--' tss ooh attvhheaa ttt oww eec oddmoopnnu''ttte hhtaahvveee attcooc occroodmmippnuugtt ee' Nttahhteeu raaacclcc'oo rrvddaiilnnugge s''.NN
387.75 s
[really-safe-money-gen] aa tt uu rr aa ll '' vv aa ll uuieefss ..e
387.75 s
[really-safe-money-gen]
387.75 s
[really-safe-money-gen] xponent resultDouble > 65
387.81 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Amount.hs:328:9-21:
387.81 s
[really-safe-money-gen] @@ -325,7 +325,7 @@
387.81 s
[really-safe-money-gen] where
387.82 s
[really-safe-money-gen] go resultDouble
387.82 s
[really-safe-money-gen] | isNaN d = Nothing
387.82 s
[really-safe-money-gen] - | isInfinite d = Nothing
387.82 s
[really-safe-money-gen] + | not (isInfinite d) = Nothing
387.82 s
[really-safe-money-gen] | otherwise =
387.82 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
387.82 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.
387.84 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:329:9-18:
387.85 s
[really-safe-money-gen] @@ -326,7 +326,7 @@
387.85 s
[really-safe-money-gen] go resultDouble
387.85 s
[really-safe-money-gen] | isNaN d = Nothing
387.85 s
[really-safe-money-gen] | isInfinite d = Nothing
387.85 s
[really-safe-money-gen] - | otherwise =
387.85 s
[really-safe-money-gen] + | False =
387.85 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
387.85 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.
387.85 s
[really-safe-money-gen] if exponent resultDouble > 65
387.89 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Amount.hs:329:9-18:
387.89 s
[really-safe-money-gen] @@ -326,7 +326,7 @@
387.89 s
[really-safe-money-gen] go resultDouble
387.89 s
[really-safe-money-gen] | isNaN d = Nothing
387.89 s
[really-safe-money-gen] | isInfinite d = Nothing
387.89 s
[really-safe-money-gen] - | otherwise =
387.89 s
[really-safe-money-gen] + | not (otherwise) =
387.89 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
387.89 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.
387.90 s
[really-safe-money-gen] if exponent resultDouble > 65
387.95 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:332:38-40:
387.95 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
387.95 s
[really-safe-money-gen] | otherwise =
387.95 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
387.95 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.
387.95 s
[really-safe-money-gen] - if exponent resultDouble > 65
387.95 s
[really-safe-money-gen] + if exponent resultDouble > 0
387.95 s
[really-safe-money-gen] then Nothing
387.95 s
[really-safe-money-gen] else
387.95 s
[really-safe-money-gen] let ceiled :: Natural
388.32 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:332:38-40:
388.32 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
388.32 s
[really-safe-money-gen] | otherwise =
388.32 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
388.32 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.
388.32 s
[really-safe-money-gen] - if exponent resultDouble > 65
388.32 s
[really-safe-money-gen] + if exponent resultDouble > 1
388.32 s
[really-safe-money-gen] then Nothing
388.32 s
[really-safe-money-gen] else
388.32 s
[really-safe-money-gen] let ceiled :: Natural
388.34 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:332:38-40:
388.34 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
388.34 s
[really-safe-money-gen] | otherwise =
388.35 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
388.35 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.
388.35 s
[really-safe-money-gen] - if exponent resultDouble > 65
388.35 s
[really-safe-money-gen] + if exponent resultDouble > -65
388.35 s
[really-safe-money-gen] then Nothing
388.35 s
[really-safe-money-gen] else
388.35 s
[really-safe-money-gen] let ceiled :: Natural
388.35 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:332:14-40:
388.35 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
388.36 s
[really-safe-money-gen] | otherwise =
388.36 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
388.36 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.
388.36 s
[really-safe-money-gen] - if exponent resultDouble > 65
388.36 s
[really-safe-money-gen] + if True
388.36 s
[really-safe-money-gen] then Nothing
388.36 s
[really-safe-money-gen] else
388.36 s
[really-safe-money-gen] let ceiled :: Natural
388.57 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:332:14-40:
388.57 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
388.57 s
[really-safe-money-gen] | otherwise =
388.57 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
388.57 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.
388.57 s
[really-safe-money-gen] - if exponent resultDouble > 65
388.57 s
[really-safe-money-gen] + if False
388.58 s
[really-safe-money-gen] then Nothing
388.58 s
[really-safe-money-gen] else
388.58 s
[really-safe-money-gen] let ceiled :: Natural
388.78 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Amount.hs:332:14-40:
388.78 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
388.78 s
[really-safe-money-gen] | otherwise =
388.78 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
388.78 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.
388.78 s
[really-safe-money-gen] - if exponent resultDouble > 65
388.78 s
[really-safe-money-gen] + if not (exponent resultDouble > 65)
388.78 s
[really-safe-money-gen] then Nothing
388.78 s
[really-safe-money-gen] else
388.78 s
[really-safe-money-gen] let ceiled :: Natural
388.90 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:339:22-39:
388.90 s
[really-safe-money-gen] @@ -336,7 +336,7 @@
388.90 s
[really-safe-money-gen] ceiled = (ceiling :: Double -> Natural) resultDouble
388.90 s
[really-safe-money-gen] floored :: Natural
388.90 s
[really-safe-money-gen] floored = (floor :: Double -> Natural) resultDouble
388.90 s
[really-safe-money-gen] - in if ceiled == floored
388.90 s
[really-safe-money-gen] + in if True
388.90 s
[really-safe-money-gen] then
388.90 s
[really-safe-money-gen] if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
388.90 s
[really-safe-money-gen] then Nothing
388.98 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Amount.hs:339:22-39:
388.98 s
[really-safe-money-gen] @@ -336,7 +336,7 @@
388.99 s
[really-safe-money-gen] ceiled = (ceiling :: Double -> Natural) resultDouble
388.99 s
[really-safe-money-gen] floored :: Natural
388.99 s
[really-safe-money-gen] floored = (floor :: Double -> Natural) resultDouble
388.99 s
[really-safe-money-gen] - in if ceiled == floored
388.99 s
[really-safe-money-gen] + in if not (ceiled == floored)
388.99 s
[really-safe-money-gen] then
388.99 s
[really-safe-money-gen] if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
388.99 s
[really-safe-money-gen] then Nothing
389.03 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:341:26-91:
389.03 s
[really-safe-money-gen] @@ -338,7 +338,7 @@
389.03 s
[really-safe-money-gen] floored = (floor :: Double -> Natural) resultDouble
389.03 s
[really-safe-money-gen] in if ceiled == floored
389.03 s
[really-safe-money-gen] then
389.03 s
[really-safe-money-gen] - if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
389.03 s
[really-safe-money-gen] + if True
389.03 s
[really-safe-money-gen] then Nothing
389.03 s
[really-safe-money-gen] else Just $ Amount (fromIntegral ceiled)
389.03 s
[really-safe-money-gen] else Nothing
389.04 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Amount.hs:341:26-91:
389.04 s
[really-safe-money-gen] @@ -338,7 +338,7 @@
389.04 s
[really-safe-money-gen] floored = (floor :: Double -> Natural) resultDouble
389.04 s
[really-safe-money-gen] in if ceiled == floored
389.04 s
[really-safe-money-gen] then
389.04 s
[really-safe-money-gen] - if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
389.04 s
[really-safe-money-gen] + if not (ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64))
389.04 s
[really-safe-money-gen] then Nothing
389.04 s
[really-safe-money-gen] else Just $ Amount (fromIntegral ceiled)
389.04 s
[really-safe-money-gen] else Nothing
389.08 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:339:22-39:
389.08 s
[really-safe-money-gen] @@ -336,7 +336,7 @@
389.08 s
[really-safe-money-gen] ceiled = (ceiling :: Double -> Natural) resultDouble
389.08 s
[really-safe-money-gen] floored :: Natural
389.08 s
[really-safe-money-gen] floored = (floor :: Double -> Natural) resultDouble
389.08 s
[really-safe-money-gen] - in if ceiled == floored
389.09 s
[really-safe-money-gen] + in if False
389.09 s
[really-safe-money-gen] then
389.09 s
[really-safe-money-gen] if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
389.09 s
[really-safe-money-gen] then Nothing
389.12 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Amount.hs:341:23-65:
389.12 s
[really-safe-money-gen] @@ -338,7 +338,7 @@
389.12 s
[really-safe-money-gen] floored = (floor :: Double -> Natural) resultDouble
389.12 s
[really-safe-money-gen] in if ceiled == floored
389.12 s
[really-safe-money-gen] then
389.13 s
[really-safe-money-gen] - if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
389.14 s
[really-safe-money-gen] + if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
389.14 s
[really-safe-money-gen] then Nothing
389.15 s
[really-safe-money-gen] else Just $ Amount (fromIntegral ceiled)
389.15 s
[really-safe-money-gen] else Nothing
389.18 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:341:26-91:
389.18 s
[really-safe-money-gen] @@ -338,7 +338,7 @@
389.18 s
[really-safe-money-gen] floored = (floor :: Double -> Natural) resultDouble
389.18 s
[really-safe-money-gen] in if ceiled == floored
389.18 s
[really-safe-money-gen] then
389.18 s
[really-safe-money-gen] - if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
389.18 s
[really-safe-money-gen] + if False
389.18 s
[really-safe-money-gen] then Nothing
389.18 s
[really-safe-money-gen] else Just $ Amount (fromIntegral ceiled)
389.18 s
[really-safe-money-gen] else Nothing
389.26 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Amount.hs:339:19-33:
389.26 s
[really-safe-money-gen] @@ -336,7 +336,7 @@
389.26 s
[really-safe-money-gen] ceiled = (ceiling :: Double -> Natural) resultDouble
389.27 s
[really-safe-money-gen] floored :: Natural
389.27 s
[really-safe-money-gen] floored = (floor :: Double -> Natural) resultDouble
389.27 s
[really-safe-money-gen] - in if ceiled == floored
389.27 s
[really-safe-money-gen] + in if ceiled == floored
389.27 s
[really-safe-money-gen] then
389.27 s
[really-safe-money-gen] if ceiled > (fromIntegral :: Word64 -> Natural) (maxBound :: Word64)
389.29 s
[really-safe-money-gen] then Nothing
389.30 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:290:79-80:
389.30 s
[really-safe-money-gen] @@ -287,7 +287,7 @@
389.30 s
[really-safe-money-gen] -- >>> toRatio (QuantisationFactor 100) (Amount 1)
389.30 s
[really-safe-money-gen] -- 1 % 100
389.31 s
[really-safe-money-gen] toRatio :: QuantisationFactor -> Amount -> Ratio Natural
389.31 s
[really-safe-money-gen] -toRatio (QuantisationFactor 0) a = fromIntegral (toMinimalQuantisations a) :% 0
389.31 s
[really-safe-money-gen] +toRatio (QuantisationFactor 0) a = fromIntegral (toMinimalQuantisations a) :% 1
389.31 s
[really-safe-money-gen] toRatio (QuantisationFactor quantisationFactor) a =
389.31 s
[really-safe-money-gen] (fromIntegral :: Word64 -> Natural) (toMinimalQuantisations a)
389.31 s
[really-safe-money-gen] % (fromIntegral :: Word32 -> Natural) quantisationFactor
389.36 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Amount.hs:332:11-33:
389.36 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
389.36 s
[really-safe-money-gen] | otherwise =
389.36 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
389.36 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.
389.36 s
[really-safe-money-gen] - if exponent resultDouble > 65
389.36 s
[really-safe-money-gen] + if exponent resultDouble > 65
389.36 s
[really-safe-money-gen] then Nothing
389.36 s
[really-safe-money-gen] else
389.36 s
[really-safe-money-gen] let ceiled :: Natural
389.53 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:494:96-97:
389.53 s
[really-safe-money-gen] @@ -491,7 +491,7 @@
389.54 s
[really-safe-money-gen] let maxBoundI :: Integer
389.54 s
[really-safe-money-gen] maxBoundI = fromIntegral (maxBound :: Word64)
389.54 s
[really-safe-money-gen] r :: Integer
389.55 s
[really-safe-money-gen] - r = foldl' (\acc a -> (toInteger :: Word64 -> Integer) (toMinimalQuantisations a) + acc) 0 l
389.55 s
[really-safe-money-gen] + r = foldl' (\acc a -> (toInteger :: Word64 -> Integer) (toMinimalQuantisations a) + acc) 1 l
389.55 s
[really-safe-money-gen] in if r > maxBoundI
389.55 s
[really-safe-money-gen] then Nothing
389.55 s
[really-safe-money-gen] else Just (Amount ((fromInteger :: Integer -> Word64) r))
389.59 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:495:10-23:
389.59 s
[really-safe-money-gen] @@ -492,7 +492,7 @@
389.59 s
[really-safe-money-gen] maxBoundI = fromIntegral (maxBound :: Word64)
389.59 s
[really-safe-money-gen] r :: Integer
389.59 s
[really-safe-money-gen] r = foldl' (\acc a -> (toInteger :: Word64 -> Integer) (toMinimalQuantisations a) + acc) 0 l
389.59 s
[really-safe-money-gen] - in if r > maxBoundI
389.59 s
[really-safe-money-gen] + in if True
389.59 s
[really-safe-money-gen] then Nothing
389.59 s
[really-safe-money-gen] else Just (Amount ((fromInteger :: Integer -> Word64) r))
389.59 s
[really-safe-money-gen]
389.80 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:495:10-23:
389.80 s
[really-safe-money-gen] @@ -492,7 +492,7 @@
389.80 s
[really-safe-money-gen] maxBoundI = fromIntegral (maxBound :: Word64)
389.80 s
[really-safe-money-gen] r :: Integer
389.80 s
[really-safe-money-gen] r = foldl' (\acc a -> (toInteger :: Word64 -> Integer) (toMinimalQuantisations a) + acc) 0 l
389.80 s
[really-safe-money-gen] - in if r > maxBoundI
389.80 s
[really-safe-money-gen] + in if False
389.81 s
[really-safe-money-gen] then Nothing
389.81 s
[really-safe-money-gen] else Just (Amount ((fromInteger :: Integer -> Word64) r))
389.81 s
[really-safe-money-gen]
389.82 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:801:36-38:
389.82 s
[really-safe-money-gen] @@ -798,7 +798,7 @@
389.82 s
[really-safe-money-gen] quantisationFactorFormatString (QuantisationFactor 0) = "%f"
389.82 s
[really-safe-money-gen] quantisationFactorFormatString (QuantisationFactor qf) =
389.82 s
[really-safe-money-gen] let decimals :: Int
389.82 s
[really-safe-money-gen] - decimals = ceiling $ logBase 10 (fromIntegral qf :: Float)
389.82 s
[really-safe-money-gen] + decimals = ceiling $ logBase 1 (fromIntegral qf :: Float)
389.82 s
[really-safe-money-gen] in printf "%%0.%df" decimals
389.82 s
[really-safe-money-gen]
389.82 s
[really-safe-money-gen] -- | Validate that an 'Amount' is strictly positive. I.e. not 'zero'.
389.82 s
[really-safe-money-gen] Covering tests:
389.82 s
[really-safe-money-gen] Money\.AccountSpec.format.produces valid strings
389.82 s
[really-safe-money-gen]
389.82 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:801:36-38:
389.82 s
[really-safe-money-gen] @@ -798,7 +798,7 @@
389.82 s
[really-safe-money-gen] quantisationFactorFormatString (QuantisationFactor 0) = "%f"
389.82 s
[really-safe-money-gen] quantisationFactorFormatString (QuantisationFactor qf) =
389.82 s
[really-safe-money-gen] let decimals :: Int
389.82 s
[really-safe-money-gen] - decimals = ceiling $ logBase 10 (fromIntegral qf :: Float)
389.82 s
[really-safe-money-gen] + decimals = ceiling $ logBase -10 (fromIntegral qf :: Float)
389.82 s
[really-safe-money-gen] in printf "%%0.%df" decimals
389.82 s
[really-safe-money-gen]
389.82 s
[really-safe-money-gen] -- | Validate that an 'Amount' is strictly positive. I.e. not 'zero'.
389.82 s
[really-safe-money-gen] Covering tests:
389.82 s
[really-safe-money-gen] Money\.AccountSpec.format.produces valid strings
389.82 s
[really-safe-money-gen]
389.82 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:518:14-15:
389.82 s
[really-safe-money-gen] @@ -515,7 +515,7 @@
389.82 s
[really-safe-money-gen] i2 = (fromIntegral :: Word64 -> Integer) a2
389.82 s
[really-safe-money-gen] r :: Integer
389.82 s
[really-safe-money-gen] r = i1 - i2
389.82 s
[really-safe-money-gen] - in if r < 0
389.82 s
[really-safe-money-gen] + in if r < 1
389.82 s
[really-safe-money-gen] then Nothing
389.82 s
[really-safe-money-gen] else Just (Amount ((fromInteger :: Integer -> Word64) r))
389.82 s
[really-safe-money-gen]
389.82 s
[really-safe-money-gen] Covering tests:
389.82 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
389.82 s
[really-safe-money-gen]
389.83 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:389:9-10:
389.83 s
[really-safe-money-gen] @@ -386,7 +386,7 @@
389.83 s
[really-safe-money-gen] fromRational :: QuantisationFactor -> Rational -> Maybe Amount
389.83 s
[really-safe-money-gen] fromRational (QuantisationFactor qf) r
389.83 s
[really-safe-money-gen] | isInvalid r = Nothing
389.83 s
[really-safe-money-gen] - | r < 0 = Nothing
389.83 s
[really-safe-money-gen] + | r < 1 = Nothing
389.83 s
[really-safe-money-gen] | otherwise =
389.83 s
[really-safe-money-gen] let resultRational :: Rational
389.83 s
[really-safe-money-gen] resultRational = r * (fromIntegral :: Word32 -> Rational) qf
389.83 s
[really-safe-money-gen] Covering tests:
389.83 s
[really-safe-money-gen] Money\.AccountSpec.fromRational.roundtrips with toRational
389.83 s
[really-safe-money-gen]
389.83 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:801:36-38:
389.83 s
[really-safe-money-gen] @@ -798,7 +798,7 @@
389.83 s
[really-safe-money-gen] quantisationFactorFormatString (QuantisationFactor 0) = "%f"
389.83 s
[really-safe-money-gen] quantisationFactorFormatString (QuantisationFactor qf) =
389.83 s
[really-safe-money-gen] let decimals :: Int
389.83 s
[really-safe-money-gen] - decimals = ceiling $ logBase 10 (fromIntegral qf :: Float)
389.83 s
[really-safe-money-gen] + decimals = ceiling $ logBase 0 (fromIntegral qf :: Float)
389.83 s
[really-safe-money-gen] in printf "%%0.%df" decimals
389.83 s
[really-safe-money-gen]
389.83 s
[really-safe-money-gen] -- | Validate that an 'Amount' is strictly positive. I.e. not 'zero'.
389.83 s
[really-safe-money-gen] Covering tests:
389.83 s
[really-safe-money-gen] Money\.AccountSpec.format.produces valid strings
389.83 s
[really-safe-money-gen]
389.83 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:390:5-14:
389.83 s
[really-safe-money-gen] @@ -387,7 +387,7 @@
389.83 s
[really-safe-money-gen] fromRational (QuantisationFactor qf) r
389.83 s
[really-safe-money-gen] | isInvalid r = Nothing
389.83 s
[really-safe-money-gen] | r < 0 = Nothing
389.83 s
[really-safe-money-gen] - | otherwise =
389.83 s
[really-safe-money-gen] + | True =
389.83 s
[really-safe-money-gen] let resultRational :: Rational
389.83 s
[really-safe-money-gen] resultRational = r * (fromIntegral :: Word32 -> Rational) qf
389.83 s
[really-safe-money-gen] ceiled :: Natural
389.83 s
[really-safe-money-gen] Covering tests:
389.83 s
[really-safe-money-gen] Money\.AccountSpec.fromRational.roundtrips with toRational
389.83 s
[really-safe-money-gen]
389.83 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:518:10-15:
389.83 s
[really-safe-money-gen] @@ -515,7 +515,7 @@
389.83 s
[really-safe-money-gen] i2 = (fromIntegral :: Word64 -> Integer) a2
389.83 s
[really-safe-money-gen] r :: Integer
389.83 s
[really-safe-money-gen] r = i1 - i2
389.83 s
[really-safe-money-gen] - in if r < 0
389.83 s
[really-safe-money-gen] + in if False
389.83 s
[really-safe-money-gen] then Nothing
389.83 s
[really-safe-money-gen] else Just (Amount ((fromInteger :: Integer -> Word64) r))
389.83 s
[really-safe-money-gen]
389.83 s
[really-safe-money-gen] Covering tests:
389.83 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.subtract.matches what you would get with Integer, if nothing fails
389.83 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.subtract.matches what you would get with Integer, if nothing fails
389.83 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.subtract.matches what you would get with Integer, if nothing fails
389.83 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.subtract.matches what you would get with Integer, if nothing fails
389.83 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.subtract.matches what you would get with Integer, if nothing fails
389.83 s
[really-safe-money-gen] Money\.AmountSpec.subtract.fails for 0 - 1
389.83 s
[really-safe-money-gen] Money\.AmountSpec.subtract.fails for 0 - maxBound
389.83 s
[really-safe-money-gen] Money\.AmountSpec.subtract.matches what you would get with Integer, if nothing fails
389.83 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtract.produces valid amounts
389.83 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
389.83 s
[really-safe-money-gen]
389.83 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:569:18-19:
389.83 s
[really-safe-money-gen] @@ -566,7 +566,7 @@
389.83 s
[really-safe-money-gen] (smallerChunkSize, rest) = divMod a ((fromIntegral :: Word32 -> Word64) f)
389.83 s
[really-safe-money-gen] smallerChunk :: Amount
389.83 s
[really-safe-money-gen] smallerChunk = Amount smallerChunkSize
389.83 s
[really-safe-money-gen] - in if rest == 0
389.83 s
[really-safe-money-gen] + in if rest == 1
389.83 s
[really-safe-money-gen] then DistributedIntoEqualChunks f smallerChunk
389.83 s
[really-safe-money-gen] else
389.83 s
[really-safe-money-gen] let -- This 'fromIntegral' is theoretically not safe, but it's
389.83 s
[really-safe-money-gen] Covering tests:
389.83 s
[really-safe-money-gen] Money\.AccountSpec.distribute.correctly distributes 5 into 3
389.83 s
[really-safe-money-gen]
389.83 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:518:10-15:
389.83 s
[really-safe-money-gen] @@ -515,7 +515,7 @@
389.83 s
[really-safe-money-gen] i2 = (fromIntegral :: Word64 -> Integer) a2
389.83 s
[really-safe-money-gen] r :: Integer
389.83 s
[really-safe-money-gen] r = i1 - i2
389.83 s
[really-safe-money-gen] - in if r < 0
389.83 s
[really-safe-money-gen] + in if True
389.83 s
[really-safe-money-gen] then Nothing
389.83 s
[really-safe-money-gen] else Just (Amount ((fromInteger :: Integer -> Word64) r))
389.83 s
[really-safe-money-gen]
389.83 s
[really-safe-money-gen] Covering tests:
389.83 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.subtract.matches what you would get with Integer, if nothing fails
389.83 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.subtract.matches what you would get with Integer, if nothing fails
389.84 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.subtract.matches what you would get with Integer, if nothing fails
389.84 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.subtract.matches what you would get with Integer, if nothing fails
389.84 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.subtract.matches what you would get with Integer, if nothing fails
389.84 s
[really-safe-money-gen] Money\.AmountSpec.subtract.fails for 0 - 1
389.84 s
[really-safe-money-gen] Money\.AmountSpec.subtract.fails for 0 - maxBound
389.84 s
[really-safe-money-gen] Money\.AmountSpec.subtract.matches what you would get with Integer, if nothing fails
389.84 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtract.produces valid amounts
389.84 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
389.84 s
[really-safe-money-gen]
389.84 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:321:5-14:
389.84 s
[really-safe-money-gen] @@ -318,7 +318,7 @@
389.84 s
[really-safe-money-gen] Maybe Amount
389.84 s
[really-safe-money-gen] fromDouble (QuantisationFactor qf) d
389.84 s
[really-safe-money-gen] | d < 0 = Nothing
389.84 s
[really-safe-money-gen] - | otherwise =
389.84 s
[really-safe-money-gen] + | False =
389.84 s
[really-safe-money-gen] let resultDouble :: Double
389.84 s
[really-safe-money-gen] resultDouble = d * (fromIntegral :: Word32 -> Double) qf
389.84 s
[really-safe-money-gen] in go resultDouble
389.84 s
[really-safe-money-gen] Covering tests:
389.84 s
[really-safe-money-gen] Money\.AccountSpec.fromDouble.produces valid rational
389.84 s
[really-safe-money-gen]
389.84 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:320:9-10:
389.84 s
[really-safe-money-gen] @@ -317,7 +317,7 @@
389.84 s
[really-safe-money-gen] Double ->
389.84 s
[really-safe-money-gen] Maybe Amount
389.84 s
[really-safe-money-gen] fromDouble (QuantisationFactor qf) d
389.84 s
[really-safe-money-gen] - | d < 0 = Nothing
389.84 s
[really-safe-money-gen] + | d < 1 = Nothing
389.84 s
[really-safe-money-gen] | otherwise =
389.84 s
[really-safe-money-gen] let resultDouble :: Double
389.84 s
[really-safe-money-gen] resultDouble = d * (fromIntegral :: Word32 -> Double) qf
389.84 s
[really-safe-money-gen] Covering tests:
389.84 s
[really-safe-money-gen] Money\.AccountSpec.fromDouble.produces valid rational
389.84 s
[really-safe-money-gen]
389.84 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:321:5-14:
389.84 s
[really-safe-money-gen] @@ -318,7 +318,7 @@
389.84 s
[really-safe-money-gen] Maybe Amount
389.84 s
[really-safe-money-gen] fromDouble (QuantisationFactor qf) d
389.84 s
[really-safe-money-gen] | d < 0 = Nothing
389.84 s
[really-safe-money-gen] - | otherwise =
389.84 s
[really-safe-money-gen] + | True =
389.84 s
[really-safe-money-gen] let resultDouble :: Double
389.84 s
[really-safe-money-gen] resultDouble = d * (fromIntegral :: Word32 -> Double) qf
389.84 s
[really-safe-money-gen] in go resultDouble
389.84 s
[really-safe-money-gen] Covering tests:
389.84 s
[really-safe-money-gen] Money\.AccountSpec.fromDouble.produces valid rational
389.84 s
[really-safe-money-gen]
389.84 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:390:5-14:
389.84 s
[really-safe-money-gen] @@ -387,7 +387,7 @@
389.84 s
[really-safe-money-gen] fromRational (QuantisationFactor qf) r
389.84 s
[really-safe-money-gen] | isInvalid r = Nothing
389.84 s
[really-safe-money-gen] | r < 0 = Nothing
389.84 s
[really-safe-money-gen] - | otherwise =
389.84 s
[really-safe-money-gen] + | False =
389.84 s
[really-safe-money-gen] let resultRational :: Rational
389.84 s
[really-safe-money-gen] resultRational = r * (fromIntegral :: Word32 -> Rational) qf
389.84 s
[really-safe-money-gen] ceiled :: Natural
389.84 s
[really-safe-money-gen] Covering tests:
389.84 s
[really-safe-money-gen] Money\.AccountSpec.fromRational.roundtrips with toRational
389.84 s
[really-safe-money-gen]
389.84 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:329:9-18:
389.84 s
[really-safe-money-gen] @@ -326,7 +326,7 @@
389.84 s
[really-safe-money-gen] go resultDouble
389.84 s
[really-safe-money-gen] | isNaN d = Nothing
389.84 s
[really-safe-money-gen] | isInfinite d = Nothing
389.84 s
[really-safe-money-gen] - | otherwise =
389.84 s
[really-safe-money-gen] + | True =
389.84 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
389.84 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.
389.84 s
[really-safe-money-gen] if exponent resultDouble > 65
389.84 s
[really-safe-money-gen] Covering tests:
389.84 s
[really-safe-money-gen] Money\.AccountSpec.fromDouble.produces valid rational
389.84 s
[really-safe-money-gen]
389.84 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:329:9-18:
389.84 s
[really-safe-money-gen] @@ -326,7 +326,7 @@
389.84 s
[really-safe-money-gen] go resultDouble
389.84 s
[really-safe-money-gen] | isNaN d = Nothing
389.84 s
[really-safe-money-gen] | isInfinite d = Nothing
389.84 s
[really-safe-money-gen] - | otherwise =
389.84 s
[really-safe-money-gen] + | False =
389.84 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
389.84 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.
389.84 s
[really-safe-money-gen] if exponent resultDouble > 65
389.84 s
[really-safe-money-gen] Covering tests:
389.84 s
[really-safe-money-gen] Money\.AccountSpec.fromDouble.produces valid rational
389.84 s
[really-safe-money-gen]
389.84 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:332:38-40:
389.84 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
389.84 s
[really-safe-money-gen] | otherwise =
389.84 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
389.84 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.Testing mutation Negate at src/Money/Amount.hs:495:10-23:
389.85 s
[really-safe-money-gen] @@ -492,7 +492,7 @@
389.85 s
[really-safe-money-gen] maxBoundI = fromIntegral (maxBound :: Word64)
389.85 s
[really-safe-money-gen] r :: Integer
389.85 s
[really-safe-money-gen] r = foldl' (\acc a -> (toInteger :: Word64 -> Integer) (toMinimalQuantisations a) + acc) 0 l
389.85 s
[really-safe-money-gen] - in if r > maxBoundI
389.85 s
[really-safe-money-gen] + in if not (r > maxBoundI)
389.85 s
[really-safe-money-gen] then Nothing
389.85 s
[really-safe-money-gen] else Just (Amount ((fromInteger :: Integer -> Word64) r))
389.85 s
[really-safe-money-gen]
389.85 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:250:15-16:
389.85 s
[really-safe-money-gen] @@ -247,7 +247,7 @@
389.85 s
[really-safe-money-gen] -- >>> zero
389.85 s
[really-safe-money-gen] -- Amount 0
389.85 s
[really-safe-money-gen] zero :: Amount
389.85 s
[really-safe-money-gen] -zero = Amount 0
389.85 s
[really-safe-money-gen] +zero = Amount 1
389.85 s
[really-safe-money-gen]
389.85 s
[really-safe-money-gen] -- | Turn an amount into a number of minimal quantisations.
389.85 s
[really-safe-money-gen] --
389.86 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Amount.hs:495:7-66:
389.86 s
[really-safe-money-gen] @@ -492,7 +492,7 @@
389.86 s
[really-safe-money-gen] maxBoundI = fromIntegral (maxBound :: Word64)
389.86 s
[really-safe-money-gen] r :: Integer
389.86 s
[really-safe-money-gen] r = foldl' (\acc a -> (toInteger :: Word64 -> Integer) (toMinimalQuantisations a) + acc) 0 l
389.86 s
[really-safe-money-gen] - in if r > maxBoundI
389.86 s
[really-safe-money-gen] + in if r > maxBoundI
389.86 s
[really-safe-money-gen] then Nothing
389.86 s
[really-safe-money-gen] else Just (Amount ((fromInteger :: Integer -> Word64) r))
389.86 s
[really-safe-money-gen]
389.89 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:661:30-31:
389.90 s
[really-safe-money-gen] @@ -658,7 +658,7 @@
389.90 s
[really-safe-money-gen] -- | The amount and the real rate that was used, considering the 'Rounding'
389.90 s
[really-safe-money-gen] (Maybe Amount, Ratio Natural)
389.90 s
[really-safe-money-gen] fraction _ (Amount 0) f = (Just zero, f)
389.90 s
[really-safe-money-gen] -fraction _ _ 0 = (Just zero, 0)
389.90 s
[really-safe-money-gen] +fraction _ _ 0 = (Just zero, 1)
389.90 s
[really-safe-money-gen] fraction r (Amount a) f =
389.90 s
[really-safe-money-gen] let amountAsRatio :: Ratio Natural
389.90 s
[really-safe-money-gen] amountAsRatio = (fromIntegral :: Word64 -> Ratio Natural) a
390.00 s
[really-safe-money-gen] Testing mutaTteisotni nCgo nmsuttBaotoilo na tC osnrsct/BMooonle ya/tA msorucn/tM.ohnse:y6/8A1m:o1u2n-t3.7h:s
390.00 s
[really-safe-money-gen] :@6@8 1-:61728-,377 :+
390.00 s
[really-safe-money-gen] 6@7@8 ,-76 7@8@,
390.00 s
[really-safe-money-gen] 7 + 6 7 8 , 7m a@x@B
390.00 s
[really-safe-money-gen] o u n d N : :m aNxaBtouurnadlN
390.00 s
[really-safe-money-gen] : : N a t umraaxlB
390.00 s
[really-safe-money-gen] o u n d N = mfarxoBmoIunntdeNg r=a lf r(ommaIxnBtoeugnrda l: :( mWaoxrBdo6u4n)d
390.00 s
[really-safe-money-gen] : : W o r dr6e4s)u
390.00 s
[really-safe-money-gen] l t = A m oruenstu l(t( f=r oAmmIonutnetg r(a(lf r:o:m INnatteugrraall -:>: WNoartdu6r4a)l r-o>u nWdoerddR6e4s)u lrto)u
390.00 s
[really-safe-money-gen] n-d e d Riens u(l ti)f
390.00 s
[really-safe-money-gen] -r o u nidne d(R eisfu lrto u>n dmeadxRBeosuunldtN
390.00 s
[really-safe-money-gen] >+ m a xiBno u(n diNf
390.00 s
[really-safe-money-gen] +T r u ei
390.00 s
[really-safe-money-gen] n ( i f F a l s et
390.01 s
[really-safe-money-gen] h e n N o t h i n g
390.01 s
[really-safe-money-gen] t h e n N o t h i n ge
390.01 s
[really-safe-money-gen] l s e J u s t r e seullste,
390.01 s
[really-safe-money-gen] J u s t r e s u latc,t
390.01 s
[really-safe-money-gen] u a l R a t e
390.01 s
[really-safe-money-gen] actualRate
390.04 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Amount.hs:681:12-37:
390.04 s
[really-safe-money-gen] @@ -678,7 +678,7 @@
390.04 s
[really-safe-money-gen] maxBoundN :: Natural
390.04 s
[really-safe-money-gen] maxBoundN = fromIntegral (maxBound :: Word64)
390.04 s
[really-safe-money-gen] result = Amount ((fromIntegral :: Natural -> Word64) roundedResult)
390.04 s
[really-safe-money-gen] - in ( if roundedResult > maxBoundN
390.04 s
[really-safe-money-gen] + in ( if not (roundedResult > maxBoundN)
390.04 s
[really-safe-money-gen] then Nothing
390.04 s
[really-safe-money-gen] else Just result,
390.04 s
[really-safe-money-gen] actualRate
390.04 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Amount.hs:681:9-27:
390.05 s
[really-safe-money-gen] @@ -678,7 +678,7 @@
390.05 s
[really-safe-money-gen] maxBoundN :: Natural
390.05 s
[really-safe-money-gen] maxBoundN = fromIntegral (maxBound :: Word64)
390.05 s
[really-safe-money-gen] result = Amount ((fromIntegral :: Natural -> Word64) roundedResult)
390.05 s
[really-safe-money-gen] - in ( if roundedResult > maxBoundN
390.05 s
[really-safe-money-gen] + in ( if roundedResult > maxBoundN
390.05 s
[really-safe-money-gen] then Nothing
390.05 s
[really-safe-money-gen] else Just result,
390.05 s
[really-safe-money-gen] actualRate
390.14 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:806:79-92:
390.14 s
[really-safe-money-gen] @@ -803,4 +803,4 @@
390.14 s
[really-safe-money-gen]
390.14 s
[really-safe-money-gen] -- | Validate that an 'Amount' is strictly positive. I.e. not 'zero'.
390.14 s
[really-safe-money-gen] validateStrictlyPositive :: Amount -> Validation
390.14 s
[really-safe-money-gen] -validateStrictlyPositive amount = declare "The Amount is strictly positive" $ amount > zero
390.14 s
[really-safe-money-gen] +validateStrictlyPositive amount = declare "The Amount is strictly positive" $ True
390.15 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:806:79-92:
390.15 s
[really-safe-money-gen] @@ -803,4 +803,4 @@
390.15 s
[really-safe-money-gen]
390.15 s
[really-safe-money-gen] -- | Validate that an 'Amount' is strictly positive. I.e. not 'zero'.
390.16 s
[really-safe-money-gen] validateStriTcetsltyiPnogs imtuitvaet i:o:n ANmeoguantte -a>t Vsarlci/dMaotnieoyn/
390.16 s
[really-safe-money-gen] A-mvoaulnitd.ahtse:S8t0r6i:c7t9l-y9P2o:s
390.16 s
[really-safe-money-gen] i@t@i v-e8 0a3m,o4u n+t8 0=3 ,d4e c@l@a
390.16 s
[really-safe-money-gen] r e
390.16 s
[really-safe-money-gen] "-T-h e| AVmaoluindta ties tshtarti catnl y' Apmoosuintti'v ei"s $s tarmiocutnlty >p ozseirtoi
390.16 s
[really-safe-money-gen] v+ev.a lIi.dea.t enSottr i'cztelryoP'o.s
390.16 s
[really-safe-money-gen] i tviavlei daamtoeuSnttr i=c tdleycPloasriet i"vTeh e: :A mAomuonutn ti s- >s tVrailcitdlayt ipoons
390.16 s
[really-safe-money-gen] i-tviavlei"d a$t eFSatlrsiec
390.16 s
[really-safe-money-gen] tlTyePsotsiintgi vmeu taamtoiuonnt C=o ndsetcBloaorle a"tT hser cA/mMoounnety /iAsm osutnrti.chtsl:y6 0p7o:s1i5t-i2v2e:"
390.16 s
[really-safe-money-gen] @$@ a-m6o0u4n,t7 >+ 6z0e4r,o7
390.16 s
[really-safe-money-gen] +@v@a
390.16 s
[really-safe-money-gen] l i d a t e S t r iccatsley Paods iotfi
390.16 s
[really-safe-money-gen] v e a m o u n t = Ddiesctlrairbeu t"eTdhIen tAomUonuenqtu ailsC hsutnrkisc t_l ya 1p o_s iat2i v-e>"
390.16 s
[really-safe-money-gen] $ n o t ( a m o u n td e>c lzaerreo )"
390.16 s
[really-safe-money-gen] ThTee sltairngge rm ucthautnikosn aNreeg altaer gaetr "s r$c
390.17 s
[really-safe-money-gen] /-M o n e y / A m o u n t . h sa:16 0>7 :a125
390.17 s
[really-safe-money-gen] -+2 2 :
390.17 s
[really-safe-money-gen] @ @ - 6 0 4 , 7 +T6r0u4e,
390.17 s
[really-safe-money-gen] 7 @ @
390.17 s
[really-safe-money-gen] _ -c>a svea laidd
390.17 s
[really-safe-money-gen] o f
390.17 s
[really-safe-money-gen] ]
390.17 s
[really-safe-money-gen]
390.17 s
[really-safe-money-gen] DistributedIntoUnequalChunks _ a1 _ a2 ->
390.17 s
[really-safe-money-gen] declare "The larger chunks are larger" $
390.17 s
[really-safe-money-gen] - a1 > a2
390.17 s
[really-safe-money-gen] + not (a1 > a2)
390.17 s
[really-safe-money-gen] _ -> valid
390.17 s
[really-safe-money-gen] ]
390.17 s
[really-safe-money-gen]
390.23 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:607:15-22:
390.23 s
[really-safe-money-gen] @@ -604,7 +604,7 @@
390.23 s
[really-safe-money-gen] case ad of
390.23 s
[really-safe-money-gen] DistributedIntoUnequalChunks _ a1 _ a2 ->
390.23 s
[really-safe-money-gen] declare "The larger chunks are larger" $
390.23 s
[really-safe-money-gen] - a1 > a2
390.23 s
[really-safe-money-gen] + False
390.23 s
[really-safe-money-gen] _ -> valid
390.23 s
[really-safe-money-gen] ]
390.23 s
[really-safe-money-gen]
390.28 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/Amount.hs:603:7-8:
390.28 s
[really-safe-money-gen] @@ -600,7 +600,7 @@
390.28 s
[really-safe-money-gen] instance (Validity amount, Ord amount) => Validity (Distribution amount) where
390.28 s
[really-safe-money-gen] validate ad =
390.28 s
[really-safe-money-gen] mconcat
390.28 s
[really-safe-money-gen] - [ genericValidate ad,
390.28 s
[really-safe-money-gen] + [ genericValidate ad,
390.28 s
[really-safe-money-gen] case ad of
390.28 s
[really-safe-money-gen] DistributedIntoUnequalChunks _ a1 _ a2 ->
390.28 s
[really-safe-money-gen] declare "The larger chunks are larger" $
390.31 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/ConversionRate.hs:116:45-46:
390.31 s
[really-safe-money-gen] @@ -113,7 +113,7 @@
390.31 s
[really-safe-money-gen] -- >>> invert (ConversionRate (1 % 2))
390.31 s
[really-safe-money-gen] -- ConversionRate {unConversionRate = 2 % 1}
390.31 s
[really-safe-money-gen] invert :: ConversionRate -> ConversionRate
390.31 s
[really-safe-money-gen] -invert (ConversionRate r) = ConversionRate (1 / r)
390.43 s
[really-safe-money-gen] +invert (ConversionRate r) = ConversionRate (-1 / r)
390.43 s
[really-safe-money-gen]
390.43 s
[really-safe-money-gen] -- | Compose two conversion rates
390.43 s
[really-safe-money-gen] --
390.43 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/Amount.hs:603:7-8:
390.43 s
[really-safe-money-gen] @@ -600,7 +600,7 @@
390.43 s
[really-safe-money-gen] instance (Validity amount, Ord amount) => Validity (Distribution amount) where
390.43 s
[really-safe-money-gen] validate ad =
390.43 s
[really-safe-money-gen] mconcat
390.43 s
[really-safe-money-gen] - [ genericValidate ad,
390.43 s
[really-safe-money-gen] + [ genericValidate ad,
390.43 s
[really-safe-money-gen] case ad of
390.43 s
[really-safe-money-gen] DistributedIntoUnequalChunks _ a1 _ a2 ->
390.43 s
[really-safe-money-gen] declare "The larger chunks are larger" $
390.46 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/ConversionRate.hs:109:27-28:
390.46 s
[really-safe-money-gen] @@ -106,7 +106,7 @@
390.46 s
[really-safe-money-gen]
390.46 s
[really-safe-money-gen] -- | One-to-one conversion rate
390.46 s
[really-safe-money-gen] oneToOne :: ConversionRate
390.46 s
[really-safe-money-gen] -oneToOne = ConversionRate 1
390.46 s
[really-safe-money-gen] +oneToOne = ConversionRate 0
390.46 s
[really-safe-money-gen]
390.46 s
[really-safe-money-gen] -- | Invert a 'ConversionRate', to convert in the other direction.
390.46 s
[really-safe-money-gen] --
390.54 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/ConversionRate.hs:116:45-46:
390.54 s
[really-safe-money-gen] @@ -113,7 +113,7 @@
390.54 s
[really-safe-money-gen] -- >>> invert (ConversionRate (1 % 2))
390.54 s
[really-safe-money-gen] -- ConversionRate {unConversionRate = 2 % 1}
390.54 s
[really-safe-money-gen] invert :: ConversionRate -> ConversionRate
390.54 s
[really-safe-money-gen] -invert (ConversionRate r) = ConversionRate (1 / r)
390.54 s
[really-safe-money-gen] +invert (ConversionRate r) = ConversionRate (0 / r)
390.54 s
[really-safe-money-gen]
390.54 s
[really-safe-money-gen] -- | Compose two conversion rates
390.54 s
[really-safe-money-gen] --
390.69 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/ConversionRate.hs:109:27-28:
390.69 s
[really-safe-money-gen] @@ -106,7 +106,7 @@
390.69 s
[really-safe-money-gen]
390.69 s
[really-safe-money-gen] -- | One-to-one conversion rate
390.69 s
[really-safe-money-gen] oneToOne :: ConversionRate
390.69 s
[really-safe-money-gen] -oneToOne = ConversionRate 1
390.69 s
[really-safe-money-gen] +oneToOne = ConversionRate -1
390.69 s
[really-safe-money-gen]
390.69 s
[really-safe-money-gen] -- | Invert a 'ConversionRate', to convert in the other direction.
390.70 s
[really-safe-money-gen] --
390.75 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/ConversionRate.hs:72:25-26:
390.75 s
[really-safe-money-gen] @@ -69,7 +69,7 @@
390.75 s
[really-safe-money-gen] -- >>> fromRational (0 % 1)
390.76 s
[really-safe-money-gen] -- Nothing
390.76 s
[really-safe-money-gen] fromRational :: Rational -> Maybe ConversionRate
390.76 s
[really-safe-money-gen] -fromRational r = if r < 0 then Nothing else fromRatio (realToFrac r)
390.76 s
[really-safe-money-gen] +fromRational r = if r < 1 then Nothing else fromRatio (realToFrac r)
390.76 s
[really-safe-money-gen]
390.76 s
[really-safe-money-gen] -- | Turn a 'ConversionRate' back into a 'Rational'
390.76 s
[really-safe-money-gen] --
390.88 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/ConversionRate.hs:72:21-26:
390.88 s
[really-safe-money-gen] @@ -69,7 +69,7 @@
390.88 s
[really-safe-money-gen] -- >>> fromRational (0 % 1)
390.88 s
[really-safe-money-gen] -- Nothing
390.88 s
[really-safe-money-gen] fromRational :: Rational -> Maybe ConversionRate
390.88 s
[really-safe-money-gen] -fromRational r = if r < 0 then Nothing else fromRatio (realToFrac r)
390.88 s
[really-safe-money-gen] +fromRational r = if True then Nothing else fromRatio (realToFrac r)
390.88 s
[really-safe-money-gen]
390.88 s
[really-safe-money-gen] -- | Turn a 'ConversionRate' back into a 'Rational'
390.88 s
[really-safe-money-gen] --
390.92 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/ConversionRate.hs:72:21-26:
390.92 s
[really-safe-money-gen] @@ -69,7 +69,7 @@
390.92 s
[really-safe-money-gen] -- >>> fromRational (0 % 1)
390.92 s
[really-safe-money-gen] -- Nothing
390.92 s
[really-safe-money-gen] fromRational :: Rational -> Maybe ConversionRate
390.92 s
[really-safe-money-gen] -fromRational r = if r < 0 then Nothing else fromRatio (realToFrac r)
390.92 s
[really-safe-money-gen] +fromRational r = if False then Nothing else fromRatio (realToFrac r)
390.92 s
[really-safe-money-gen]
390.92 s
[really-safe-money-gen] -- | Turn a 'ConversionRate' back into a 'Rational'
390.92 s
[really-safe-money-gen] --
390.97 s
[really-safe-money-gen] Testing mutation Negate at src/Money/ConversionRate.hs:72:21-26:
390.97 s
[really-safe-money-gen] @@ -69,7 +69,7 @@
390.97 s
[really-safe-money-gen] -- >>> fromRational (0 % 1)
390.97 s
[really-safe-money-gen] -- Nothing
390.97 s
[really-safe-money-gen] fromRational :: Rational -> Maybe ConversionRate
390.97 s
[really-safe-money-gen] -fromRational r = if r < 0 then Nothing else fromRatio (realToFrac r)
390.97 s
[really-safe-money-gen] +fromRational r = if not (r < 0) then Nothing else fromRatio (realToFrac r)
390.97 s
[really-safe-money-gen]
390.97 s
[really-safe-money-gen] -- | Turn a 'ConversionRate' back into a 'Rational'
390.97 s
[really-safe-money-gen] --
391.02 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/ConversionRate.hs:38:56-57:
391.02 s
[really-safe-money-gen] @@ -35,7 +35,7 @@
391.02 s
[really-safe-money-gen] validate cr@(ConversionRate r) =
391.03 s
[really-safe-money-gen] mconcat
391.03 s
[really-safe-money-gen] [ genericValidate cr,
391.03 s
[really-safe-money-gen] - declare "The rate is nonzero" $ numerator r /= 0
391.03 s
[really-safe-money-gen] + declare "The rate is nonzero" $ numerator r /= 1
391.03 s
[really-safe-money-gen] ]
391.03 s
[really-safe-money-gen]
391.03 s
[really-safe-money-gen] instance NFData ConversionRate
391.19 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/ConversionRate.hs:72:18-69:
391.19 s
[really-safe-money-gen] @@ -69,7 +69,7 @@
391.19 s
[really-safe-money-gen] -- >>> fromRational (0 % 1)
391.19 s
[really-safe-money-gen] -- Nothing
391.19 s
[really-safe-money-gen] fromRational :: Rational -> Maybe ConversionRate
391.19 s
[really-safe-money-gen] -fromRational r = if r < 0 then Nothing else fromRatio (realToFrac r)
391.19 s
[really-safe-money-gen] +fromRational r = if r < 0 then Nothing else fromRatio (realToFrac r)
391.19 s
[really-safe-money-gen]
391.19 s
[really-safe-money-gen] -- | Turn a 'ConversionRate' back into a 'Rational'
391.19 s
[really-safe-money-gen] --
391.21 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/ConversionRate.hs:38:41-57:
391.21 s
[really-safe-money-gen] @@ -35,7 +35,7 @@
391.21 s
[really-safe-money-gen] validate cr@(ConversionRate r) =
391.21 s
[really-safe-money-gen] mconcat
391.21 s
[really-safe-money-gen] [ genericValidate cr,
391.21 s
[really-safe-money-gen] - declare "The rate is nonzero" $ numerator r /= 0
391.21 s
[really-safe-money-gen] + declare "The rate is nonzero" $ True
391.21 s
[really-safe-money-gen] ]
391.21 s
[really-safe-money-gen]
391.21 s
[really-safe-money-gen] instance NFData ConversionRate
391.32 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/ConversionRate.hs:38:41-57:
391.32 s
[really-safe-money-gen] @@ -35,7 +35,7 @@
391.32 s
[really-safe-money-gen] validate cr@(ConversionRate r) =
391.32 s
[really-safe-money-gen] mconcat
391.32 s
[really-safe-money-gen] [ genericValidate cr,
391.32 s
[really-safe-money-gen] - declare "The rate is nonzero" $ numerator r /= 0
391.32 s
[really-safe-money-gen] + declare "The rate is nonzero" $ False
391.32 s
[really-safe-money-gen] ]
391.32 s
[really-safe-money-gen]
391.32 s
[really-safe-money-gen] instance NFData ConversionRate
391.38 s
[really-safe-money-gen] Testing mutation Negate at src/Money/ConversionRate.hs:38:41-57:
391.38 s
[really-safe-money-gen] @@ -35,7 +35,7 @@
391.38 s
[really-safe-money-gen] validate cr@(ConversionRate r) =
391.38 s
[really-safe-money-gen] mconcat
391.38 s
[really-safe-money-gen] [ genericValidate cr,
391.38 s
[really-safe-money-gen] - declare "The rate is nonzero" $ numerator r /= 0
391.38 s
[really-safe-money-gen] + declare "The rate is nonzero" $ not (numerator r /= 0)
391.38 s
[really-safe-money-gen] ]
391.38 s
[really-safe-money-gen]
391.38 s
[really-safe-money-gen] instance NFData ConversionRate
391.42 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/ConversionRate.hs:37:7-8:
391.42 s
[really-safe-money-gen] @@ -34,7 +34,7 @@
391.42 s
[really-safe-money-gen] instance Validity ConversionRate where
391.42 s
[really-safe-money-gen] validate cr@(ConversionRate r) =
391.42 s
[really-safe-money-gen] mconcat
391.42 s
[really-safe-money-gen] - [ genericValidate cr,
391.42 s
[really-safe-money-gen] + [ genericValidate cr,
391.42 s
[really-safe-money-gen] declare "The rate is nonzero" $ numerator r /= 0
391.42 s
[really-safe-money-gen] ]
391.42 s
[really-safe-money-gen]
391.45 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/ConversionRate.hs:37:7-8:
391.45 s
[really-safe-money-gen] @@ -34,7 +34,7 @@
391.45 s
[really-safe-money-gen] instance Validity ConversionRate where
391.45 s
[really-safe-money-gen] validate cr@(ConversionRate r) =
391.45 s
[really-safe-money-gen] mconcat
391.45 s
[really-safe-money-gen] - [ genericValidate cr,
391.45 s
[really-safe-money-gen] + [ genericValidate cr,
391.45 s
[really-safe-money-gen] declare "The rate is nonzero" $ numerator r /= 0
391.45 s
[really-safe-money-gen] ]
391.45 s
[really-safe-money-gen]
391.53 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAmount.hs:168:20-45:
391.53 s
[really-safe-money-gen] @@ -165,7 +165,7 @@
391.53 s
[really-safe-money-gen] maxBoundN :: Natural
391.53 s
[really-safe-money-gen] maxBoundN = fromIntegral (maxBound :: Word64)
391.53 s
[really-safe-money-gen] actualResult =
391.53 s
[really-safe-money-gen] - if roundedResult > maxBoundN
391.53 s
[really-safe-money-gen] + if True
391.53 s
[really-safe-money-gen] then Nothing
391.53 s
[really-safe-money-gen] else Just (fromIntegral roundedResult)
391.53 s
[really-safe-money-gen] rounded = case compare (fromIntegral roundedResult) theoreticalResult of
391.56 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAmount.hs:168:20-45:
391.56 s
[really-safe-money-gen] @@ -165,7 +165,7 @@
391.56 s
[really-safe-money-gen] maxBoundN :: Natural
391.56 s
[really-safe-money-gen] maxBoundN = fromIntegral (maxBound :: Word64)
391.56 s
[really-safe-money-gen] actualResult =
391.56 s
[really-safe-money-gen] - if roundedResult > maxBoundN
391.56 s
[really-safe-money-gen] + if False
391.56 s
[really-safe-money-gen] then Nothing
391.56 s
[really-safe-money-gen] else Just (fromIntegral roundedResult)
391.56 s
[really-safe-money-gen] rounded = case compare (fromIntegral roundedResult) theoreticalResult of
391.63 s
[really-safe-money-gen] Testing mutation Negate at src/Money/MultiAmount.hs:168:20-45:
391.63 s
[really-safe-money-gen] @@ -165,7 +165,7 @@
391.63 s
[really-safe-money-gen] maxBoundN :: Natural
391.63 s
[really-safe-money-gen] maxBoundN = fromIntegral (maxBound :: Word64)
391.63 s
[really-safe-money-gen] actualResult =
391.63 s
[really-safe-money-gen] - if roundedResult > maxBoundN
391.63 s
[really-safe-money-gen] + if not (roundedResult > maxBoundN)
391.63 s
[really-safe-money-gen] then Nothing
391.63 s
[really-safe-money-gen] else Just (fromIntegral roundedResult)
391.63 s
[really-safe-money-gen] rounded = case compare (fromIntegral roundedResult) theoreticalResult of
391.65 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/MultiAmount.hs:168:17-57:
391.65 s
[really-safe-money-gen] @@ -165,7 +165,7 @@
391.65 s
[really-safe-money-gen] maxBoundN :: Natural
391.65 s
[really-safe-money-gen] maxBoundN = fromIntegral (maxBound :: Word64)
391.65 s
[really-safe-money-gen] actualResult =
391.65 s
[really-safe-money-gen] - if roundedResult > maxBoundN
391.65 s
[really-safe-money-gen] + if roundedResult > maxBoundN
391.65 s
[really-safe-money-gen] then Nothing
391.65 s
[really-safe-money-gen] else Just (fromIntegral roundedResult)
391.65 s
[really-safe-money-gen] rounded = case compare (fromIntegral roundedResult) theoreticalResult of
391.69 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAmount.hs:119:12-28:
391.69 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
391.69 s
[really-safe-money-gen] Just a -> do
391.69 s
[really-safe-money-gen] r <- Amount.subtract a amount
391.69 s
[really-safe-money-gen] Just $
391.69 s
[really-safe-money-gen] - if r == Amount.zero
391.69 s
[really-safe-money-gen] + if True
391.69 s
[really-safe-money-gen] then M.delete currency m
391.69 s
[really-safe-money-gen] else M.insert currency r m
391.69 s
[really-safe-money-gen]
391.74 s
[really-safe-money-gen] Testing mutation Negate at src/Money/MultiAmount.hs:119:12-28:
391.74 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
391.74 s
[really-safe-money-gen] Just a -> do
391.74 s
[really-safe-money-gen] r <- Amount.subtract a amount
391.74 s
[really-safe-money-gen] Just $
391.74 s
[really-safe-money-gen] - if r == Amount.zero
391.74 s
[really-safe-money-gen] + if not (r == Amount.zero)
391.74 s
[really-safe-money-gen] then M.delete currency m
391.74 s
[really-safe-money-gen] else M.insert currency r m
391.74 s
[really-safe-money-gen]
391.84 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAmount.hs:119:12-28:
391.85 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
391.85 s
[really-safe-money-gen] Just a -> do
391.85 s
[really-safe-money-gen] r <- Amount.subtract a amount
391.85 s
[really-safe-money-gen] Just $
391.85 s
[really-safe-money-gen] - if r == Amount.zero
391.85 s
[really-safe-money-gen] + if False
391.85 s
[really-safe-money-gen] then M.delete currency m
391.85 s
[really-safe-money-gen] else M.insert currency r m
391.85 s
[really-safe-money-gen]
392.00 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/MultiAmount.hs:119:9-37:
392.01 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
392.01 s
[really-safe-money-gen] Just a -> do
392.01 s
[really-safe-money-gen] r <- Amount.subtract a amount
392.01 s
[really-safe-money-gen] Just $
392.01 s
[really-safe-money-gen] - if r == Amount.zero
392.01 s
[really-safe-money-gen] + if r == Amount.zero
392.01 s
[really-safe-money-gen] then M.delete currency m
392.01 s
[really-safe-money-gen] else M.insert currency r m
392.01 s
[really-safe-money-gen]
392.08 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAmount.hs:106:12-28:
392.08 s
[really-safe-money-gen] @@ -103,7 +103,7 @@
392.08 s
[really-safe-money-gen] Just a -> do
392.08 s
[really-safe-money-gen] r <- Amount.add a amount
392.08 s
[really-safe-money-gen] Just $
392.08 s
[really-safe-money-gen] - if r == Amount.zero
392.08 s
[really-safe-money-gen] + if True
392.08 s
[really-safe-money-gen] then M.delete currency m
392.08 s
[really-safe-money-gen] else M.insert currency r m
392.08 s
[really-safe-money-gen]
392.12 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAmount.hs:106:12-28:
392.12 s
[really-safe-money-gen] @@ -103,7 +103,7 @@
392.12 s
[really-safe-money-gen] Just a -> do
392.12 s
[really-safe-money-gen] r <- Amount.add a amount
392.12 s
[really-safe-money-gen] Just $
392.12 s
[really-safe-money-gen] - if r == Amount.zero
392.12 s
[really-safe-money-gen] + if False
392.12 s
[really-safe-money-gen] then M.delete currency m
392.13 s
[really-safe-money-gen] else M.insert currency r m
392.13 s
[really-safe-money-gen]
392.20 s
[really-safe-money-gen] Testing mutation Negate at src/Money/MultiAmount.hs:106:12-28:
392.20 s
[really-safe-money-gen] @@ -103,7 +103,7 @@
392.20 s
[really-safe-money-gen] Just a -> do
392.20 s
[really-safe-money-gen] r <- Amount.add a amount
392.20 s
[really-safe-money-gen] Just $
392.20 s
[really-safe-money-gen] - if r == Amount.zero
392.20 s
[really-safe-money-gen] + if not (r == Amount.zero)
392.20 s
[really-safe-money-gen] then M.delete currency m
392.20 s
[really-safe-money-gen] else M.insert currency r m
392.20 s
[really-safe-money-gen]
392.27 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/MultiAmount.hs:106:9-37:
392.27 s
[really-safe-money-gen] @@ -103,7 +103,7 @@
392.27 s
[really-safe-money-gen] Just a -> do
392.27 s
[really-safe-money-gen] r <- Amount.add a amount
392.27 s
[really-safe-money-gen] Just $
392.27 s
[really-safe-money-gen] - if r == Amount.zero
392.27 s
[really-safe-money-gen] + if r == Amount.zero
392.27 s
[really-safe-money-gen] then M.delete currency m
392.27 s
[really-safe-money-gen] else M.insert currency r m
392.27 s
[really-safe-money-gen]
392.42 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAmount.hs:73:6-27:
392.42 s
[really-safe-money-gen] @@ -70,7 +70,7 @@
392.42 s
[really-safe-money-gen]
392.42 s
[really-safe-money-gen] fromAmount :: currency -> Amount -> MultiAmount currency
392.42 s
[really-safe-money-gen] fromAmount currency amount =
392.42 s
[really-safe-money-gen] - if amount == Amount.zero
392.42 s
[really-safe-money-gen] + if True
392.42 s
[really-safe-money-gen] then zero
392.42 s
[really-safe-money-gen] else MultiAmount $ M.singleton currency amount
392.42 s
[really-safe-money-gen]
392.43 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAmount.hs:73:6-27:
392.43 s
[really-safe-money-gen] @@ -70,7 +70,7 @@
392.43 s
[really-safe-money-gen]
392.44 s
[really-safe-money-gen] fromAmount :: currency -> Amount -> MultiAmount currency
392.44 s
[really-safe-money-gen] fromAmount currency amount =
392.44 s
[really-safe-money-gen] - if amount == Amount.zero
392.44 s
[really-safe-money-gen] + if False
392.44 s
[really-safe-money-gen] then zero
392.44 s
[really-safe-money-gen] else MultiAmount $ M.singleton currency amount
392.44 s
[really-safe-money-gen]
392.45 s
[really-safe-money-gen] Testing mutation Negate at src/Money/MultiAmount.hs:73:6-27:
392.45 s
[really-safe-money-gen] @@ -70,7 +70,7 @@
392.45 s
[really-safe-money-gen]
392.45 s
[really-safe-money-gen] fromAmount :: currency -> Amount -> MultiAmount currency
392.45 s
[really-safe-money-gen] fromAmount currency amount =
392.46 s
[really-safe-money-gen] - if amount == Amount.zero
392.46 s
[really-safe-money-gen] + if not (amount == Amount.zero)
392.46 s
[really-safe-money-gen] then zero
392.46 s
[really-safe-money-gen] else MultiAmount $ M.singleton currency amount
392.46 s
[really-safe-money-gen]
392.52 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/MultiAmount.hs:73:3-51:
392.52 s
[really-safe-money-gen] @@ -70,7 +70,7 @@
392.52 s
[really-safe-money-gen]
392.52 s
[really-safe-money-gen] fromAmount :: currency -> Amount -> MultiAmount currency
392.52 s
[really-safe-money-gen] fromAmount currency amount =
392.52 s
[really-safe-money-gen] - if amount == Amount.zero
392.52 s
[really-safe-money-gen] + if amount == Amount.zero
392.52 s
[really-safe-money-gen] then zero
392.52 s
[really-safe-money-gen] else MultiAmount $ M.singleton currency amount
392.52 s
[really-safe-money-gen]
392.81 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAmount.hs:66:13-29:
392.81 s
[really-safe-money-gen] @@ -63,7 +63,7 @@
392.81 s
[really-safe-money-gen] [ genericValidate ma,
392.81 s
[really-safe-money-gen] decorateMap m $ \_ a ->
392.81 s
[really-safe-money-gen] declare "The amount is not zero" $
392.81 s
[really-safe-money-gen] - a /= Amount.zero
392.81 s
[really-safe-money-gen] + True
392.81 s
[really-safe-money-gen] ]
392.81 s
[really-safe-money-gen]
392.81 s
[really-safe-money-gen] instance (NFData currency) => NFData (MultiAmount currency)
392.83 s
[really-safe-money-gen] Testing mutation Negate at src/Money/MultiAmount.hs:66:13-29:
392.83 s
[really-safe-money-gen] @@ -63,7 +63,7 @@
392.83 s
[really-safe-money-gen] [ genericValidate ma,
392.83 s
[really-safe-money-gen] decorateMap m $ \_ a ->
392.83 s
[really-safe-money-gen] declare "The amount is not zero" $
392.83 s
[really-safe-money-gen] - a /= Amount.zero
392.83 s
[really-safe-money-gen] + not (a /= Amount.zero)
392.84 s
[really-safe-money-gen] ]
392.84 s
[really-safe-money-gen]
392.84 s
[really-safe-money-gen] instance (NFData currency) => NFData (MultiAmount currency)
392.95 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAmount.hs:66:13-29:
392.95 s
[really-safe-money-gen] @@ -63,7 +63,7 @@
392.95 s
[really-safe-money-gen] [ genericValidate ma,
392.95 s
[really-safe-money-gen] decorateMap m $ \_ a ->
392.95 s
[really-safe-money-gen] declare "The amount is not zero" $
392.95 s
[really-safe-money-gen] - a /= Amount.zero
392.95 s
[really-safe-money-gen] + False
392.95 s
[really-safe-money-gen] ]
392.95 s
[really-safe-money-gen]
392.96 s
[really-safe-money-gen] instance (NFData currency) => NFData (MultiAmount currency)
393.02 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/MultiAmount.hs:63:7-8:
393.02 s
[really-safe-money-gen] @@ -60,7 +60,7 @@
393.02 s
[really-safe-money-gen] instance (Validity currency, Show currency, Ord currency) => Validity (MultiAmount currency) where
393.02 s
[really-safe-money-gen] validate ma@(MultiAmount m) =
393.02 s
[really-safe-money-gen] mconcat
393.02 s
[really-safe-money-gen] - [ genericValidate ma,
393.02 s
[really-safe-money-gen] + [ genericValidate ma,
393.02 s
[really-safe-money-gen] decorateMap m $ \_ a ->
393.02 s
[really-safe-money-gen] declare "The amount is not zero" $
393.02 s
[really-safe-money-gen] a /= Amount.zero
393.10 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/MultiAmount.hs:63:7-8:
393.10 s
[really-safe-money-gen] @@ -60,7 +60,7 @@
393.10 s
[really-safe-money-gen] instance (Validity currency, Show currency, Ord currency) => Validity (MultiAmount currency) where
393.10 s
[really-safe-money-gen] validate ma@(MultiAmount m) =
393.10 s
[really-safe-money-gen] mconcat
393.10 s
[really-safe-money-gen] - [ genericValidate ma,
393.10 s
[really-safe-money-gen] + [ genericValidate ma,
393.10 s
[really-safe-money-gen] decorateMap m $ \_ a ->
393.10 s
[really-safe-money-gen] declare "The amount is not zero" $
393.10 s
[really-safe-money-gen] a /= Amount.zero
393.13 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAccount.hs:134:12-29:
393.13 s
[really-safe-money-gen] @@ -131,7 +131,7 @@
393.13 s
[really-safe-money-gen] Just a -> do
393.13 s
[really-safe-money-gen] r <- Account.subtract a account
393.13 s
[really-safe-money-gen] Just $
393.13 s
[really-safe-money-gen] - if r == Account.zero
393.13 s
[really-safe-money-gen] + if True
393.13 s
[really-safe-money-gen] then M.delete currency m
393.13 s
[really-safe-money-gen] else M.insert currency r m
393.13 s
[really-safe-money-gen]
393.13 s
[really-safe-money-gen]
393.13 s
[really-safe-money-gen] - if exponent resultDouble > 65
393.13 s
[really-safe-money-gen] + if exponent resultDouble > 0
393.13 s
[really-safe-money-gen] then Nothing
393.13 s
[really-safe-money-gen] else
393.13 s
[really-safe-money-gen] let ceiled :: Natural
393.13 s
[really-safe-money-gen] Covering tests:
393.13 s
[really-safe-money-gen] Money\.AccountSpec.fromDouble.produces valid rational
393.13 s
[really-safe-money-gen]
393.13 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:332:38-40:
393.13 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
393.13 s
[really-safe-money-gen] | otherwise =
393.13 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
393.13 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.
393.13 s
[really-safe-money-gen] - if exponent resultDouble > 65
393.13 s
[really-safe-money-gen] + if exponent resultDouble > -65
393.13 s
[really-safe-money-gen] then Nothing
393.13 s
[really-safe-money-gen] else
393.13 s
[really-safe-money-gen] let ceiled :: Natural
393.13 s
[really-safe-money-gen] Covering tests:
393.13 s
[really-safe-money-gen] Money\.AccountSpec.fromDouble.produces valid rational
393.13 s
[really-safe-money-gen]
393.13 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:332:38-40:
393.13 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
393.13 s
[really-safe-money-gen] | otherwise =
393.14 s
[really-safe-money-gen] -- Shortcut for numbers that are way too big anyway
393.14 s
[really-safe-money-gen] -- so that we don't have to compute the according 'Natural' values.
393.14 s
[really-safe-money-gen] - if exponent resultDouble > 65
393.14 s
[really-safe-money-gen] + if exponent resultDouble > 1
393.14 s
[really-safe-money-gen] then Nothing
393.14 s
[really-safe-money-gen] else
393.14 s
[really-safe-money-gen] let ceiled :: Natural
393.14 s
[really-safe-money-gen] Covering tests:
393.14 s
[really-safe-money-gen] Money\.AccountSpec.fromDouble.produces valid rational
393.14 s
[really-safe-money-gen]
393.14 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:494:96-97:
393.14 s
[really-safe-money-gen] @@ -491,7 +491,7 @@
393.14 s
[really-safe-money-gen] let maxBoundI :: Integer
393.14 s
[really-safe-money-gen] maxBoundI = fromIntegral (maxBound :: Word64)
393.14 s
[really-safe-money-gen] r :: Integer
393.14 s
[really-safe-money-gen] - r = foldl' (\acc a -> (toInteger :: Word64 -> Integer) (toMinimalQuantisations a) + acc) 0 l
393.14 s
[really-safe-money-gen] + r = foldl' (\acc a -> (toInteger :: Word64 -> Integer) (toMinimalQuantisations a) + acc) 1 l
393.14 s
[really-safe-money-gen] in if r > maxBoundI
393.14 s
[really-safe-money-gen] then Nothing
393.14 s
[really-safe-money-gen] else Just (Amount ((fromInteger :: Integer -> Word64) r))
393.14 s
[really-safe-money-gen] Covering tests:
393.14 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.sum.produces valid amounts
393.14 s
[really-safe-money-gen]
393.14 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:607:15-22:
393.14 s
[really-safe-money-gen] @@ -604,7 +604,7 @@
393.14 s
[really-safe-money-gen] case ad of
393.14 s
[really-safe-money-gen] DistributedIntoUnequalChunks _ a1 _ a2 ->
393.14 s
[really-safe-money-gen] declare "The larger chunks are larger" $
393.14 s
[really-safe-money-gen] - a1 > a2
393.14 s
[really-safe-money-gen] + True
393.14 s
[really-safe-money-gen] _ -> valid
393.14 s
[really-safe-money-gen] ]
393.14 s
[really-safe-money-gen]
393.14 s
[really-safe-money-gen] Covering tests:
393.14 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.distribute.produces valid amounts
393.14 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.distribute.produces valid amounts
393.14 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.distribute.produces valid amounts
393.14 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.distribute.produces valid amounts
393.14 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.distribute.produces valid amounts
393.14 s
[really-safe-money-gen] Money\.AccountSpec.distribute.produces valid amounts
393.14 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.distribute.produces valid amounts
393.14 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.distribute.produces valid amounts
393.14 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.distribute.produces valid amounts
393.14 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.distribute.produces valid amounts
393.14 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.distribute.produces valid amounts
393.14 s
[really-safe-money-gen] Money\.AmountSpec.distribute.GenValid (Distribution Amount).genValid \:\: Gen (Distribution Amount).only generates valid '(Distribution Amount)'s
393.14 s
[really-safe-money-gen] Money\.AmountSpec.distribute.produces valid amounts
393.14 s
[really-safe-money-gen]
393.14 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/ConversionRate.hs:109:27-28:
393.14 s
[really-safe-money-gen] @@ -106,7 +106,7 @@
393.15 s
[really-safe-money-gen]
393.15 s
[really-safe-money-gen] -- | One-to-one conversion rate
393.15 s
[really-safe-money-gen] oneToOne :: ConversionRate
393.15 s
[really-safe-money-gen] -oneToOne = ConversionRate 1
393.15 s
[really-safe-money-gen] +oneToOne = ConversionRate 0
393.15 s
[really-safe-money-gen]
393.15 s
[really-safe-money-gen] -- | Invert a 'ConversionRate', to convert in the other direction.
393.15 s
[really-safe-money-gen] --
393.15 s
[really-safe-money-gen] Covering tests:
393.15 s
[really-safe-money-gen] Money\.MultiAmountSpec.convertAll.produces valid results when converting two currencies to one
393.15 s
[really-safe-money-gen]
393.15 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/Amount.hs:603:7-8:
393.15 s
[really-safe-money-gen] @@ -600,7 +600,7 @@
393.15 s
[really-safe-money-gen] instance (Validity amount, Ord amount) => Validity (Distribution amount) where
393.15 s
[really-safe-money-gen] validate ad =
393.15 s
[really-safe-money-gen] mconcat
393.15 s
[really-safe-money-gen] - [ genericValidate ad,
393.15 s
[really-safe-money-gen] + [ genericValidate ad,
393.15 s
[really-safe-money-gen] case ad of
393.15 s
[really-safe-money-gen] DistributedIntoUnequalChunks _ a1 _ a2 ->
393.15 s
[really-safe-money-gen] declare "The larger chunks are larger" $
393.15 s
[really-safe-money-gen] Covering tests:
393.15 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AccountSpec.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AmountSpec.distribute.GenValid (Distribution Amount).genValid \:\: Gen (Distribution Amount).only generates valid '(Distribution Amount)'s
393.15 s
[really-safe-money-gen] Money\.AmountSpec.distribute.produces valid amounts
393.15 s
[really-safe-money-gen]
393.15 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Amount.hs:661:30-31:
393.15 s
[really-safe-money-gen] @@ -658,7 +658,7 @@
393.15 s
[really-safe-money-gen] -- | The amount and the real rate that was used, considering the 'Rounding'
393.15 s
[really-safe-money-gen] (Maybe Amount, Ratio Natural)
393.15 s
[really-safe-money-gen] fraction _ (Amount 0) f = (Just zero, f)
393.15 s
[really-safe-money-gen] -fraction _ _ 0 = (Just zero, 0)
393.15 s
[really-safe-money-gen] +fraction _ _ 0 = (Just zero, 1)
393.15 s
[really-safe-money-gen] fraction r (Amount a) f =
393.15 s
[really-safe-money-gen] let amountAsRatio :: Ratio Natural
393.15 s
[really-safe-money-gen] amountAsRatio = (fromIntegral :: Word64 -> Ratio Natural) a
393.15 s
[really-safe-money-gen] Covering tests:
393.15 s
[really-safe-money-gen] Money\.AccountSpec.fractionRatio.produces valid amounts
393.15 s
[really-safe-money-gen]
393.15 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount.hs:607:15-22:
393.15 s
[really-safe-money-gen] @@ -604,7 +604,7 @@
393.15 s
[really-safe-money-gen] case ad of
393.15 s
[really-safe-money-gen] DistributedIntoUnequalChunks _ a1 _ a2 ->
393.15 s
[really-safe-money-gen] declare "The larger chunks are larger" $
393.15 s
[really-safe-money-gen] - a1 > a2
393.15 s
[really-safe-money-gen] + False
393.15 s
[really-safe-money-gen] _ -> valid
393.15 s
[really-safe-money-gen] ]
393.15 s
[really-safe-money-gen]
393.15 s
[really-safe-money-gen] Covering tests:
393.15 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AccountSpec.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.distribute.produces valid amounts
393.15 s
[really-safe-money-gen] Money\.AmountSpec.distribute.GenValid (Distribution Amount).genValid \:\: Gen (Distribution Amount).only generates valid '(Distribution Amount)'s
393.15 s
[really-safe-money-gen] Money\.AmountSpec.distribute.produces valid amounts
393.15 s
[really-safe-money-gen]
393.15 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAmount.hs:119:12-28:
393.15 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
393.15 s
[really-safe-money-gen] Just a -> do
393.15 s
[really-safe-money-gen] r <- Amount.subtract a amount
393.16 s
[really-safe-money-gen] Just $
393.16 s
[really-safe-money-gen] - if r == Amount.zero
393.16 s
[really-safe-money-gen] + if False
393.16 s
[really-safe-money-gen] then M.delete currency m
393.16 s
[really-safe-money-gen] else M.insert currency r m
393.16 s
[really-safe-money-gen]
393.16 s
[really-safe-money-gen] Covering tests:
393.16 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtract.produces valid amounts
393.16 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
393.16 s
[really-safe-money-gen]
393.16 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/Amount.hs:603:7-8:
393.16 s
[really-safe-money-gen] @@ -600,7 +600,7 @@
393.16 s
[really-safe-money-gen] instance (Validity amount, Ord amount) => Validity (Distribution amount) where
393.16 s
[really-safe-money-gen] validate ad =
393.16 s
[really-safe-money-gen] mconcat
393.16 s
[really-safe-money-gen] - [ genericValidate ad,
393.16 s
[really-safe-money-gen] + [ genericValidate ad,
393.16 s
[really-safe-money-gen] case ad of
393.16 s
[really-safe-money-gen] DistributedIntoUnequalChunks _ a1 _ a2 ->
393.16 s
[really-safe-money-gen] declare "The larger chunks are larger" $
393.16 s
[really-safe-money-gen] Covering tests:
393.16 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.distribute.produces valid amounts
393.16 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.distribute.produces valid amounts
393.16 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.distribute.produces valid amounts
393.16 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.distribute.produces valid amounts
393.16 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.distribute.produces valid amounts
393.16 s
[really-safe-money-gen] Money\.AccountSpec.distribute.produces valid amounts
393.16 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.distribute.produces valid amounts
393.16 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.distribute.produces valid amounts
393.16 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.distribute.produces valid amounts
393.16 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.distribute.produces valid amounts
393.16 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.distribute.produces valid amounts
393.16 s
[really-safe-money-gen] Money\.AmountSpec.distribute.GenValid (Distribution Amount).genValid \:\: Gen (Distribution Amount).only generates valid '(Distribution Amount)'s
393.16 s
[really-safe-money-gen] Money\.AmountSpec.distribute.produces valid amounts
393.16 s
[really-safe-money-gen]
393.16 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAmount.hs:119:12-28:
393.16 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
393.16 s
[really-safe-money-gen] Just a -> do
393.16 s
[really-safe-money-gen] r <- Amount.subtract a amount
393.16 s
[really-safe-money-gen] Just $
393.16 s
[really-safe-money-gen] - if r == Amount.zero
393.16 s
[really-safe-money-gen] + if True
393.16 s
[really-safe-money-gen] then M.delete currency m
393.16 s
[really-safe-money-gen] else M.insert currency r m
393.16 s
[really-safe-money-gen]
393.16 s
[really-safe-money-gen] Covering teTesting mutation ConstBool at src/Money/MultiAccount.hs:134:12-29:
393.16 s
[really-safe-money-gen] @@ -131,7 +131,7 @@
393.16 s
[really-safe-money-gen] Just a -> do
393.16 s
[really-safe-money-gen] r <- Account.subtract a account
393.16 s
[really-safe-money-gen] Just $
393.16 s
[really-safe-money-gen] - if r == Account.zero
393.16 s
[really-safe-money-gen] + if False
393.16 s
[really-safe-money-gen] then M.delete currency m
393.16 s
[really-safe-money-gen] else M.insert currency r m
393.16 s
[really-safe-money-gen]
393.56 s
[really-safe-money-gen] Testing mutation Negate at src/Money/MultiAccount.hs:134:12-29:
393.56 s
[really-safe-money-gen] @@ -131,7 +131,7 @@
393.56 s
[really-safe-money-gen] Just a -> do
393.56 s
[really-safe-money-gen] r <- Account.subtract a account
393.56 s
[really-safe-money-gen] Just $
393.56 s
[really-safe-money-gen] - if r == Account.zero
393.56 s
[really-safe-money-gen] + if not (r == Account.zero)
393.56 s
[really-safe-money-gen] then M.delete currency m
393.56 s
[really-safe-money-gen] else M.insert currency r m
393.56 s
[really-safe-money-gen]
393.58 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/MultiAccount.hs:134:9-37:
393.58 s
[really-safe-money-gen] @@ -131,7 +131,7 @@
393.58 s
[really-safe-money-gen] Just a -> do
393.58 s
[really-safe-money-gen] r <- Account.subtract a account
393.58 s
[really-safe-money-gen] Just $
393.58 s
[really-safe-money-gen] - if r == Account.zero
393.58 s
[really-safe-money-gen] + if r == Account.zero
393.58 s
[really-safe-money-gen] then M.delete currency m
393.58 s
[really-safe-money-gen] else M.insert currency r m
393.58 s
[really-safe-money-gen]
393.59 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAccount.hs:120:12-29:
393.59 s
[really-safe-money-gen] @@ -117,7 +117,7 @@
393.59 s
[really-safe-money-gen] Just a -> do
393.59 s
[really-safe-money-gen] r <- Account.add a account
393.59 s
[really-safe-money-gen] Just $
393.59 s
[really-safe-money-gen] - if r == Account.zero
393.59 s
[really-safe-money-gen] + if True
393.59 s
[really-safe-money-gen] then M.delete currency m
393.59 s
[really-safe-money-gen] else M.insert currency r m
393.59 s
[really-safe-money-gen]
393.60 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAccount.hs:120:12-29:
393.60 s
[really-safe-money-gen] @@ -117,7 +117,7 @@
393.60 s
[really-safe-money-gen] Just a -> do
393.60 s
[really-safe-money-gen] r <- Account.add a account
393.60 s
[really-safe-money-gen] Just $
393.60 s
[really-safe-money-gen] - if r == Account.zero
393.60 s
[really-safe-money-gen] + if False
393.60 s
[really-safe-money-gen] then M.delete currency m
393.60 s
[really-safe-money-gen] else M.insert currency r m
393.60 s
[really-safe-money-gen]
393.74 s
[really-safe-money-gen] Testing mutation Negate at src/Money/MultiAccount.hs:120:12-29:
393.74 s
[really-safe-money-gen] @@ -117,7 +117,7 @@
393.74 s
[really-safe-money-gen] Just a -> do
393.74 s
[really-safe-money-gen] r <- Account.add a account
393.74 s
[really-safe-money-gen] Just $
393.74 s
[really-safe-money-gen] - if r == Account.zero
393.74 s
[really-safe-money-gen] + if not (r == Account.zero)
393.74 s
[really-safe-money-gen] then M.delete currency m
393.74 s
[really-safe-money-gen] else M.insert currency r m
393.74 s
[really-safe-money-gen]
393.90 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/MultiAccount.hs:120:9-37:
393.90 s
[really-safe-money-gen] @@ -117,7 +117,7 @@
393.90 s
[really-safe-money-gen] Just a -> do
393.90 s
[really-safe-money-gen] r <- Account.add a account
393.90 s
[really-safe-money-gen] Just $
393.90 s
[really-safe-money-gen] - if r == Account.zero
393.90 s
[really-safe-money-gen] + if r == Account.zero
393.90 s
[really-safe-money-gen] then M.delete currency m
393.90 s
[really-safe-money-gen] else M.insert currency r m
393.90 s
[really-safe-money-gen]
393.94 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAccount.hs:78:6-28:
393.94 s
[really-safe-money-gen] @@ -75,7 +75,7 @@
393.94 s
[really-safe-money-gen]
393.95 s
[really-safe-money-gen] fromAccount :: currency -> Account -> MultiAccount currency
393.95 s
[really-safe-money-gen] fromAccount currency amount =
393.95 s
[really-safe-money-gen] - if amount == Account.zero
393.95 s
[really-safe-money-gen] + if True
393.95 s
[really-safe-money-gen] then zero
393.95 s
[really-safe-money-gen] else MultiAccount $ M.singleton currency amount
393.95 s
[really-safe-money-gen]
394.14 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAccount.hs:78:6-28:
394.14 s
[really-safe-money-gen] @@ -75,7 +75,7 @@
394.15 s
[really-safe-money-gen]
394.15 s
[really-safe-money-gen] fromAccount :: currency -> Account -> MultiAccount currency
394.15 s
[really-safe-money-gen] fromAccount currency amount =
394.15 s
[really-safe-money-gen] - if amount == Account.zero
394.15 s
[really-safe-money-gen] + if False
394.15 s
[really-safe-money-gen] then zero
394.15 s
[really-safe-money-gen] else MultiAccount $ M.singleton currency amount
394.15 s
[really-safe-money-gen]
394.22 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/MultiAccount.hs:78:3-52:
394.22 s
[really-safe-money-gen] @@ -75,7 +75,7 @@
394.22 s
[really-safe-money-gen]
394.23 s
[really-safe-money-gen] fromAccount :: currency -> Account -> MultiAccount currency
394.23 s
[really-safe-money-gen] fromAccount currency amount =
394.23 s
[really-safe-money-gen] - if amount == Account.zero
394.23 s
[really-safe-money-gen] + if amount == Account.zero
394.23 s
[really-safe-money-gen] then zero
394.23 s
[really-safe-money-gen] else MultiAccount $ M.singleton currency amount
394.23 s
[really-safe-money-gen]
394.27 s
[really-safe-money-gen] Testing mutation Negate at src/Money/MultiAccount.hs:78:6-28:
394.27 s
[really-safe-money-gen] @@ -75,7 +75,7 @@
394.27 s
[really-safe-money-gen]
394.28 s
[really-safe-money-gen] fromAccount :: currency -> Account -> MultiAccount currency
394.28 s
[really-safe-money-gen] fromAccount currency amount =
394.28 s
[really-safe-money-gen] - if amount == Account.zero
394.28 s
[really-safe-money-gen] + if not (amount == Account.zero)
394.28 s
[really-safe-money-gen] then zero
394.28 s
[really-safe-money-gen] else MultiAccount $ M.singleton currency amount
394.28 s
[really-safe-money-gen]
394.34 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAccount.hs:69:13-30:
394.34 s
[really-safe-money-gen] @@ -66,7 +66,7 @@
394.34 s
[really-safe-money-gen] [ genericValidate ma,
394.34 s
[really-safe-money-gen] decorateMap m $ \_ a ->
394.34 s
[really-safe-money-gen] declare "The account is not zero" $
394.34 s
[really-safe-money-gen] - a /= Account.zero
394.34 s
[really-safe-money-gen] + True
394.34 s
[really-safe-money-gen] ]
394.34 s
[really-safe-money-gen]
394.34 s
[really-safe-money-gen] -- TODO no empty currencies
394.62 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAccount.hs:69:13-30:
394.62 s
[really-safe-money-gen] @@ -66,7 +66,7 @@
394.62 s
[really-safe-money-gen] [ genericValidate ma,
394.62 s
[really-safe-money-gen] decorateMap m $ \_ a ->
394.62 s
[really-safe-money-gen] declare "The account is not zero" $
394.62 s
[really-safe-money-gen] - a /= Account.zero
394.62 s
[really-safe-money-gen] + False
394.62 s
[really-safe-money-gen] ]
394.62 s
[really-safe-money-gen]
394.62 s
[really-safe-money-gen] -- TODO no empty currencies
394.93 s
[really-safe-money-gen] Testing mutation Negate at src/Money/MultiAccount.hs:69:13-30:
394.93 s
[really-safe-money-gen] @@ -66,7 +66,7 @@
394.93 s
[really-safe-money-gen] [ genericValidate ma,
394.93 s
[really-safe-money-gen] decorateMap m $ \_ a ->
394.93 s
[really-safe-money-gen] declare "The account is not zero" $
394.93 s
[really-safe-money-gen] - a /= Account.zero
394.93 s
[really-safe-money-gen] + not (a /= Account.zero)
394.93 s
[really-safe-money-gen] ]
394.93 s
[really-safe-money-gen]
394.93 s
[really-safe-money-gen] -- TODO no empty currencies
395.06 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/MultiAccount.hs:66:7-8:
395.06 s
[really-safe-money-gen] @@ -63,7 +63,7 @@
395.06 s
[really-safe-money-gen] instance (Validity currency, Show currency, Ord currency) => Validity (MultiAccount currency) where
395.06 s
[really-safe-money-gen] validate ma@(MultiAccount m) =
395.06 s
[really-safe-money-gen] mconcat
395.06 s
[really-safe-money-gen] - [ genericValidate ma,
395.06 s
[really-safe-money-gen] + [ genericValidate ma,
395.06 s
[really-safe-money-gen] decorateMap m $ \_ a ->
395.06 s
[really-safe-money-gen] declare "The account is not zero" $
395.06 s
[really-safe-money-gen] a /= Account.zero
395.17 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/MultiAccount.hs:66:7-8:
395.17 s
[really-safe-money-gen] @@ -63,7 +63,7 @@
395.17 s
[really-safe-money-gen] instance (Validity currency, Show currency, Ord currency) => Validity (MultiAccount currency) where
395.17 s
[really-safe-money-gen] validate ma@(MultiAccount m) =
395.17 s
[really-safe-money-gen] mconcat
395.17 s
[really-safe-money-gen] - [ genericValidate ma,
395.17 s
[really-safe-money-gen] + [ genericValidate ma,
395.17 s
[really-safe-money-gen] decorateMap m $ \_ a ->
395.17 s
[really-safe-money-gen] declare "The account is not zero" $
395.17 s
[really-safe-money-gen] a /= Account.zero
395.19 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/QuantisationFactor.hs:87:27-28:
395.19 s
[really-safe-money-gen] @@ -84,7 +84,7 @@
395.19 s
[really-safe-money-gen] fromDecimalLiteral dl = do
395.19 s
[really-safe-money-gen] irat <-
395.19 s
[really-safe-money-gen] let r = DecimalLiteral.toRational dl
395.19 s
[really-safe-money-gen] - in if numerator r == 0
395.19 s
[really-safe-money-gen] + in if numerator r == 1
395.20 s
[really-safe-money-gen] then Nothing
395.20 s
[really-safe-money-gen] else pure r
395.20 s
[really-safe-money-gen]
395.52 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/QuantisationFactor.hs:87:12-28:
395.65 s
[really-safe-money-gen] @@ -84,7 +84,7 @@
395.65 s
[really-safe-money-gen] fromDecimalLiteral dl = do
395.65 s
[really-safe-money-gen] irat <-
395.65 s
[really-safe-money-gen] let r = DecimalLiteral.toRational dl
395.65 s
[really-safe-money-gen] - in if numerator r == 0
395.65 s
[really-safe-money-gen] + in if False
395.65 s
[really-safe-money-gen] then Nothing
395.65 s
[really-safe-money-gen] else pure r
395.65 s
[really-safe-money-gen]
395.65 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/QuantisationFactor.hs:87:12-28:
395.65 s
[really-safe-money-gen] @@ -84,7 +84,7 @@
395.65 s
[really-safe-money-gen] fromDecimalLiteral dl = do
395.65 s
[really-safe-money-gen] irat <-
395.65 s
[really-safe-money-gen] let r = DecimalLiteral.toRational dl
395.65 s
[really-safe-money-gen] - in if numerator r == 0
395.66 s
[really-safe-money-gen] + in if True
395.66 s
[really-safe-money-gen] then Nothing
395.66 s
[really-safe-money-gen] else pure r
395.66 s
[really-safe-money-gen]
395.76 s
[really-safe-money-gen] Testing mutation Negate at src/Money/QuantisationFactor.hs:87:12-28:
395.77 s
[really-safe-money-gen] @@ -84,7 +84,7 @@
395.77 s
[really-safe-money-gen] fromDecimalLiteral dl = do
395.77 s
[really-safe-money-gen] irat <-
395.77 s
[really-safe-money-gen] let r = DecimalLiteral.toRational dl
395.77 s
[really-safe-money-gen] - in if numerator r == 0
395.77 s
[really-safe-money-gen] + in if not (numerator r == 0)
395.77 s
[really-safe-money-gen] then Nothing
395.77 s
[really-safe-money-gen] else pure r
395.77 s
[really-safe-money-gen]
395.91 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/QuantisationFactor.hs:92:13-14:
395.91 s
[really-safe-money-gen] @@ -89,7 +89,7 @@
395.91 s
[really-safe-money-gen] else pure r
395.91 s
[really-safe-money-gen]
395.91 s
[really-safe-money-gen] rat <-
395.91 s
[really-safe-money-gen] - let r = 1 / irat
395.91 s
[really-safe-money-gen] + let r = 0 / irat
395.91 s
[really-safe-money-gen] in if r < 0
395.91 s
[really-safe-money-gen] then Nothing
395.91 s
[really-safe-money-gen] else Just r
395.94 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/QuantisationFactor.hs:87:9-22:
395.94 s
[really-safe-money-gen] @@ -84,7 +84,7 @@
395.94 s
[really-safe-money-gen] fromDecimalLiteral dl = do
395.94 s
[really-safe-money-gen] irat <-
395.95 s
[really-safe-money-gen] let r = DecimalLiteral.toRational dl
395.95 s
[really-safe-money-gen] - in if numerator r == 0
395.95 s
[really-safe-money-gen] + in if numerator r == 0
395.95 s
[really-safe-money-gen] then Nothing
395.95 s
[really-safe-money-gen] else pure r
395.95 s
[really-safe-money-gen]
396.14 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/QuantisationFactor.hs:92:13-14:
396.14 s
[really-safe-money-gen] @@ -89,7 +89,7 @@
396.14 s
[really-safe-money-gen] else pure r
396.14 s
[really-safe-money-gen]
396.14 s
[really-safe-money-gen] rat <-
396.14 s
[really-safe-money-gen] - let r = 1 / irat
396.14 s
[really-safe-money-gen] + let r = -1 / irat
396.14 s
[really-safe-money-gen] in if r < 0
396.14 s
[really-safe-money-gen] then Nothing
396.14 s
[really-safe-money-gen] else Just r
396.54 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/QuantisationFactor.hs:93:16-17:
396.54 s
[really-safe-money-gen] @@ -90,7 +90,7 @@
396.54 s
[really-safe-money-gen]
396.54 s
[really-safe-money-gen] rat <-
396.54 s
[really-safe-money-gen] let r = 1 / irat
396.54 s
[really-safe-money-gen] - in if r < 0
396.54 s
[really-safe-money-gen] + in if r < 1
396.54 s
[really-safe-money-gen] then Nothing
396.54 s
[really-safe-money-gen] else Just r
396.54 s
[really-safe-money-gen]
396.56 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/QuantisationFactor.hs:93:12-17:
396.56 s
[really-safe-money-gen] @@ -90,7 +90,7 @@
396.56 s
[really-safe-money-gen]
396.56 s
[really-safe-money-gen] rat <-
396.56 s
[really-safe-money-gen] let r = 1 / irat
396.56 s
[really-safe-money-gen] - in if r < 0
396.56 s
[really-safe-money-gen] + in if True
396.56 s
[really-safe-money-gen] then Nothing
396.56 s
[really-safe-money-gen] else Just r
396.56 s
[really-safe-money-gen]
396.67 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/QuantisationFactor.hs:93:12-17:
396.67 s
[really-safe-money-gen] @@ -90,7 +90,7 @@
396.67 s
[really-safe-money-gen]
396.67 s
[really-safe-money-gen] rat <-
396.67 s
[really-safe-money-gen] let r = 1 / irat
396.67 s
[really-safe-money-gen] - in if r < 0
396.67 s
[really-safe-money-gen] + in if False
396.67 s
[really-safe-money-gen] then Nothing
396.67 s
[really-safe-money-gen] else Just r
396.67 s
[really-safe-money-gen]
396.90 s
[really-safe-money-gen] Testing mutation Negate at src/Money/QuantisationFactor.hs:93:12-17:
396.90 s
[really-safe-money-gen] @@ -90,7 +90,7 @@
396.90 s
[really-safe-money-gen]
396.90 s
[really-safe-money-gen] rat <-
396.90 s
[really-safe-money-gen] let r = 1 / irat
396.90 s
[really-safe-money-gen] - in if r < 0
396.90 s
[really-safe-money-gen] + in if not (r < 0)
396.90 s
[really-safe-money-gen] then Nothing
396.90 s
[really-safe-money-gen] else Just r
396.91 s
[really-safe-money-gen]
396.96 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/QuantisationFactor.hs:93:9-22:
396.96 s
[really-safe-money-gen] @@ -90,7 +90,7 @@
396.96 s
[really-safe-money-gen]
396.96 s
[really-safe-money-gen] rat <-
396.96 s
[really-safe-money-gen] let r = 1 / irat
396.96 s
[really-safe-money-gen] - in if r < 0
396.96 s
[really-safe-money-gen] + in if r < 0
396.96 s
[really-safe-money-gen] then Nothing
396.96 s
[really-safe-money-gen] else Just r
396.96 s
[really-safe-money-gen]
396.96 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/QuantisationFactor.hs:98:27-28:
396.96 s
[really-safe-money-gen] @@ -95,7 +95,7 @@
396.96 s
[really-safe-money-gen] else Just r
396.96 s
[really-safe-money-gen]
396.96 s
[really-safe-money-gen] fac <-
396.96 s
[really-safe-money-gen] - if denominator rat == 1
396.96 s
[really-safe-money-gen] + if denominator rat == 0
396.97 s
[really-safe-money-gen] then Just (numerator rat)
396.97 s
[really-safe-money-gen] else Nothing
396.97 s
[really-safe-money-gen]
397.12 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/QuantisationFactor.hs:98:27-28:
397.12 s
[really-safe-money-gen] @@ -95,7 +95,7 @@
397.12 s
[really-safe-money-gen] else Just r
397.12 s
[really-safe-money-gen]
397.12 s
[really-safe-money-gen] fac <-
397.12 s
[really-safe-money-gen] - if denominator rat == 1
397.13 s
[really-safe-money-gen] + if denominator rat == -1
397.13 s
[really-safe-money-gen] then Just (numerator rat)
397.13 s
[really-safe-money-gen] else Nothing
397.13 s
[really-safe-money-gen]
397.19 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/QuantisationFactor.hs:98:8-28:
397.19 s
[really-safe-money-gen] @@ -95,7 +95,7 @@
397.19 s
[really-safe-money-gen] else Just r
397.19 s
[really-safe-money-gen]
397.19 s
[really-safe-money-gen] fac <-
397.19 s
[really-safe-money-gen] - if denominator rat == 1
397.19 s
[really-safe-money-gen] + if True
397.19 s
[really-safe-money-gen] then Just (numerator rat)
397.19 s
[really-safe-money-gen] else Nothing
397.19 s
[really-safe-money-gen]
397.25 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/QuantisationFactor.hs:98:8-28:
397.25 s
[really-safe-money-gen] @@ -95,7 +95,7 @@
397.25 s
[really-safe-money-gen] else Just r
397.25 s
[really-safe-money-gen]
397.25 s
[really-safe-money-gen] fac <-
397.25 s
[really-safe-money-gen] - if denominator rat == 1
397.25 s
[really-safe-money-gen] + if False
397.25 s
[really-safe-money-gen] then Just (numerator rat)
397.25 s
[really-safe-money-gen] else Nothing
397.25 s
[really-safe-money-gen]
397.29 s
[really-safe-money-gen] Testing mutation Negate at src/Money/QuantisationFactor.hs:98:8-28:
397.29 s
[really-safe-money-gen] @@ -95,7 +95,7 @@
397.29 s
[really-safe-money-gen] else Just r
397.29 s
[really-safe-money-gen]
397.29 s
[really-safe-money-gen] fac <-
397.29 s
[really-safe-money-gen] - if denominator rat == 1
397.29 s
[really-safe-money-gen] + if not (denominator rat == 1)
397.29 s
[really-safe-money-gen] then Just (numerator rat)
397.29 s
[really-safe-money-gen] else Nothing
397.29 s
[really-safe-money-gen]
397.33 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/QuantisationFactor.hs:98:5-19:
397.33 s
[really-safe-money-gen] @@ -95,7 +95,7 @@
397.33 s
[really-safe-money-gen] else Just r
397.33 s
[really-safe-money-gen]
397.33 s
[really-safe-money-gen] fac <-
397.33 s
[really-safe-money-gen] - if denominator rat == 1
397.33 s
[really-safe-money-gen] + if denominator rat == 1
397.33 s
[really-safe-money-gen] then Just (numerator rat)
397.33 s
[really-safe-money-gen] else Nothing
397.33 s
[really-safe-money-gen]
397.55 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/QuantisationFactor.hs:102:6-46:
397.55 s
[really-safe-money-gen] @@ -99,6 +99,6 @@
397.55 s
[really-safe-money-gen] then Just (numerator rat)
397.55 s
[really-safe-money-gen] else Nothing
397.55 s
[really-safe-money-gen]
397.55 s
[really-safe-money-gen] - if fac <= fromIntegral (maxBound :: Word32)
397.55 s
[really-safe-money-gen] + if True
397.55 s
[really-safe-money-gen] then Just (QuantisationFactor (fromIntegral fac))
397.55 s
[really-safe-money-gen] else Nothing
397.84 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/QuantisationFactor.hs:102:6-46:
397.84 s
[really-safe-money-gen] @@ -99,6 +99,6 @@
397.84 s
[really-safe-money-gen] then Just (numerator rat)
397.84 s
[really-safe-money-gen] else Nothing
397.84 s
[really-safe-money-gen]
397.84 s
[really-safe-money-gen] - if fac <= fromIntegral (maxBound :: Word32)
397.84 s
[really-safe-money-gen] + if False
397.84 s
[really-safe-money-gen] then Just (QuantisationFactor (fromIntegral fac))
397.84 s
[really-safe-money-gen] else Nothing
398.04 s
[really-safe-money-gen] Testing mutation Negate at src/Money/QuantisationFactor.hs:102:6-46:
398.04 s
[really-safe-money-gen] @@ -99,6 +99,6 @@
398.04 s
[really-safe-money-gen] then Just (numerator rat)
398.04 s
[really-safe-money-gen] else Nothing
398.05 s
[really-safe-money-gen]
398.05 s
[really-safe-money-gen] - if fac <= fromIntegral (maxBound :: Word32)
398.05 s
[really-safe-money-gen] + if not (fac <= fromIntegral (maxBound :: Word32))
398.05 s
[really-safe-money-gen] then Just (QuantisationFactor (fromIntegral fac))
398.05 s
[really-safe-money-gen] else Nothing
398.09 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/QuantisationFactor.hs:67:67-68:
398.09 s
[really-safe-money-gen] @@ -64,7 +64,7 @@
398.09 s
[really-safe-money-gen] -- Just (DecimalLiteral Nothing 1 0)
398.09 s
[really-safe-money-gen] toDecimalLiteral :: QuantisationFactor -> Maybe DecimalLiteral
398.09 s
[really-safe-money-gen] toDecimalLiteral (QuantisationFactor qfw) =
398.09 s
[really-safe-money-gen] - DecimalLiteral.setSignOptional <$> DecimalLiteral.fromRational (1 % fromIntegral qfw)
398.09 s
[really-safe-money-gen] + DecimalLiteral.setSignOptional <$> DecimalLiteral.fromRational (0 % fromIntegral qfw)
398.09 s
[really-safe-money-gen]
398.09 s
[really-safe-money-gen] -- | Parse a 'QuantisationFactor' from a 'DecimalLiteral' that represents the smallest unit
398.09 s
[really-safe-money-gen] -- TODO explain that it's the inverse.
398.29 s
[really-safe-money-gen] TeTsetsitnign gm umtuattaitoino nI nItnLtiLti ta ta ts rscr/cM/oMnoenye/yQ/uQaunatnitsiastaitoinoFnaFcatcotro.rh.sh:s6:74:06:76-26-86:3
398.29 s
[really-safe-money-gen] :@
398.29 s
[really-safe-money-gen] @@ @- 6-43,77, 7+ 6+43,77, 7@ @@
398.29 s
[really-safe-money-gen] @
398.29 s
[really-safe-money-gen] - - Jvuaslti d(aDteec iqmfa@l(LQiutaenrtails aNtoitohniFnagc t1o r0 )w
398.29 s
[really-safe-money-gen] ) t=o
398.29 s
[really-safe-money-gen] D e c i m amlcLointcearta
398.29 s
[really-safe-money-gen] l : : Q u a[n tgiesnaetriiocnVFaalcitdoart e- >q fM,a
398.29 s
[really-safe-money-gen] y-b e D e c i m adleLciltaerrea l"
398.29 s
[really-safe-money-gen] T hteo DqeucainmtailsLaittieorna lf a(cQtuoarn tiiss antoito nzFearcot"o r$ qwf w/)= =0
398.29 s
[really-safe-money-gen]
398.30 s
[really-safe-money-gen] -+ D e c i m a ldLeictlearrael ."sTehteS iqgunaOnpttiisoantailo n< $f>a cDteocri miasl Lniotte rzaelr.of"r o$m Rwa t/i=o n1a
398.30 s
[really-safe-money-gen] l ( 1 % f]r
398.30 s
[really-safe-money-gen] o m
398.30 s
[really-safe-money-gen] I nitnesgtraanlc eq fNwF)D
398.30 s
[really-safe-money-gen] a+t a DQeucainmtailsLaittieornaFla.csteotrS
398.30 s
[really-safe-money-gen] ignOptional <$> DecimalLiteral.fromRational (-1 % fromIntegral qfw)
398.30 s
[really-safe-money-gen]
398.30 s
[really-safe-money-gen] -- | Parse a 'QuantisationFactor' from a 'DecimalLiteral' that represents the smallest unit
398.30 s
[really-safe-money-gen] -- TODO explain that it's the inverse.
398.42 s
[really-safe-money-gen] sts:
398.42 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtract.produces valid amounts
398.42 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
398.42 s
[really-safe-money-gen]
398.42 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/ConversionRate.hs:109:27-28:
398.42 s
[really-safe-money-gen] @@ -106,7 +106,7 @@
398.42 s
[really-safe-money-gen]
398.42 s
[really-safe-money-gen] -- | One-to-one conversion rate
398.42 s
[really-safe-money-gen] oneToOne :: ConversionRate
398.42 s
[really-safe-money-gen] -oneToOne = ConversionRate 1
398.42 s
[really-safe-money-gen] +oneToOne = ConversionRate -1
398.42 s
[really-safe-money-gen]
398.42 s
[really-safe-money-gen] -- | Invert a 'ConversionRate', to convert in the other direction.
398.42 s
[really-safe-money-gen] --
398.42 s
[really-safe-money-gen] Covering tests:
398.42 s
[really-safe-money-gen] Money\.MultiAmountSpec.convertAll.produces valid results when converting two currencies to one
398.42 s
[really-safe-money-gen]
398.42 s
[really-safe-money-gen] Testing mutation Negate at src/Money/MultiAmount.hs:119:12-28:
398.42 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
398.42 s
[really-safe-money-gen] Just a -> do
398.42 s
[really-safe-money-gen] r <- Amount.subtract a amount
398.42 s
[really-safe-money-gen] Just $
398.42 s
[really-safe-money-gen] - if r == Amount.zero
398.42 s
[really-safe-money-gen] + if not (r == Amount.zero)
398.42 s
[really-safe-money-gen] then M.delete currency m
398.42 s
[really-safe-money-gen] else M.insert currency r m
398.42 s
[really-safe-money-gen]
398.42 s
[really-safe-money-gen] Covering tests:
398.42 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtract.produces valid amounts
398.42 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
398.42 s
[really-safe-money-gen]
398.42 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/MultiAmount.hs:119:9-37:
398.42 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
398.42 s
[really-safe-money-gen] Just a -> do
398.43 s
[really-safe-money-gen] r <- Amount.subtract a amount
398.43 s
[really-safe-money-gen] Just $
398.43 s
[really-safe-money-gen] - if r == Amount.zero
398.43 s
[really-safe-money-gen] + if r == Amount.zero
398.43 s
[really-safe-money-gen] then M.delete currency m
398.43 s
[really-safe-money-gen] else M.insert currency r m
398.43 s
[really-safe-money-gen]
398.43 s
[really-safe-money-gen] Covering tests:
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtract.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
398.43 s
[really-safe-money-gen]
398.43 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/MultiAmount.hs:63:7-8:
398.43 s
[really-safe-money-gen] @@ -60,7 +60,7 @@
398.43 s
[really-safe-money-gen] instance (Validity currency, Show currency, Ord currency) => Validity (MultiAmount currency) where
398.43 s
[really-safe-money-gen] validate ma@(MultiAmount m) =
398.43 s
[really-safe-money-gen] mconcat
398.43 s
[really-safe-money-gen] - [ genericValidate ma,
398.43 s
[really-safe-money-gen] + [ genericValidate ma,
398.43 s
[really-safe-money-gen] decorateMap m $ \_ a ->
398.43 s
[really-safe-money-gen] declare "The amount is not zero" $
398.43 s
[really-safe-money-gen] a /= Amount.zero
398.43 s
[really-safe-money-gen] Covering tests:
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.GenValid (MultiAmount Currency).genValid \:\: Gen (MultiAmount Currency).only generates valid '(MultiAmount Currency)'s
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.add.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.addAmount.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.fromAmount.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtract.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.sum.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.zero.is valid
398.43 s
[really-safe-money-gen]
398.43 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAmount.hs:66:13-29:
398.43 s
[really-safe-money-gen] @@ -63,7 +63,7 @@
398.43 s
[really-safe-money-gen] [ genericValidate ma,
398.43 s
[really-safe-money-gen] decorateMap m $ \_ a ->
398.43 s
[really-safe-money-gen] declare "The amount is not zero" $
398.43 s
[really-safe-money-gen] - a /= Amount.zero
398.43 s
[really-safe-money-gen] + False
398.43 s
[really-safe-money-gen] ]
398.43 s
[really-safe-money-gen]
398.43 s
[really-safe-money-gen] instance (NFData currency) => NFData (MultiAmount currency)
398.43 s
[really-safe-money-gen] Covering tests:
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.GenValid (MultiAmount Currency).genValid \:\: Gen (MultiAmount Currency).only generates valid '(MultiAmount Currency)'s
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.add.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.addAmount.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.fromAmount.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtract.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.sum.produces valid amounts
398.43 s
[really-safe-money-gen]
398.43 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/MultiAmount.hs:63:7-8:
398.43 s
[really-safe-money-gen] @@ -60,7 +60,7 @@
398.43 s
[really-safe-money-gen] instance (Validity currency, Show currency, Ord currency) => Validity (MultiAmount currency) where
398.43 s
[really-safe-money-gen] validate ma@(MultiAmount m) =
398.43 s
[really-safe-money-gen] mconcat
398.43 s
[really-safe-money-gen] - [ genericValidate ma,
398.43 s
[really-safe-money-gen] + [ genericValidate ma,
398.43 s
[really-safe-money-gen] decorateMap m $ \_ a ->
398.43 s
[really-safe-money-gen] declare "The amount is not zero" $
398.43 s
[really-safe-money-gen] a /= Amount.zero
398.43 s
[really-safe-money-gen] Covering tests:
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.GenValid (MultiAmount Currency).genValid \:\: Gen (MultiAmount Currency).only generates valid '(MultiAmount Currency)'s
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.add.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.addAmount.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.fromAmount.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtract.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.sum.produces valid amounts
398.43 s
[really-safe-money-gen] Money\.MultiAmountSpec.zero.is valid
398.43 s
[really-safe-money-gen]
398.43 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAccount.hs:78:6-28:
398.43 s
[really-safe-money-gen] @@ -75,7 +75,7 @@
398.43 s
[really-safe-money-gen]
398.43 s
[really-safe-money-gen] fromAccount :: currency -> Account -> MultiAccount currency
398.43 s
[really-safe-money-gen] fromAccount currency amount =
398.43 s
[really-safe-money-gen] - if amount == Account.zero
398.43 s
[really-safe-money-gen] + if True
398.44 s
[really-safe-money-gen] then zero
398.44 s
[really-safe-money-gen] else MultiAccount $ M.singleton currency amount
398.44 s
[really-safe-money-gen]
398.44 s
[really-safe-money-gen] Covering tests:
398.44 s
[really-safe-money-gen] Money\.MultiAccountSpec.fromAccount.produces valid amounts
398.44 s
[really-safe-money-gen]
398.44 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAccount.hs:78:6-28:
398.44 s
[really-safe-money-gen] @@ -75,7 +75,7 @@
398.44 s
[really-safe-money-gen]
398.44 s
[really-safe-money-gen] fromAccount :: currency -> Account -> MultiAccount currency
398.44 s
[really-safe-money-gen] fromAccount currency amount =
398.44 s
[really-safe-money-gen] - if amount == Account.zero
398.44 s
[really-safe-money-gen] + if False
398.44 s
[really-safe-money-gen] then zero
398.44 s
[really-safe-money-gen] else MultiAccount $ M.singleton currency amount
398.44 s
[really-safe-money-gen]
398.44 s
[really-safe-money-gen] Covering tests:
398.44 s
[really-safe-money-gen] Money\.MultiAccountSpec.fromAccount.produces valid amounts
398.44 s
[really-safe-money-gen]
398.44 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAmount.hs:66:13-29:
398.44 s
[really-safe-money-gen] @@ -63,7 +63,7 @@
398.44 s
[really-safe-money-gen] [ genericValidate ma,
398.44 s
[really-safe-money-gen] decorateMap m $ \_ a ->
398.44 s
[really-safe-money-gen] declare "The amount is not zero" $
398.44 s
[really-safe-money-gen] - a /= Amount.zero
398.44 s
[really-safe-money-gen] + True
398.44 s
[really-safe-money-gen] ]
398.44 s
[really-safe-money-gen]
398.44 s
[really-safe-money-gen] instance (NFData currency) => NFData (MultiAmount currency)
398.44 s
[really-safe-money-gen] Covering tests:
398.44 s
[really-safe-money-gen] Money\.MultiAmountSpec.GenValid (MultiAmount Currency).genValid \:\: Gen (MultiAmount Currency).only generates valid '(MultiAmount Currency)'s
398.44 s
[really-safe-money-gen] Money\.MultiAmountSpec.add.produces valid amounts
398.44 s
[really-safe-money-gen] Money\.MultiAmountSpec.addAmount.produces valid amounts
398.44 s
[really-safe-money-gen] Money\.MultiAmountSpec.fromAmount.produces valid amounts
398.44 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtract.produces valid amounts
398.44 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
398.44 s
[really-safe-money-gen] Money\.MultiAmountSpec.sum.produces valid amounts
398.44 s
[really-safe-money-gen]
398.44 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/QuantisationFactor.hs:87:27-28:
398.44 s
[really-safe-money-gen] @@ -84,7 +84,7 @@
398.44 s
[really-safe-money-gen] fromDecimalLiteral dl = do
398.44 s
[really-safe-money-gen] irat <-
398.44 s
[really-safe-money-gen] let r = DecimalLiteral.toRational dl
398.44 s
[really-safe-money-gen] - in if numerator r == 0
398.44 s
[really-safe-money-gen] + in if numerator r == 1
398.44 s
[really-safe-money-gen] then Nothing
398.44 s
[really-safe-money-gen] else pure r
398.44 s
[really-safe-money-gen]
398.44 s
[really-safe-money-gen] Covering tests:
398.44 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.DecimalLiteral.fromDecimalLiteral.fails to render a non-1 integer
398.44 s
[really-safe-money-gen]
398.44 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/MultiAccount.hs:66:7-8:
398.44 s
[really-safe-money-gen] @@ -63,7 +63,7 @@
398.44 s
[really-safe-money-gen] instance (Validity currency, Show currency, Ord currency) => Validity (MultiAccount currency) where
398.44 s
[really-safe-money-gen] validate ma@(MultiAccount m) =
398.44 s
[really-safe-money-gen] mconcat
398.44 s
[really-safe-money-gen] - [ genericValidate ma,
398.44 s
[really-safe-money-gen] + [ genericValidate ma,
398.44 s
[really-safe-money-gen] decorateMap m $ \_ a ->
398.44 s
[really-safe-money-gen] declare "The account is not zero" $
398.44 s
[really-safe-money-gen] a /= Account.zero
398.44 s
[really-safe-money-gen] Covering tests:
398.44 s
[really-safe-money-gen] Money\.MultiAccountSpec.GenValid (MultiAccount Currency).genValid \:\: Gen (MultiAccount Currency).only generates valid '(MultiAccount Currency)'s
398.44 s
[really-safe-money-gen] Money\.MultiAccountSpec.add.produces valid amounts
398.44 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAccount.produces valid amounts
398.44 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAmount.produces valid amounts
398.44 s
[really-safe-money-gen] Money\.MultiAccountSpec.fromAccount.produces valid amounts
398.44 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtract.produces valid amounts
398.44 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAccount.produces valid amounts
398.44 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAmount.produces valid amounts
398.44 s
[really-safe-money-gen] Money\.MultiAccountSpec.sum.produces valid amounts
398.44 s
[really-safe-money-gen] Money\.MultiAccountSpec.zero.is valid
398.44 s
[really-safe-money-gen]
398.44 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/MultiAccount.hs:66:7-8:
398.44 s
[really-safe-money-gen] @@ -63,7 +63,7 @@
398.44 s
[really-safe-money-gen] instance (Validity currency, Show currency, Ord currency) => Validity (MultiAccount currency) where
398.44 s
[really-safe-money-gen] validate ma@(MultiAccount m) =
398.44 s
[really-safe-money-gen] mconcat
398.44 s
[really-safe-money-gen] - [ genericValidate ma,
398.44 s
[really-safe-money-gen] + [ genericValidate ma,
398.44 s
[really-safe-money-gen] decorateMap m $ \_ a ->
398.44 s
[really-safe-money-gen] declare "The account is not zero" $
398.44 s
[really-safe-money-gen] a /= Account.zero
398.44 s
[really-safe-money-gen] Covering tests:
398.44 s
[really-safe-money-gen] Money\.MultiAccountSpec.GenValid (MultiAccount Currency).genValid \:\: Gen (MultiAccount Currency).only generates valid '(MultiAccount Currency)'s
398.45 s
[really-safe-money-gen] Money\.MultiAccountSpec.add.produces valid amounts
398.45 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAccount.produces valid amounts
398.45 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAmount.produces valid amounts
398.45 s
[really-safe-money-gen] Money\.MultiAccountSpec.fromAccount.produces valid amounts
398.45 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtract.produces valid amounts
398.45 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAccount.produces valid amounts
398.45 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAmount.produces valid amounts
398.45 s
[really-safe-money-gen] Money\.MultiAccountSpec.sum.produces valid amounts
398.45 s
[really-safe-money-gen] Money\.MultiAccountSpec.zero.is valid
398.45 s
[really-safe-money-gen]
398.45 s
[really-safe-money-gen] Testing mutation IntLit at src/MoneTesting mutation ConstBool at src/Money/QuantisationFactor.hs:40:57-63:
398.45 s
[really-safe-money-gen] @@ -37,7 +37,7 @@
398.45 s
[really-safe-money-gen] validate qf@(QuantisationFactor w) =
398.45 s
[really-safe-money-gen] mconcat
398.45 s
[really-safe-money-gen] [ genericValidate qf,
398.45 s
[really-safe-money-gen] - declare "The quantisation factor is not zero" $ w /= 0
398.45 s
[really-safe-money-gen] + declare "The quantisation factor is not zero" $ False
398.45 s
[really-safe-money-gen] ]
398.45 s
[really-safe-money-gen]
398.45 s
[really-safe-money-gen] instance NFData QuantisationFactor
398.61 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/QuantisationFactor.hs:40:57-63:
398.61 s
[really-safe-money-gen] @@ -37,7 +37,7 @@
398.61 s
[really-safe-money-gen] validate qf@(QuantisationFactor w) =
398.61 s
[really-safe-money-gen] mconcat
398.61 s
[really-safe-money-gen] [ genericValidate qf,
398.61 s
[really-safe-money-gen] - declare "The quantisation factor is not zero" $ w /= 0
398.61 s
[really-safe-money-gen] + declare "The quantisation factor is not zero" $ True
398.61 s
[really-safe-money-gen] ]
398.61 s
[really-safe-money-gen]
398.61 s
[really-safe-money-gen] instance NFData QuantisationFactor
398.64 s
[really-safe-money-gen] Testing mutation Negate at src/Money/QuantisationFactor.hs:40:57-63:
398.64 s
[really-safe-money-gen] @@ -37,7 +37,7 @@
398.64 s
[really-safe-money-gen] validate qf@(QuantisationFactor w) =
398.64 s
[really-safe-money-gen] mconcat
398.64 s
[really-safe-money-gen] [ genericValidate qf,
398.64 s
[really-safe-money-gen] - declare "The quantisation factor is not zero" $ w /= 0
398.64 s
[really-safe-money-gen] + declare "The quantisation factor is not zero" $ not (w /= 0)
398.64 s
[really-safe-money-gen] ]
398.64 s
[really-safe-money-gen]
398.64 s
[really-safe-money-gen] instance NFData QuantisationFactor
398.68 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/QuantisationFactor.hs:39:7-8:
398.68 s
[really-safe-money-gen] @@ -36,7 +36,7 @@
398.68 s
[really-safe-money-gen] instance Validity QuantisationFactor where
398.68 s
[really-safe-money-gen] validate qf@(QuantisationFactor w) =
398.68 s
[really-safe-money-gen] mconcat
398.69 s
[really-safe-money-gen] - [ genericValidate qf,
398.69 s
[really-safe-money-gen] + [ genericValidate qf,
398.69 s
[really-safe-money-gen] declare "The quantisation factor is not zero" $ w /= 0
398.69 s
[really-safe-money-gen] ]
398.69 s
[really-safe-money-gen]
398.72 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/QuantisationFactor.hs:39:7-8:
398.72 s
[really-safe-money-gen] @@ -36,7 +36,7 @@
398.72 s
[really-safe-money-gen] instance Validity QuantisationFactor where
398.72 s
[really-safe-money-gen] validate qf@(QuantisationFactor w) =
398.72 s
[really-safe-money-gen] mconcat
398.72 s
[really-safe-money-gen] - [ genericValidate qf,
398.72 s
[really-safe-money-gen] + [ genericValidate qf,
398.72 s
[really-safe-money-gen] declare "The quantisation factor is not zero" $ w /= 0
398.72 s
[really-safe-money-gen] ]
398.72 s
[really-safe-money-gen]
398.96 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Account.hs:421:32-33:
398.96 s
[really-safe-money-gen] @@ -418,7 +418,7 @@
398.96 s
[really-safe-money-gen] multiply :: Int32 -> Account -> Maybe Account
398.96 s
[really-safe-money-gen] multiply factor account =
398.96 s
[really-safe-money-gen] let af = (fromIntegral :: Int32 -> Word32) ((Prelude.abs :: Int32 -> Int32) factor)
398.96 s
[really-safe-money-gen] - f = case (compare factor 0, compare account zero) of
398.96 s
[really-safe-money-gen] + f = case (compare factor 1, compare account zero) of
398.96 s
[really-safe-money-gen] (EQ, _) -> const zero
398.96 s
[really-safe-money-gen] (_, EQ) -> const zero
398.96 s
[really-safe-money-gen] (GT, GT) -> Positive
399.02 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:451:14-23:
399.02 s
[really-safe-money-gen] @@ -448,7 +448,7 @@
399.02 s
[really-safe-money-gen] DistributedIntoZeroChunks -> DistributedIntoZeroChunks
399.02 s
[really-safe-money-gen] DistributedZero -> DistributedZero
399.02 s
[really-safe-money-gen] DistributedIntoEqualChunks numberOfChunks chunk ->
399.02 s
[really-safe-money-gen] - if a >= zero
399.02 s
[really-safe-money-gen] + if True
399.02 s
[really-safe-money-gen] then DistributedIntoEqualChunks numberOfChunks (Positive chunk)
399.02 s
[really-safe-money-gen] else DistributedIntoEqualChunks numberOfChunks (Negative chunk)
399.02 s
[really-safe-money-gen] DistributedIntoUnequalChunks numberOfLargerChunks largerChunk numberOfSmallerChunks smallerChunk ->
399.06 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:451:14-23:
399.06 s
[really-safe-money-gen] @@ -448,7 +448,7 @@
399.06 s
[really-safe-money-gen] DistributedIntoZeroChunks -> DistributedIntoZeroChunks
399.06 s
[really-safe-money-gen] DistributedZero -> DistributedZero
399.06 s
[really-safe-money-gen] DistributedIntoEqualChunks numberOfChunks chunk ->
399.06 s
[really-safe-money-gen] - if a >= zero
399.06 s
[really-safe-money-gen] + if False
399.06 s
[really-safe-money-gen] then DistributedIntoEqualChunks numberOfChunks (Positive chunk)
399.06 s
[really-safe-money-gen] else DistributedIntoEqualChunks numberOfChunks (Negative chunk)
399.06 s
[really-safe-money-gen] DistributedIntoUnequalChunks numberOfLargerChunks largerChunk numberOfSmallerChunks smallerChunk ->
399.07 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Account.hs:451:14-23:
399.07 s
[really-safe-money-gen] @@ -448,7 +448,7 @@
399.07 s
[really-safe-money-gen] DistributedIntoZeroChunks -> DistributedIntoZeroChunks
399.07 s
[really-safe-money-gen] DistributedZero -> DistributedZero
399.07 s
[really-safe-money-gen] DistributedIntoEqualChunks numberOfChunks chunk ->
399.07 s
[really-safe-money-gen] - if a >= zero
399.07 s
[really-safe-money-gen] + if not (a >= zero)
399.07 s
[really-safe-money-gen] then DistributedIntoEqualChunks numberOfChunks (Positive chunk)
399.07 s
[really-safe-money-gen] else DistributedIntoEqualChunks numberOfChunks (Negative chunk)
399.07 s
[really-safe-money-gen] DistributedIntoUnequalChunks numberOfLargerChunks largerChunk numberOfSmallerChunks smallerChunk ->
399.12 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Account.hs:451:11-76:
399.12 s
[really-safe-money-gen] @@ -448,7 +448,7 @@
399.12 s
[really-safe-money-gen] DistributedIntoZeroChunks -> DistributedIntoZeroChunks
399.14 s
[really-safe-money-gen] DiTsetsrtiibnugt emduZteartoi o-n> CDoinssttrBioboult eadtZ esrroc
399.14 s
[really-safe-money-gen] / M o n e y / A c cDoiusnttr.ihbsu:t4e5d5I:n1t4o-E2q3u:a
399.14 s
[really-safe-money-gen] l@C@h u-n4k5s2 ,n7u m+b4e5r2O,f7C h@u@n
399.14 s
[really-safe-money-gen] k s c h u n k - >
399.14 s
[really-safe-money-gen] - t h e n D i s t riifb uat e>d=I nzteorEoq
399.14 s
[really-safe-money-gen] u+a l C h u n k s n uimfb ear O>f=C hzuenrkos
399.14 s
[really-safe-money-gen] ( P o s i t i v e c h utnhke)n
399.14 s
[really-safe-money-gen] D i s t r i b u t e d I netlosEeq uDailsCthruinbkust enduImnbteorEOqfuCahluCnhkusn k(sP onsuimtbievreO fcChhuunnkk)s
399.14 s
[really-safe-money-gen] ( N e g a t i v e c h uenlks)e
399.14 s
[really-safe-money-gen] D i s t r i b u tDeidsItnrtiobEuqtueadlICnhtuonUknse qnuuamlbCehruOnfkCsh unnukmsb e(rNOefgLaatrigveer Cchhuunnkks)
399.14 s
[really-safe-money-gen] l a r g e r C h u nDki snturmibbeurtOefdSImnatlolUenreCqhuuanlkCsh usnmkasl lneurmCbheurnOkf L-a>r
399.14 s
[really-safe-money-gen] g-e r C h u n k s l airfg ear C>h=u nzke rnou
399.14 s
[really-safe-money-gen] m+b e r O f S m a l l eirfC hTurnukes
399.14 s
[really-safe-money-gen] s m a l l e r C h u n k t-h>e
399.14 s
[really-safe-money-gen] n DistributedIntoUnequalChunks numberOfLargerChunks (Positive largerChunk) numberOfSmallerChunks (Positive smallerChunk)
399.15 s
[really-safe-money-gen] else DistributedIntoUnequalChunks numberOfSmallerChunks (Negative smallerChunk) numberOfLargerChunks (Negative largerChunk)
399.15 s
[really-safe-money-gen]
399.29 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Account.hs:455:14-23:
399.29 s
[really-safe-money-gen] @@ -452,7 +452,7 @@
399.29 s
[really-safe-money-gen] then DistributedIntoEqualChunks numberOfChunks (Positive chunk)
399.29 s
[really-safe-money-gen] else DistributedIntoEqualChunks numberOfChunks (Negative chunk)
399.29 s
[really-safe-money-gen] DistributedIntoUnequalChunks numberOfLargerChunks largerChunk numberOfSmallerChunks smallerChunk ->
399.29 s
[really-safe-money-gen] - if a >= zero
399.30 s
[really-safe-money-gen] + if not (a >= zero)
399.30 s
[really-safe-money-gen] then DistributedIntoUnequalChunks numberOfLargerChunks (Positive largerChunk) numberOfSmallerChunks (Positive smallerChunk)
399.30 s
[really-safe-money-gen] else DistributedIntoUnequalChunks numberOfSmallerChunks (Negative smallerChunk) numberOfLargerChunks (Negative largerChunk)
399.30 s
[really-safe-money-gen]
399.35 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:455:14-23:
399.35 s
[really-safe-money-gen] @@ -452,7 +452,7 @@
399.35 s
[really-safe-money-gen] then DistributedIntoEqualChunks numberOfChunks (Positive chunk)
399.35 s
[really-safe-money-gen] else DistributedIntoEqualChunks numberOfChunks (Negative chunk)
399.35 s
[really-safe-money-gen] DistributedIntoUnequalChunks numberOfLargerChunks largerChunk numberOfSmallerChunks smallerChunk ->
399.35 s
[really-safe-money-gen] - if a >= zero
399.35 s
[really-safe-money-gen] + if False
399.35 s
[really-safe-money-gen] then DistributedIntoUnequalChunks numberOfLargerChunks (Positive largerChunk) numberOfSmallerChunks (Positive smallerChunk)
399.36 s
[really-safe-money-gen] else DistributedIntoUnequalChunks numberOfSmallerChunks (Negative smallerChunk) numberOfLargerChunks (Negative largerChunk)
399.36 s
[really-safe-money-gen]
399.49 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Account.hs:455:11-136:
399.49 s
[really-safe-money-gen] @@ -452,7 +452,7 @@
399.49 s
[really-safe-money-gen] then DistributedIntoEqualChunks numberOfChunks (Positive chunk)
399.49 s
[really-safe-money-gen] else DistributedIntoEqualChunks numberOfChunks (Negative chunk)
399.49 s
[really-safe-money-gen] DistributedIntoUnequalChunks numberOfLargerChunks largerChunk numberOfSmallerChunks smallerChunk ->
399.49 s
[really-safe-money-gen] - if a >= zero
399.49 s
[really-safe-money-gen] + if a >= zero
399.49 s
[really-safe-money-gen] then DistributedIntoUnequalChunks numberOfLargerChunks (Positive largerChunk) numberOfSmallerChunks (Positive smallerChunk)
399.50 s
[really-safe-money-gen] else DistributedIntoUnequalChunks numberOfSmallerChunks (Negative smallerChunk) numberOfLargerChunks (Negative largerChunk)
399.50 s
[really-safe-money-gen]
399.51 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Account.hs:495:17-18:
399.51 s
[really-safe-money-gen] @@ -492,7 +492,7 @@
399.52 s
[really-safe-money-gen] fraction rounding account f =
399.52 s
[really-safe-money-gen] let af = (realToFrac :: Rational -> Ratio Natural) ((Prelude.abs :: Rational -> Rational) f)
399.52 s
[really-safe-money-gen] ro =
399.52 s
[really-safe-money-gen] - if f >= 0
399.52 s
[really-safe-money-gen] + if f >= 1
399.52 s
[really-safe-money-gen] then rounding
399.52 s
[really-safe-money-gen] else case rounding of
399.52 s
[really-safe-money-gen] RoundUp -> RoundDown
399.60 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:495:12-18:
399.60 s
[really-safe-money-gen] @@ -492,7 +492,7 @@
399.60 s
[really-safe-money-gen] fraction rounding account f =
399.60 s
[really-safe-money-gen] let af = (realToFrac :: Rational -> Ratio Natural) ((Prelude.abs :: Rational -> Rational) f)
399.60 s
[really-safe-money-gen] ro =
399.60 s
[really-safe-money-gen] - if f >= 0
399.60 s
[really-safe-money-gen] + if True
399.60 s
[really-safe-money-gen] then rounding
399.60 s
[really-safe-money-gen] else case rounding of
399.60 s
[really-safe-money-gen] RoundUp -> RoundDown
399.71 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:495:12-18:
399.71 s
[really-safe-money-gen] @@ -492,7 +492,7 @@
399.71 s
[really-safe-money-gen] fraction rounding account f =
399.71 s
[really-safe-money-gen] let af = (realToFrac :: Rational -> Ratio Natural) ((Prelude.abs :: Rational -> Rational) f)
399.71 s
[really-safe-money-gen] ro =
399.71 s
[really-safe-money-gen] - if f >= 0
399.71 s
[really-safe-money-gen] + if False
399.71 s
[really-safe-money-gen] then rounding
399.71 s
[really-safe-money-gen] else case rounding of
399.71 s
[really-safe-money-gen] RoundUp -> RoundDown
399.73 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Account.hs:495:12-18:
399.73 s
[really-safe-money-gen] @@ -492,7 +492,7 @@
399.73 s
[really-safe-money-gen] fraction rounding account f =
399.73 s
[really-safe-money-gen] let af = (realToFrac :: Rational -> Ratio Natural) ((Prelude.abs :: Rational -> Rational) f)
399.73 s
[really-safe-money-gen] ro =
399.73 s
[really-safe-money-gen] - if f >= 0
399.73 s
[really-safe-money-gen] + if not (f >= 0)
399.73 s
[really-safe-money-gen] then rounding
399.73 s
[really-safe-money-gen] else case rounding of
399.73 s
[really-safe-money-gen] RoundUp -> RoundDown
399.89 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Account.hs:495:9-41:
399.89 s
[really-safe-money-gen] @@ -492,7 +492,7 @@
399.89 s
[really-safe-money-gen] fraction rounding account f =
399.89 s
[really-safe-money-gen] let af = (realToFrac :: Rational -> Ratio Natural) ((Prelude.abs :: Rational -> Rational) f)
399.89 s
[really-safe-money-gen] ro =
399.89 s
[really-safe-money-gen] - if f >= 0
399.89 s
[really-safe-money-gen] + if f >= 0
399.89 s
[really-safe-money-gen] then rounding
399.89 s
[really-safe-money-gen] else case rounding of
399.89 s
[really-safe-money-gen] RoundUp -> RoundDown
399.90 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Account.hs:503:15-16:
399.90 s
[really-safe-money-gen] @@ -500,7 +500,7 @@
399.90 s
[really-safe-money-gen] RoundNearest -> RoundNearest
399.90 s
[really-safe-money-gen] (ma, ar) = fractionRatio ro account af
399.90 s
[really-safe-money-gen] r = (realToFrac :: Ratio Natural -> Rational) ar
399.90 s
[really-safe-money-gen] - in if f >= 0
399.90 s
[really-safe-money-gen] + in if f >= 1
399.90 s
[really-safe-money-gen] then (ma, r)
399.90 s
[really-safe-money-gen] else (negate <$> ma, -r)
399.90 s
[really-safe-money-gen]
399.91 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:503:10-16:
399.91 s
[really-safe-money-gen] @@ -500,7 +500,7 @@
399.91 s
[really-safe-money-gen] RoundNearest -> RoundNearest
399.91 s
[really-safe-money-gen] (ma, ar) = fractionRatio ro account af
399.91 s
[really-safe-money-gen] r = (realToFrac :: Ratio Natural -> Rational) ar
399.91 s
[really-safe-money-gen] - in if f >= 0
399.91 s
[really-safe-money-gen] + in if True
399.91 s
[really-safe-money-gen] then (ma, r)
399.91 s
[really-safe-money-gen] else (negate <$> ma, -r)
399.91 s
[really-safe-money-gen]
400.06 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:503:10-16:
400.06 s
[really-safe-money-gen] @@ -500,7 +500,7 @@
400.06 s
[really-safe-money-gen] RoundNearest -> RoundNearest
400.06 s
[really-safe-money-gen] (ma, ar) = fractionRatio ro account af
400.06 s
[really-safe-money-gen] r = (realToFrac :: Ratio Natural -> Rational) ar
400.06 s
[really-safe-money-gen] - in if f >= 0
400.06 s
[really-safe-money-gen] + in if False
400.06 s
[really-safe-money-gen] then (ma, r)
400.06 s
[really-safe-money-gen] else (negate <$> ma, -r)
400.06 s
[really-safe-money-gen]
400.07 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Account.hs:503:7-33:
400.07 s
[really-safe-money-gen] @@ -500,7 +500,7 @@
400.07 s
[really-safe-money-gen] RoundNearest -> RoundNearest
400.07 s
[really-safe-money-gen] (ma, ar) = fractionRatio ro account af
400.07 s
[really-safe-money-gen] r = (realToFrac :: Ratio Natural -> Rational) ar
400.07 s
[really-safe-money-gen] - in if f >= 0
400.07 s
[really-safe-money-gen] + in if f >= 0
400.07 s
[really-safe-money-gen] then (ma, r)
400.07 s
[really-safe-money-gen] else (negate <$> ma, -r)
400.07 s
[really-safe-money-gen]
400.22 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Account.hs:503:10-16:
400.23 s
[really-safe-money-gen] @@ -500,7 +500,7 @@
400.23 s
[really-safe-money-gen] RoundNearest -> RoundNearest
400.23 s
[really-safe-money-gen] (ma, ar) = fractionRatio ro account af
400.23 s
[really-safe-money-gen] r = (realToFrac :: Ratio Natural -> Rational) ar
400.23 s
[really-safe-money-gen] - in if f >= 0
400.23 s
[really-safe-money-gen] + in if not (f >= 0)
400.23 s
[really-safe-money-gen] then (ma, r)
400.23 s
[really-safe-money-gen] else (negate <$> ma, -r)
400.23 s
[really-safe-money-gen]
400.44 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:233:14-20:
400.44 s
[really-safe-money-gen] @@ -230,7 +230,7 @@
400.44 s
[really-safe-money-gen] fromRational :: QuantisationFactor -> Rational -> Maybe Account
400.44 s
[really-safe-money-gen] fromRational quantisationFactor r =
400.44 s
[really-safe-money-gen] let r' = Prelude.abs r
400.44 s
[really-safe-money-gen] - f = if r >= 0 then Positive else Negative
400.45 s
[really-safe-money-gen] + f = if True then Positive else Negative
400.45 s
[really-safe-money-gen] in f <$> Amount.fromRational quantisationFactor r'
400.45 s
[really-safe-money-gen]
400.45 s
[really-safe-money-gen] -- | Turn a 'Rational' into an amount of money.
400.50 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Account.hs:233:19-20:
400.50 s
[really-safe-money-gen] @@ -230,7 +230,7 @@
400.50 s
[really-safe-money-gen] fromRational :: QuantisationFactor -> Rational -> Maybe Account
400.50 s
[really-safe-money-gen] fromRational quantisationFactor r =
400.50 s
[really-safe-money-gen] let r' = Prelude.abs r
400.50 s
[really-safe-money-gen] - f = if r >= 0 then Positive else Negative
400.50 s
[really-safe-money-gen] + f = if r >= 1 then Positive else Negative
400.50 s
[really-safe-money-gen] in f <$> Amount.fromRational quantisationFactor r'
400.50 s
[really-safe-money-gen]
400.50 s
[really-safe-money-gen] -- | Turn a 'Rational' into an amount of money.
400.66 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:233:14-20:
400.76 s
[really-safe-money-gen] @@ -230,7 +230,7 @@
400.76 s
[really-safe-money-gen] fromRational :: QuantisationFactor -> Rational -> Maybe Account
400.76 s
[really-safe-money-gen] fromRational quantisationFactor r =
400.76 s
[really-safe-money-gen] let r' = Prelude.abs r
400.76 s
[really-safe-money-gen] - f = if r >= 0 then Positive else Negative
400.76 s
[really-safe-money-gen] + f = if False then Positive else Negative
400.76 s
[really-safe-money-gen] in f <$> Amount.fromRational quantisationFactor r'
400.76 s
[really-safe-money-gen]
400.77 s
[really-safe-money-gen] -- | Turn a 'Rational' into an amount of money.
400.77 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Account.hs:233:14-20:
400.77 s
[really-safe-money-gen] @@ -230,7 +230,7 @@
400.77 s
[really-safe-money-gen] fromRational :: QuantisationFactor -> Rational -> Maybe Account
400.77 s
[really-safe-money-gen] fromRational quantisationFactor r =
400.77 s
[really-safe-money-gen] let r' = Prelude.abs r
400.77 s
[really-safe-money-gen] - f = if r >= 0 then Positive else Negative
400.77 s
[really-safe-money-gen] + f = if not (r >= 0) then Positive else Negative
400.77 s
[really-safe-money-gen] in f <$> Amount.fromRational quantisationFactor r'
400.77 s
[really-safe-money-gen]
400.77 s
[really-safe-money-gen] -- | Turn a 'Rational' into an amount of money.
400.77 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Account.hs:233:11-48:
400.77 s
[really-safe-money-gen] @@ -230,7 +230,7 @@
400.77 s
[really-safe-money-gen] fromRational :: QuantisationFactor -> Rational -> Maybe Account
400.77 s
[really-safe-money-gen] fromRational quantisationFactor r =
400.77 s
[really-safe-money-gen] let r' = Prelude.abs r
400.77 s
[really-safe-money-gen] - f = if r >= 0 then Positive else Negative
400.77 s
[really-safe-money-gen] + f = if r >= 0 then Positive else Negative
400.77 s
[really-safe-money-gen] in f <$> Amount.fromRational quantisationFactor r'
400.77 s
[really-safe-money-gen]
400.77 s
[really-safe-money-gen] -- | Turn a 'Rational' into an amount of money.
400.77 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Account.hs:197:19-20:
400.77 s
[really-safe-money-gen] @@ -194,7 +194,7 @@
400.77 s
[really-safe-money-gen] fromDouble :: QuantisationFactor -> Double -> Maybe Account
400.77 s
[really-safe-money-gen] fromDouble quantisationFactor d =
400.77 s
[really-safe-money-gen] let d' = Prelude.abs d
400.77 s
[really-safe-money-gen] - f = if d >= 0 then Positive else Negative
400.77 s
[really-safe-money-gen] + f = if d >= 1 then Positive else Negative
400.77 s
[really-safe-money-gen] in f <$> Amount.fromDouble quantisationFactor d'
400.77 s
[really-safe-money-gen]
400.77 s
[really-safe-money-gen] -- | Turn an amount of money into a 'Rational'.
400.83 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:197:14-20:
400.83 s
[really-safe-money-gen] @@ -194,7 +194,7 @@
400.83 s
[really-safe-money-gen] fromDouble :: QuantisationFactor -> Double -> Maybe Account
400.84 s
[really-safe-money-gen] fromDouble quantisationFactor d =
400.84 s
[really-safe-money-gen] let d' = Prelude.abs d
400.84 s
[really-safe-money-gen] - f = if d >= 0 then Positive else Negative
400.84 s
[really-safe-money-gen] + f = if True then Positive else Negative
400.84 s
[really-safe-money-gen] in f <$> Amount.fromDouble quantisationFactor d'
400.84 s
[really-safe-money-gen]
400.84 s
[really-safe-money-gen] -- | Turn an amount of money into a 'Rational'.
400.95 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:197:14-20:
400.95 s
[really-safe-money-gen] @@ -194,7 +194,7 @@
400.96 s
[really-safe-money-gen] fromDouble :: QuantisationFactor -> Double -> Maybe Account
400.96 s
[really-safe-money-gen] fromDouble quantisationFactor d =
400.96 s
[really-safe-money-gen] let d' = Prelude.abs d
400.96 s
[really-safe-money-gen] - f = if d >= 0 then Positive else Negative
400.96 s
[really-safe-money-gen] + f = if False then Positive else Negative
400.96 s
[really-safe-money-gen] in f <$> Amount.fromDouble quantisationFactor d'
400.96 s
[really-safe-money-gen]
400.96 s
[really-safe-money-gen] -- | Turn an amount of money into a 'Rational'.
401.01 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Account.hs:197:14-20:
401.01 s
[really-safe-money-gen] @@ -194,7 +194,7 @@
401.01 s
[really-safe-money-gen] fromDouble :: QuantisationFactor -> Double -> Maybe Account
401.01 s
[really-safe-money-gen] fromDouble quantisationFactor d =
401.01 s
[really-safe-money-gen] let d' = Prelude.abs d
401.01 s
[really-safe-money-gen] - f = if d >= 0 then Positive else Negative
401.01 s
[really-safe-money-gen] + f = if not (d >= 0) then Positive else Negative
401.01 s
[really-safe-money-gen] in f <$> Amount.fromDouble quantisationFactor d'
401.01 s
[really-safe-money-gen]
401.01 s
[really-safe-money-gen] -- | Turn an amount of money into a 'Rational'.
401.46 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:123:10-23:
401.46 s
[really-safe-money-gen] @@ -120,7 +120,7 @@
401.46 s
[really-safe-money-gen] maxBoundI = (toInteger :: Word64 -> Integer) (maxBound :: Word64)
401.46 s
[really-safe-money-gen] a :: Integer
401.46 s
[really-safe-money-gen] a = (Prelude.abs :: Integer -> Integer) i
401.46 s
[really-safe-money-gen] - in if a > maxBoundI
401.47 s
[really-safe-money-gen] + in if True
401.47 s
[really-safe-money-gen] then Nothing
401.47 s
[really-safe-money-gen] else
401.47 s
[really-safe-money-gen] let w :: Word64
401.72 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Account.hs:197:11-48:
401.72 s
[really-safe-money-gen] @@ -194,7 +194,7 @@
401.72 s
[really-safe-money-gen] fromDouble :: QuantisationFactor -> Double -> Maybe Account
401.72 s
[really-safe-money-gen] fromDouble quantisationFactor d =
401.72 s
[really-safe-money-gen] let d' = Prelude.abs d
401.72 s
[really-safe-money-gen] - f = if d >= 0 then Positive else Negative
401.72 s
[really-safe-money-gen] + f = if d >= 0 then Positive else Negative
401.72 s
[really-safe-money-gen] in f <$> Amount.fromDouble quantisationFactor d'
401.72 s
[really-safe-money-gen]
401.72 s
[really-safe-money-gen] -- | Turn an amount of money into a 'Rational'.
401.72 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:123:10-23:
401.73 s
[really-safe-money-gen] @@ -120,7 +120,7 @@
401.73 s
[really-safe-money-gen] maxBoundI = (toInteger :: Word64 -> Integer) (maxBound :: Word64)
401.73 s
[really-safe-money-gen] a :: Integer
401.73 s
[really-safe-money-gen] a = (Prelude.abs :: Integer -> Integer) i
401.73 s
[really-safe-money-gen] - in if a > maxBoundI
401.73 s
[really-safe-money-gen] + in if False
401.73 s
[really-safe-money-gen] then Nothing
401.73 s
[really-safe-money-gen] else
401.73 s
[really-safe-money-gen] let w :: Word64
401.96 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Account.hs:123:10-23:
401.96 s
[really-safe-money-gen] @@ -120,7 +120,7 @@
401.96 s
[really-safe-money-gen] maxBoundI = (toInteger :: Word64 -> Integer) (maxBound :: Word64)
401.96 s
[really-safe-money-gen] a :: Integer
401.96 s
[really-safe-money-gen] a = (Prelude.abs :: Integer -> Integer) i
401.96 s
[really-safe-money-gen] - in if a > maxBoundI
401.96 s
[really-safe-money-gen] + in if not (a > maxBoundI)
401.96 s
[really-safe-money-gen] then Nothing
401.96 s
[really-safe-money-gen] else
401.96 s
[really-safe-money-gen] let w :: Word64
402.00 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Account.hs:131:25-26:
402.01 s
[really-safe-money-gen] @@ -128,7 +128,7 @@
402.01 s
[really-safe-money-gen] amount :: Amount
402.01 s
[really-safe-money-gen] amount = Amount.fromMinimalQuantisations w
402.01 s
[really-safe-money-gen] in Just $
402.01 s
[really-safe-money-gen] - if i >= 0
402.01 s
[really-safe-money-gen] + if i >= 1
402.01 s
[really-safe-money-gen] then Positive amount
402.01 s
[really-safe-money-gen] else Negative amount
402.01 s
[really-safe-money-gen]
402.28 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:131:20-26:
402.28 s
[really-safe-money-gen] @@ -128,7 +128,7 @@
402.28 s
[really-safe-money-gen] amount :: Amount
402.28 s
[really-safe-money-gen] amount = Amount.fromMinimalQuantisations w
402.28 s
[really-safe-money-gen] in Just $
402.28 s
[really-safe-money-gen] - if i >= 0
402.28 s
[really-safe-money-gen] + if False
402.28 s
[really-safe-money-gen] then Positive amount
402.28 s
[really-safe-money-gen] else Negative amount
402.28 s
[really-safe-money-gen]
402.28 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Account.hs:131:20-26:
402.28 s
[really-safe-money-gen] @@ -128,7 +128,7 @@
402.28 s
[really-safe-money-gen] amount :: Amount
402.28 s
[really-safe-money-gen] amount = Amount.fromMinimalQuantisations w
402.28 s
[really-safe-money-gen] in Just $
402.29 s
[really-safe-money-gen] - if i >= 0
402.29 s
[really-safe-money-gen] + if not (i >= 0)
402.29 s
[really-safe-money-gen] then Positive amount
402.29 s
[really-safe-money-gen] else Negative amount
402.29 s
[really-safe-money-gen]
402.29 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Account.hs:131:17-39:
402.29 s
[really-safe-money-gen] @@ -128,7 +128,7 @@
402.30 s
[really-safe-money-gen] amount :: Amount
402.30 s
[really-safe-money-gen] amount = Amount.fromMinimalQuantisations w
402.30 s
[really-safe-money-gen] in Just $
402.30 s
[really-safe-money-gen] - if i >= 0
402.30 s
[really-safe-money-gen] + if i >= 0
402.30 s
[really-safe-money-gen] then Positive amount
402.30 s
[really-safe-money-gen] else Negative amount
402.30 s
[really-safe-money-gen]
402.31 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Account.hs:123:7-39:
402.31 s
[really-safe-money-gen] @@ -120,7 +120,7 @@
402.31 s
[really-safe-money-gen] maxBoundI = (toInteger :: Word64 -> Integer) (maxBound :: Word64)
402.31 s
[really-safe-money-gen] a :: Integer
402.32 s
[really-safe-money-gen] a = (Prelude.abs :: Integer -> Integer) i
402.32 s
[really-safe-money-gen] - in if a > maxBoundI
402.32 s
[really-safe-money-gen] + in if a > maxBoundI
402.32 s
[really-safe-money-gen] then Nothing
402.32 s
[really-safe-money-gen] else
402.32 s
[really-safe-money-gen] let w :: Word64
402.65 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:396:23-27:
402.65 s
[really-safe-money-gen] @@ -393,5 +393,5 @@
402.65 s
[really-safe-money-gen] DecimalLiteral mS m e -> DecimalLiteral (go mS) m e
402.65 s
[really-safe-money-gen] where
402.65 s
[really-safe-money-gen] go = \case
402.65 s
[really-safe-money-gen] - Nothing -> Just True
402.65 s
[really-safe-money-gen] + Nothing -> Just True
402.65 s
[really-safe-money-gen] s -> s
402.69 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:396:23-27:
402.69 s
[really-safe-money-gen] @@ -393,5 +393,5 @@
402.69 s
[really-safe-money-gen] DecimalLiteral mS m e -> DecimalLiteral (go mS) m e
402.69 s
[really-safe-money-gen] where
402.69 s
[really-safe-money-gen] go = \case
402.69 s
[really-safe-money-gen] - Nothing -> Just True
402.70 s
[really-safe-money-gen] + Nothing -> Just False
402.70 s
[really-safe-money-gen] s -> s
402.77 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:396:23-27:
402.77 s
[really-safe-money-gen] @@ -393,5 +393,5 @@
402.77 s
[really-safe-money-gen] DecimalLiteral mS m e -> DecimalLiteral (go mS) m e
402.77 s
[really-safe-money-gen] where
402.77 s
[really-safe-money-gen] go = \case
402.77 s
[really-safe-money-gen] - Nothing -> Just True
402.77 s
[really-safe-money-gen] + Nothing -> Just not (True)
402.77 s
[really-safe-money-gen] s -> s
402.94 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:368:10-39:
402.94 s
[really-safe-money-gen] @@ -365,7 +365,7 @@
402.94 s
[really-safe-money-gen] setMinimumDigits wantedDigits dl =
402.94 s
[really-safe-money-gen] let currentDigits :: Word8
402.94 s
[really-safe-money-gen] currentDigits = digits dl
402.94 s
[really-safe-money-gen] - in if wantedDigits <= currentDigits
402.94 s
[really-safe-money-gen] + in if True
402.94 s
[really-safe-money-gen] then dl
402.94 s
[really-safe-money-gen] else increaseDigits (wantedDigits - currentDigits) dl
402.94 s
[really-safe-money-gen] where
402.96 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:368:10-39:
402.96 s
[really-safe-money-gen] @@ -365,7 +365,7 @@
402.96 s
[really-safe-money-gen] setMinimumDigits wantedDigits dl =
402.96 s
[really-safe-money-gen] let currentDigits :: Word8
402.96 s
[really-safe-money-gen] currentDigits = digits dl
402.96 s
[really-safe-money-gen] - in if wantedDigits <= currentDigits
402.96 s
[really-safe-money-gen] + in if False
402.96 s
[really-safe-money-gen] then dl
402.96 s
[really-safe-money-gen] else increaseDigits (wantedDigits - currentDigits) dl
402.97 s
[really-safe-money-gen] where
402.97 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:368:10-39:
402.97 s
[really-safe-money-gen] @@ -365,7 +365,7 @@
402.97 s
[really-safe-money-gen] setMinimumDigits wantedDigits dl =
402.97 s
[really-safe-money-gen] let currentDigits :: Word8
402.97 s
[really-safe-money-gen] currentDigits = digits dl
402.97 s
[really-safe-money-gen] - in if wantedDigits <= currentDigits
402.97 s
[really-safe-money-gen] + in if not (wantedDigits <= currentDigits)
402.97 s
[really-safe-money-gen] then dl
402.97 s
[really-safe-money-gen] else increaseDigits (wantedDigits - currentDigits) dl
402.97 s
[really-safe-money-gen] where
403.05 s
[really-safe-money-gen] Testing mutation CondFlip at src/Numeric/DecimalLiteral.hs:368:7-62:
403.05 s
[really-safe-money-gen] @@ -365,7 +365,7 @@
403.05 s
[really-safe-money-gen] setMinimumDigits wantedDigits dl =
403.05 s
[really-safe-money-gen] let currentDigits :: Word8
403.05 s
[really-safe-money-gen] currentDigits = digits dl
403.05 s
[really-safe-money-gen] - in if wantedDigits <= currentDigits
403.05 s
[really-safe-money-gen] + in if wantedDigits <= currentDigits
403.05 s
[really-safe-money-gen] then dl
403.05 s
[really-safe-money-gen] else increaseDigits (wantedDigits - currentDigits) dl
403.05 s
[really-safe-money-gen] where
403.07 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:375:80-82:
403.07 s
[really-safe-money-gen] @@ -372,7 +372,7 @@
403.07 s
[really-safe-money-gen] increaseDigits :: Word8 -> DecimalLiteral -> DecimalLiteral
403.07 s
[really-safe-money-gen] increaseDigits 0 = id
403.07 s
[really-safe-money-gen] increaseDigits w = \case
403.07 s
[really-safe-money-gen] - DecimalLiteral mS m e -> increaseDigits (pred w) (DecimalLiteral mS (m * 10) (succ e))
403.07 s
[really-safe-money-gen] + DecimalLiteral mS m e -> increaseDigits (pred w) (DecimalLiteral mS (m * 0) (succ e))
403.07 s
[really-safe-money-gen]
403.07 s
[really-safe-money-gen] -- | Ensures that a positive literal has no sign
403.07 s
[really-safe-money-gen] --
403.42 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Account.hs:131:20-26:
403.43 s
[really-safe-money-gen] @@ -128,7 +128,7 @@
403.43 s
[really-safe-money-gen] amount :: Amount
403.43 s
[really-safe-money-gen] amount = Amount.fromMinimalQuantisations w
403.43 s
[really-safe-money-gen] in Just $
403.43 s
[really-safe-money-gen] - if i >= 0
403.43 s
[really-safe-money-gen] + if True
403.43 s
[really-safe-money-gen] then Positive amount
403.43 s
[really-safe-money-gen] else Negative amount
403.43 s
[really-safe-money-gen]
403.45 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:375:80-82:
403.45 s
[really-safe-money-gen] @@ -372,7 +372,7 @@
403.45 s
[really-safe-money-gen] increaseDigits :: Word8 -> DecimalLiteral -> DecimalLiteral
403.45 s
[really-safe-money-gen] increaseDigits 0 = id
403.45 s
[really-safe-money-gen] increaseDigits w = \case
403.45 s
[really-safe-money-gen] - DecimalLiteral mS m e -> increaseDigits (pred w) (DecimalLiteral mS (m * 10) (succ e))
403.45 s
[really-safe-money-gen] + DecimalLiteral mS m e -> increaseDigits (pred w) (DecimalLiteral mS (m * 1) (succ e))
403.45 s
[really-safe-money-gen]
403.45 s
[really-safe-money-gen] -- | Ensures that a positive literal has no sign
403.45 s
[really-safe-money-gen] --
403.46 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:337:21-22:
403.46 s
[really-safe-money-gen] @@ -334,7 +334,7 @@
403.46 s
[really-safe-money-gen] pure $ fromIntegral n
403.46 s
[really-safe-money-gen]
403.46 s
[really-safe-money-gen] numSign :: (Ord a, Num a) => a -> Maybe Bool
403.46 s
[really-safe-money-gen] -numSign a = if a >= 0 then Nothing else Just False
403.46 s
[really-safe-money-gen] +numSign a = if a >= 1 then Nothing else Just False
403.46 s
[really-safe-money-gen]
403.46 s
[really-safe-money-gen] signSignum :: (Num a) => Maybe Bool -> (a -> a)
403.46 s
[really-safe-money-gen] signSignum = \case
403.50 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:337:16-22:
403.50 s
[really-safe-money-gen] @@ -334,7 +334,7 @@
403.50 s
[really-safe-money-gen] pure $ fromIntegral n
403.50 s
[really-safe-money-gen]
403.50 s
[really-safe-money-gen] numSign :: (Ord a, Num a) => a -> Maybe Bool
403.50 s
[really-safe-money-gen] -numSign a = if a >= 0 then Nothing else Just False
403.50 s
[really-safe-money-gen] +numSign a = if not (a >= 0) then Nothing else Just False
403.51 s
[really-safe-money-gen]
403.51 s
[really-safe-money-gen] signSignum :: (Num a) => Maybe Bool -> (a -> a)
403.51 s
[really-safe-money-gen] signSignum = \case
403.65 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:337:16-22:
403.65 s
[really-safe-money-gen] @@ -334,7 +334,7 @@
403.65 s
[really-safe-money-gen] pure $ fromIntegral n
403.65 s
[really-safe-money-gen]
403.65 s
[really-safe-money-gen] numSign :: (Ord a, Num a) => a -> Maybe Bool
403.65 s
[really-safe-money-gen] -numSign a = if a >= 0 then Nothing else Just False
403.65 s
[really-safe-money-gen] +numSign a = if False then Nothing else Just False
403.65 s
[really-safe-money-gen]
403.65 s
[really-safe-money-gen] signSignum :: (Num a) => Maybe Bool -> (a -> a)
403.65 s
[really-safe-money-gen] signSignum = \case
403.66 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:337:46-51:
403.66 s
[really-safe-money-gen] @@ -334,7 +334,7 @@
403.66 s
[really-safe-money-gen] T e s tpiunrge m$u tfartoimoInn tCeognrdaFll inp
403.66 s
[really-safe-money-gen] a
403.66 s
[really-safe-money-gen] t nsurmcS/iNgunm e:r:i c(/ODredc iam,a lNLuimt ear)a l=.>h sa: 3-3>7 :M1a3y-b5e1 :B
403.66 s
[really-safe-money-gen] o@o@l
403.66 s
[really-safe-money-gen] --3n3u4m,S7i g+n3 3a4 ,=7 i@f@
403.66 s
[really-safe-money-gen] a > =p u0r et h$e nf rNoomtIhnitnegg realls en
403.66 s
[really-safe-money-gen] J u
403.66 s
[really-safe-money-gen] s tn uFmaSlisgen
403.67 s
[really-safe-money-gen] +:n:u m(SOirgdn aa, =N uimf aa) >==> 0a t-h>e nM aNyobteh iBnogo le
403.67 s
[really-safe-money-gen] l-sneu mJSuisgtn Faa l=s ei
403.67 s
[really-safe-money-gen] f
403.67 s
[really-safe-money-gen] a s>i=g n0S itghneunm N:o:t h(iNnugm eal)s e= >J uMsaty bFea lBsoeo
403.67 s
[really-safe-money-gen] l+ n-u>m S(iag n- >a a=)
403.67 s
[really-safe-money-gen] i fs iag n>S=i g0n utmh e=n \Ncoatshei
403.67 s
[really-safe-money-gen] ng else Just False
403.67 s
[really-safe-money-gen]
403.67 s
[really-safe-money-gen] signSignum :: (Num a) => Maybe Bool -> (a -> a)
403.67 s
[really-safe-money-gen] signSignum = \case
403.69 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:332:11-46:
403.69 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
403.69 s
[really-safe-money-gen] toInt :: DecimalLiteral -> Maybe Int
403.69 s
[really-safe-money-gen] toInt dl = do
403.69 s
[really-safe-money-gen] n <- toInteger dl
403.69 s
[really-safe-money-gen] - guard $ n <= fromIntegral (maxBound :: Int)
403.69 s
[really-safe-money-gen] + guard $ True
403.69 s
[really-safe-money-gen] guard $ n >= fromIntegral (minBound :: Int)
403.70 s
[really-safe-money-gen] pure $ fromIntegral n
403.70 s
[really-safe-money-gen]
403.71 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:337:46-51:
403.71 s
[really-safe-money-gen] @@ -334,7 +334,7 @@
403.71 s
[really-safe-money-gen] pure $ fromIntegral n
403.71 s
[really-safe-money-gen]
403.71 s
[really-safe-money-gen] numSign :: (Ord a, Num a) => a -> Maybe Bool
403.71 s
[really-safe-money-gen] -numSign a = if a >= 0 then Nothing else Just False
403.71 s
[really-safe-money-gen] +numSign a = if a >= 0 then Nothing else Just not (False)
403.72 s
[really-safe-money-gen]
403.72 s
[really-safe-money-gen] signSignum :: (Num a) => Maybe Bool -> (a -> a)
403.72 s
[really-safe-money-gen] signSignum = \case
403.74 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:332:11-46:
403.74 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
403.74 s
[really-safe-money-gen] toInt :: DecimalLiteral -> Maybe Int
403.74 s
[really-safe-money-gen] toInt dl = do
403.74 s
[really-safe-money-gen] n <- toInteger dl
403.74 s
[really-safe-money-gen] - guard $ n <= fromIntegral (maxBound :: Int)
403.74 s
[really-safe-money-gen] + guard $ False
403.74 s
[really-safe-money-gen] guard $ n >= fromIntegral (minBound :: Int)
403.74 s
[really-safe-money-gen] pure $ fromIntegral n
403.74 s
[really-safe-money-gen]
403.78 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:332:11-46:
403.78 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
403.78 s
[really-safe-money-gen] toInt :: DecimalLiteral -> Maybe Int
403.78 s
[really-safe-money-gen] toInt dl = do
403.78 s
[really-safe-money-gen] n <- toInteger dl
403.78 s
[really-safe-money-gen] - guard $ n <= fromIntegral (maxBound :: Int)
403.78 s
[really-safe-money-gen] + guard $ not (n <= fromIntegral (maxBound :: Int))
403.78 s
[really-safe-money-gen] guard $ n >= fromIntegral (minBound :: Int)
403.78 s
[really-safe-money-gen] pure $ fromIntegral n
403.78 s
[really-safe-money-gen]
403.98 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:333:11-46:
403.98 s
[really-safe-money-gen] @@ -330,7 +330,7 @@
403.98 s
[really-safe-money-gen] toInt dl = do
403.98 s
[really-safe-money-gen] n <- toInteger dl
403.98 s
[really-safe-money-gen] guard $ n <= fromIntegral (maxBound :: Int)
403.98 s
[really-safe-money-gen] - guard $ n >= fromIntegral (minBound :: Int)
403.98 s
[really-safe-money-gen] + guard $ True
403.98 s
[really-safe-money-gen] pure $ fromIntegral n
403.98 s
[really-safe-money-gen]
403.98 s
[really-safe-money-gen] numSign :: (Ord a, Num a) => a -> Maybe Bool
404.08 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:333:11-46:
404.08 s
[really-safe-money-gen] @@ -330,7 +330,7 @@
404.08 s
[really-safe-money-gen] toInt dl = do
404.08 s
[really-safe-money-gen] n <- toInteger dl
404.08 s
[really-safe-money-gen] guard $ n <= fromIntegral (maxBound :: Int)
404.08 s
[really-safe-money-gen] - guard $ n >= fromIntegral (minBound :: Int)
404.08 s
[really-safe-money-gen] + guard $ False
404.08 s
[really-safe-money-gen] pure $ fromIntegral n
404.08 s
[really-safe-money-gen]
404.08 s
[really-safe-money-gen] numSign :: (Ord a, Num a) => a -> Maybe Bool
404.11 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:315:67-68:
404.11 s
[really-safe-money-gen] @@ -312,7 +312,7 @@
404.11 s
[really-safe-money-gen]
404.11 s
[really-safe-money-gen] -- | Construct a 'DecimalLiteral' from an 'Integer'
404.11 s
[really-safe-money-gen] fromInteger :: Integer -> DecimalLiteral
404.11 s
[really-safe-money-gen] -fromInteger n = DecimalLiteral (numSign n) (fromIntegral (abs n)) 0
404.11 s
[really-safe-money-gen] +fromInteger n = DecimalLiteral (numSign n) (fromIntegral (abs n)) 1
404.11 s
[really-safe-money-gen]
404.11 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into an 'Integer'
404.11 s
[really-safe-money-gen] toInteger :: DecimalLiteral -> Maybe Integer
404.23 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:333:11-46:
404.23 s
[really-safe-money-gen] @@ -330,7 +330,7 @@
404.23 s
[really-safe-money-gen] toInt dl = do
404.23 s
[really-safe-money-gen] n <- toInteger dl
404.23 s
[really-safe-money-gen] guard $ n <= fromIntegral (maxBound :: Int)
404.23 s
[really-safe-money-gen] - guard $ n >= fromIntegral (minBound :: Int)
404.23 s
[really-safe-money-gen] + guard $ not (n >= fromIntegral (minBound :: Int))
404.23 s
[really-safe-money-gen] pure $ fromIntegral n
404.23 s
[really-safe-money-gen]
404.23 s
[really-safe-money-gen] numSign :: (Ord a, Num a) => a -> Maybe Bool
404.33 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:337:16-22:
404.33 s
[really-safe-money-gen] @@ -334,7 +334,7 @@
404.33 s
[really-safe-money-gen] pure $ fromIntegral n
404.33 s
[really-safe-money-gen]
404.33 s
[really-safe-money-gen] numSign :: (Ord a, Num a) => a -> Maybe Bool
404.33 s
[really-safe-money-gen] -numSign a = if a >= 0 then Nothing else Just False
404.33 s
[really-safe-money-gen] +numSign a = if True then Nothing else Just False
404.33 s
[really-safe-money-gen]
404.33 s
[really-safe-money-gen] signSignum :: (Num a) => Maybe Bool -> (a -> a)
404.33 s
[really-safe-money-gen] signSignum = \case
404.37 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:337:46-51:
404.37 s
[really-safe-money-gen] @@ -334,7 +334,7 @@
404.37 s
[really-safe-money-gen] pure $ fromIntegral n
404.37 s
[really-safe-money-gen]
404.37 s
[really-safe-money-gen] numSign :: (Ord a, Num a) => a -> Maybe Bool
404.37 s
[really-safe-money-gen] -numSign a = if a >= 0 then Nothing else Just False
404.37 s
[really-safe-money-gen] +numSign a = if a >= 0 then Nothing else Just True
404.37 s
[really-safe-money-gen]
404.37 s
[really-safe-money-gen] signSignum :: (Num a) => Maybe Bool -> (a -> a)
404.37 s
[really-safe-money-gen] signSignum = \case
404.40 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:304:42-43:
404.40 s
[really-safe-money-gen] @@ -301,7 +301,7 @@
404.40 s
[really-safe-money-gen]
404.40 s
[really-safe-money-gen] -- | Construct a 'DecimalLiteral' from a 'Natural'
404.40 s
[really-safe-money-gen] fromNatural :: Natural -> DecimalLiteral
404.40 s
[really-safe-money-gen] -fromNatural n = DecimalLiteral Nothing n 0
404.40 s
[really-safe-money-gen] +fromNatural n = DecimalLiteral Nothing n 1
404.40 s
[really-safe-money-gen]
404.40 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Natural'
404.40 s
[really-safe-money-gen] toNatural :: DecimalLiteral -> Maybe Natural
404.47 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:299:11-47:
404.47 s
[really-safe-money-gen] @@ -296,7 +296,7 @@
404.47 s
[really-safe-money-gen] toWord :: DecimalLiteral -> Maybe Word
404.47 s
[really-safe-money-gen] toWord dl = do
404.47 s
[really-safe-money-gen] n <- toNatural dl
404.47 s
[really-safe-money-gen] - guard $ n <= fromIntegral (maxBound :: Word)
404.47 s
[really-safe-money-gen] + guard $ True
404.48 s
[really-safe-money-gen] pure $ fromIntegral n
404.48 s
[really-safe-money-gen]
404.48 s
[really-safe-money-gen] -- | Construct a 'DecimalLiteral' from a 'Natural'
404.50 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:299:11-47:
404.50 s
[really-safe-money-gen] @@ -296,7 +296,7 @@
404.50 s
[really-safe-money-gen] toWord :: DecimalLiteral -> Maybe Word
404.50 s
[really-safe-money-gen] toWord dl = do
404.50 s
[really-safe-money-gen] n <- toNatural dl
404.50 s
[really-safe-money-gen] - guard $ n <= fromIntegral (maxBounTde s:t:i nWgo rmdu)t
404.50 s
[really-safe-money-gen] a+t i ognu aNredg a$t eF aalts es
404.50 s
[really-safe-money-gen] r c / Npuumreer i$c /fDreocmiImnatleLgirtaelr anl
404.50 s
[really-safe-money-gen] . h
404.50 s
[really-safe-money-gen] s :-2-9 9|: 1C1o-n4s7t:r
404.50 s
[really-safe-money-gen] u@c@t -a2 9'6D,e7c i+m2a9l6L,i7t e@r@a
404.51 s
[really-safe-money-gen] l 't ofWroormd a: :' NDaetcuirmaall'L
404.51 s
[really-safe-money-gen] iteral -> Maybe Word
404.51 s
[really-safe-money-gen] toWord dl = do
404.51 s
[really-safe-money-gen] n <- toNatural dl
404.51 s
[really-safe-money-gen] - guard $ n <= fromIntegral (maxBound :: Word)
404.51 s
[really-safe-money-gen] + guard $ not (n <= fromIntegral (maxBound :: Word))
404.51 s
[really-safe-money-gen] pure $ fromIntegral n
404.51 s
[really-safe-money-gen]
404.51 s
[really-safe-money-gen] -- | Construct a 'DecimalLiteral' from a 'Natural'
404.51 s
[really-safe-money-gen] y/QuantisationFactor.hs:93:16-17:
404.51 s
[really-safe-money-gen] @@ -90,7 +90,7 @@
404.51 s
[really-safe-money-gen]
404.51 s
[really-safe-money-gen] rat <-
404.51 s
[really-safe-money-gen] let r = 1 / irat
404.51 s
[really-safe-money-gen] - in if r < 0
404.51 s
[really-safe-money-gen] + in if r < 1
404.51 s
[really-safe-money-gen] then Nothing
404.51 s
[really-safe-money-gen] else Just r
404.51 s
[really-safe-money-gen]
404.51 s
[really-safe-money-gen] Covering tests:
404.52 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.DecimalLiteral.fromDecimalLiteral.fails to render a non-1 integer
404.52 s
[really-safe-money-gen]
404.52 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAccount.hs:69:13-30:
404.52 s
[really-safe-money-gen] @@ -66,7 +66,7 @@
404.52 s
[really-safe-money-gen] [ genericValidate ma,
404.52 s
[really-safe-money-gen] decorateMap m $ \_ a ->
404.52 s
[really-safe-money-gen] declare "The account is not zero" $
404.52 s
[really-safe-money-gen] - a /= Account.zero
404.52 s
[really-safe-money-gen] + True
404.52 s
[really-safe-money-gen] ]
404.52 s
[really-safe-money-gen]
404.52 s
[really-safe-money-gen] -- TODO no empty currencies
404.52 s
[really-safe-money-gen] Covering tests:
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.GenValid (MultiAccount Currency).genValid \:\: Gen (MultiAccount Currency).only generates valid '(MultiAccount Currency)'s
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.add.produces valid amounts
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAccount.produces valid amounts
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAmount.produces valid amounts
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.fromAccount.produces valid amounts
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtract.produces valid amounts
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAccount.produces valid amounts
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAmount.produces valid amounts
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.sum.produces valid amounts
404.52 s
[really-safe-money-gen]
404.52 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/MultiAccount.hs:69:13-30:
404.52 s
[really-safe-money-gen] @@ -66,7 +66,7 @@
404.52 s
[really-safe-money-gen] [ genericValidate ma,
404.52 s
[really-safe-money-gen] decorateMap m $ \_ a ->
404.52 s
[really-safe-money-gen] declare "The account is not zero" $
404.52 s
[really-safe-money-gen] - a /= Account.zero
404.52 s
[really-safe-money-gen] + False
404.52 s
[really-safe-money-gen] ]
404.52 s
[really-safe-money-gen]
404.52 s
[really-safe-money-gen] -- TODO no empty currencies
404.52 s
[really-safe-money-gen] Covering tests:
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.GenValid (MultiAccount Currency).genValid \:\: Gen (MultiAccount Currency).only generates valid '(MultiAccount Currency)'s
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.add.produces valid amounts
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAccount.produces valid amounts
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAmount.produces valid amounts
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.fromAccount.produces valid amounts
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtract.produces valid amounts
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAccount.produces valid amounts
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAmount.produces valid amounts
404.52 s
[really-safe-money-gen] Money\.MultiAccountSpec.sum.produces valid amounts
404.52 s
[really-safe-money-gen]
404.52 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/QuantisationFactor.hs:98:27-28:
404.52 s
[really-safe-money-gen] @@ -95,7 +95,7 @@
404.52 s
[really-safe-money-gen] else Just r
404.52 s
[really-safe-money-gen]
404.52 s
[really-safe-money-gen] fac <-
404.52 s
[really-safe-money-gen] - if denominator rat == 1
404.52 s
[really-safe-money-gen] + if denominator rat == 0
404.52 s
[really-safe-money-gen] then Just (numerator rat)
404.52 s
[really-safe-money-gen] else Nothing
404.52 s
[really-safe-money-gen]
404.52 s
[really-safe-money-gen] Covering tests:
404.52 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.DecimalLiteral.fromDecimalLiteral.fails to render a non-1 integer
404.52 s
[really-safe-money-gen]
404.52 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/QuantisationFactor.hs:98:27-28:
404.52 s
[really-safe-money-gen] @@ -95,7 +95,7 @@
404.52 s
[really-safe-money-gen] else Just r
404.52 s
[really-safe-money-gen]
404.53 s
[really-safe-money-gen] fac <-
404.53 s
[really-safe-money-gen] - if denominator rat == 1
404.53 s
[really-safe-money-gen] + if denominator rat == -1
404.53 s
[really-safe-money-gen] then Just (numerator rat)
404.53 s
[really-safe-money-gen] else Nothing
404.53 s
[really-safe-money-gen]
404.53 s
[really-safe-money-gen] Covering tests:
404.53 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.DecimalLiteral.fromDecimalLiteral.fails to render a non-1 integer
404.53 s
[really-safe-money-gen]
404.53 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Account.hs:495:17-18:
404.53 s
[really-safe-money-gen] @@ -492,7 +492,7 @@
404.53 s
[really-safe-money-gen] fraction rounding account f =
404.53 s
[really-safe-money-gen] let af = (realToFrac :: Rational -> Ratio Natural) ((Prelude.abs :: Rational -> Rational) f)
404.53 s
[really-safe-money-gen] ro =
404.53 s
[really-safe-money-gen] - if f >= 0
404.53 s
[really-safe-money-gen] + if f >= 1
404.53 s
[really-safe-money-gen] then rounding
404.53 s
[really-safe-money-gen] else case rounding of
404.53 s
[really-safe-money-gen] RoundUp -> RoundDown
404.53 s
[really-safe-money-gen] Covering tests:
404.53 s
[really-safe-money-gen] Money\.AccountSpec.fraction.Correctly fractions 101 with 1 % 100
404.53 s
[really-safe-money-gen]
404.53 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Account.hs:197:19-20:
404.53 s
[really-safe-money-gen] @@ -194,7 +194,7 @@
404.53 s
[really-safe-money-gen] fromDouble :: QuantisationFactor -> Double -> Maybe Account
404.53 s
[really-safe-money-gen] fromDouble quantisationFactor d =
404.53 s
[really-safe-money-gen] let d' = Prelude.abs d
404.53 s
[really-safe-money-gen] - f = if d >= 0 then Positive else Negative
404.53 s
[really-safe-money-gen] + f = if d >= 1 then Positive else Negative
404.53 s
[really-safe-money-gen] in f <$> Amount.fromDouble quantisationFactor d'
404.53 s
[really-safe-money-gen]
404.53 s
[really-safe-money-gen] -- | Turn an amount of money into a 'Rational'.
404.53 s
[really-safe-money-gen] Covering tests:
404.53 s
[really-safe-money-gen] Money\.AccountSpec.fromDouble.produces valid rational
404.53 s
[really-safe-money-gen]
404.53 s
[really-safe-money-gen] Testing mutation IntLit at src/Money/Account.hs:131:25-26:
404.53 s
[really-safe-money-gen] @@ -128,7 +128,7 @@
404.53 s
[really-safe-money-gen] amount :: Amount
404.53 s
[really-safe-money-gen] amount = Amount.fromMinimalQuantisations w
404.53 s
[really-safe-money-gen] in Just $
404.53 s
[really-safe-money-gen] - if i >= 0
404.53 s
[really-safe-money-gen] + if i >= 1
404.53 s
[really-safe-money-gen] then Positive amount
404.53 s
[really-safe-money-gen] else Negative amount
404.53 s
[really-safe-money-gen]
404.53 s
[really-safe-money-gen] Covering tests:
404.53 s
[really-safe-money-gen] Money\.AccountSpec.distribute.produces results that sum up to the greater whole
404.53 s
[really-safe-money-gen]
404.53 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:396:23-27:
404.53 s
[really-safe-money-gen] @@ -393,5 +393,5 @@
404.53 s
[really-safe-money-gen] DecimalLiteral mS m e -> DecimalLiteral (go mS) m e
404.53 s
[really-safe-money-gen] where
404.53 s
[really-safe-money-gen] go = \case
404.53 s
[really-safe-money-gen] - Nothing -> Just True
404.53 s
[really-safe-money-gen] + Nothing -> Just not (True)
404.53 s
[really-safe-money-gen] s -> s
404.53 s
[really-safe-money-gen] Covering tests:
404.53 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.setSignRequired.produces valid values
404.53 s
[really-safe-money-gen]
404.53 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:396:23-27:
404.53 s
[really-safe-money-gen] @@ -393,5 +393,5 @@
404.53 s
[really-safe-money-gen] DecimalLiteral mS m e -> DecimalLiteral (go mS) m e
404.53 s
[really-safe-money-gen] where
404.53 s
[really-safe-money-gen] go = \case
404.53 s
[really-safe-money-gen] - Nothing -> Just True
404.53 s
[really-safe-money-gen] + Nothing -> Just True
404.53 s
[really-safe-money-gen] s -> s
404.53 s
[really-safe-money-gen] Covering tests:
404.53 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.setSignRequired.produces valid values
404.53 s
[really-safe-money-gen]
404.53 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:332:11-46:
404.53 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
404.54 s
[really-safe-money-gen] toInt :: DecimalLiteral -> Maybe Int
404.54 s
[really-safe-money-gen] toInt dl = do
404.54 s
[really-safe-money-gen] n <- toInteger dl
404.54 s
[really-safe-money-gen] - guard $ n <= fromIntegral (maxBound :: Int)
404.54 s
[really-safe-money-gen] + guard $ False
404.54 s
[really-safe-money-gen] guard $ n >= fromIntegral (minBound :: Int)
404.54 s
[really-safe-money-gen] pure $ fromIntegral n
404.54 s
[really-safe-money-gen]
404.54 s
[really-safe-money-gen] Covering tests:
404.54 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Int.fromInt.can parse any rendered literal
404.54 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Int.toInt.renders to valid words
404.54 s
[really-safe-money-gen]
404.54 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/QuantisationFactor.hs:40:57-63:
404.54 s
[really-safe-money-gen] @@ -37,7 +37,7 @@
404.54 s
[really-safe-money-gen] validate qf@(QuantisationFactor w) =
404.54 s
[really-safe-money-gen] mconcat
404.54 s
[really-safe-money-gen] [ genericValidate qf,
404.54 s
[really-safe-money-gen] - declare "The quantisation factor is not zero" $ w /= 0
404.54 s
[really-safe-money-gen] + declare "The quantisation factor is not zero" $ True
404.54 s
[really-safe-money-gen] ]
404.54 s
[really-safe-money-gen]
404.54 s
[really-safe-money-gen] instance NFData QuantisationFactor
404.54 s
[really-safe-money-gen] Covering tests:
404.54 s
[really-safe-money-gen] Money\.MultiAccountSpec.GenValid (MultiAccount Currency).genValid \:\: Gen (MultiAccount Currency).only generates valid '(MultiAccount Currency)'s
404.54 s
[really-safe-money-gen] Money\.MultiAccountSpec.add.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAccount.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAmount.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.MultiAccountSpec.fromAccount.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtract.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAccount.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAmount.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.MultiAccountSpec.sum.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.MultiAmountSpec.GenValid (MultiAmount Currency).genValid \:\: Gen (MultiAmount Currency).only generates valid '(MultiAmount Currency)'s
404.54 s
[really-safe-money-gen] Money\.MultiAmountSpec.add.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.MultiAmountSpec.addAmount.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.MultiAmountSpec.fromAmount.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtract.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.MultiAmountSpec.sum.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.DecimalLiteral.fromDecimalLiteral.produces valid factors
404.54 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.GenValid QuantisationFactor.genValid \:\: Gen QuantisationFactor.only generates valid 'QuantisationFactor's
404.54 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.fromWord32.produces valid quantisation factors
404.54 s
[really-safe-money-gen]
404.54 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:396:23-27:
404.54 s
[really-safe-money-gen] @@ -393,5 +393,5 @@
404.54 s
[really-safe-money-gen] DecimalLiteral mS m e -> DecimalLiteral (go mS) m e
404.54 s
[really-safe-money-gen] where
404.54 s
[really-safe-money-gen] go = \case
404.54 s
[really-safe-money-gen] - Nothing -> Just True
404.54 s
[really-safe-money-gen] + Nothing -> Just False
404.54 s
[really-safe-money-gen] s -> s
404.54 s
[really-safe-money-gen] Covering tests:
404.54 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.setSignRequired.produces valid values
404.54 s
[really-safe-money-gen]
404.54 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/QuantisationFactor.hs:39:7-8:
404.54 s
[really-safe-money-gen] @@ -36,7 +36,7 @@
404.54 s
[really-safe-money-gen] instance Validity QuantisationFactor where
404.54 s
[really-safe-money-gen] validate qf@(QuantisationFactor w) =
404.54 s
[really-safe-money-gen] mconcat
404.54 s
[really-safe-money-gen] - [ genericValidate qf,
404.54 s
[really-safe-money-gen] + [ genericValidate qf,
404.54 s
[really-safe-money-gen] declare "The quantisation factor is not zero" $ w /= 0
404.54 s
[really-safe-money-gen] ]
404.54 s
[really-safe-money-gen]
404.54 s
[really-safe-money-gen] Covering tests:
404.54 s
[really-safe-money-gen] Money\.MultiAccountSpec.GenValid (MultiAccount Currency).genValid \:\: Gen (MultiAccount Currency).only generates valid '(MultiAccount Currency)'s
404.54 s
[really-safe-money-gen] Money\.MultiAccountSpec.add.produces valid amounts
404.54 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAccount.produces valid amounts
404.55 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAmount.produces valid amounts
404.55 s
[really-safe-money-gen] Money\.MultiAccountSpec.fromAccount.produces valid amounts
404.55 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtract.produces valid amounts
404.55 s
[really-safe-money-gen] Money\.MultiAccountSpec.suTesting mutation IntLit at src/Numeric/DecimalLiteral.hs:289:33-35:
404.55 s
[really-safe-money-gen] @@ -286,7 +286,7 @@
404.55 s
[really-safe-money-gen] toRatio :: DecimalLiteral -> Maybe (Ratio Natural)
404.55 s
[really-safe-money-gen] toRatio (DecimalLiteral mSign m e) = case mSign of
404.55 s
[really-safe-money-gen] Just False -> Nothing
404.55 s
[really-safe-money-gen] - _ -> Just $ fromIntegral m / (10 ^ e)
404.55 s
[really-safe-money-gen] + _ -> Just $ fromIntegral m / (0 ^ e)
404.55 s
[really-safe-money-gen]
404.55 s
[really-safe-money-gen] -- | Construct a 'DecimalLiteral' from a 'Word'
404.55 s
[really-safe-money-gen] fromWord :: Word -> DecimalLiteral
404.63 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:289:33-35:
404.63 s
[really-safe-money-gen] @@ -286,7 +286,7 @@
404.63 s
[really-safe-money-gen] toRatio :: DecimalLiteral -> Maybe (Ratio Natural)
404.63 s
[really-safe-money-gen] toRatio (DecimalLiteral mSign m e) = case mSign of
404.63 s
[really-safe-money-gen] Just False -> Nothing
404.63 s
[really-safe-money-gen] - _ -> Just $ fromIntegral m / (10 ^ e)
404.63 s
[really-safe-money-gen] + _ -> Just $ fromIntegral m / (-10 ^ e)
404.63 s
[really-safe-money-gen]
404.63 s
[really-safe-money-gen] -- | Construct a 'DecimalLiteral' from a 'Word'
404.64 s
[really-safe-money-gen] fromWord :: Word -> DecimalLiteral
404.67 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:289:33-35:
404.67 s
[really-safe-money-gen] @@ -286,7 +286,7 @@
404.67 s
[really-safe-money-gen] toRatio :: DecimalLiteral -> Maybe (Ratio Natural)
404.67 s
[really-safe-money-gen] toRatio (DecimalLiteral mSign m e) = case mSign of
404.67 s
[really-safe-money-gen] Just False -> Nothing
404.67 s
[really-safe-money-gen] - _ -> Just $ fromIntegral m / (10 ^ e)
404.67 s
[really-safe-money-gen] + _ -> Just $ fromIntegral m / (1 ^ e)
404.67 s
[really-safe-money-gen]
404.67 s
[really-safe-money-gen] -- | Construct a 'DecimalLiteral' from a 'Word'
404.67 s
[really-safe-money-gen] fromWord :: Word -> DecimalLiteral
404.70 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:236:41-44:
404.70 s
[really-safe-money-gen] @@ -233,7 +233,7 @@
404.70 s
[really-safe-money-gen] -- >>> fromRatio (1 % 3)
404.70 s
[really-safe-money-gen] -- Nothing
404.70 s
[really-safe-money-gen] fromRatio :: Ratio Natural -> Maybe DecimalLiteral
404.70 s
[really-safe-money-gen] -fromRatio = fromRationalRepetendLimited 256
404.70 s
[really-safe-money-gen] +fromRatio = fromRationalRepetendLimited 0
404.70 s
[really-safe-money-gen] where
404.70 s
[really-safe-money-gen] fromRationalRepetendLimited ::
404.70 s
[really-safe-money-gen] -- limit
404.82 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:236:41-44:
404.82 s
[really-safe-money-gen] @@ -233,7 +233,7 @@
404.82 s
[really-safe-money-gen] -- >>> fromRatio (1 % 3)
404.82 s
[really-safe-money-gen] -- Nothing
404.82 s
[really-safe-money-gen] fromRatio :: Ratio Natural -> Maybe DecimalLiteral
404.82 s
[really-safe-money-gen] -fromRatio = fromRationalRepetendLimited 256
404.82 s
[really-safe-money-gen] +fromRatio = fromRationalRepetendLimited 1
404.82 s
[really-safe-money-gen] where
404.82 s
[really-safe-money-gen] fromRationalRepetendLimited ::
404.82 s
[really-safe-money-gen] -- limit
404.95 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:236:41-44:
404.95 s
[really-safe-money-gen] @@ -233,7 +233,7 @@
404.95 s
[really-safe-money-gen] -- >>> fromRatio (1 % 3)
404.96 s
[really-safe-money-gen] -- Nothing
404.96 s
[really-safe-money-gen] fromRatio :: Ratio Natural -> Maybe DecimalLiteral
404.96 s
[really-safe-money-gen] -fromRatio = fromRationalRepetendLimited 256
404.96 s
[really-safe-money-gen] +fromRatio = fromRationalRepetendLimited -256
404.96 s
[really-safe-money-gen] where
404.96 s
[really-safe-money-gen] fromRationalRepetendLimited ::
404.96 s
[really-safe-money-gen] -- limit
405.03 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:244:14-15:
405.03 s
[really-safe-money-gen] @@ -241,7 +241,7 @@
405.03 s
[really-safe-money-gen] Ratio Natural ->
405.03 s
[really-safe-money-gen] Maybe DecimalLiteral
405.03 s
[really-safe-money-gen] fromRationalRepetendLimited l rational
405.03 s
[really-safe-money-gen] - | d == 0 = Nothing
405.03 s
[really-safe-money-gen] + | d == 1 = Nothing
405.03 s
[really-safe-money-gen] | otherwise = toLiteral Nothing <$> longDiv num
405.03 s
[really-safe-money-gen] where
405.03 s
[really-safe-money-gen] toLiteral mSign (m, e) = DecimalLiteral mSign m (fromIntegral e)
405.24 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:244:9-15:
405.24 s
[really-safe-money-gen] @@ -241,7 +241,7 @@
405.24 s
[really-safe-money-gen] Ratio Natural ->
405.24 s
[really-safe-money-gen] Maybe DecimalLiteral
405.24 s
[really-safe-money-gen] fromRationalRepetendLimited l rational
405.24 s
[really-safe-money-gen] - | d == 0 = Nothing
405.24 s
[really-safe-money-gen] + | False = Nothing
405.24 s
[really-safe-money-gen] | otherwise = toLiteral Nothing <$> longDiv num
405.24 s
[really-safe-money-gen] where
405.24 s
[really-safe-money-gen] toLiteral mSign (m, e) = DecimalLiteral mSign m (fromIntegral e)
405.33 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:244:9-15:
405.33 s
[really-safe-money-gen] @@ -241,7 +241,7 @@
405.33 s
[really-safe-money-gen] Ratio Natural ->
405.33 s
[really-safe-money-gen] Maybe DecimalLiteral
405.33 s
[really-safe-money-gen] fromRationalRepetendLimited l rational
405.33 s
[really-safe-money-gen] - | d == 0 = Nothing
405.33 s
[really-safe-money-gen] + | True = Nothing
405.33 s
[really-safe-money-gen] | otherwise = toLiteral Nothing <$> longDiv num
405.33 s
[really-safe-money-gen] where
405.33 s
[really-safe-money-gen] toLiteral mSign (m, e) = DecimalLiteral mSign m (fromIntegral e)
405.33 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:245:9-18:
405.33 s
[really-safe-money-gen] @@ -242,7 +242,7 @@
405.33 s
[really-safe-money-gen] Maybe DecimalLiteral
405.33 s
[really-safe-money-gen] fromRationalRepetendLimited l rational
405.34 s
[really-safe-money-gen] | d == 0 = Nothing
405.34 s
[really-safe-money-gen] - | otherwise = toLiteral Nothing <$> longDiv num
405.34 s
[really-safe-money-gen] + | True = toLiteral Nothing <$> longDiv num
405.34 s
[really-safe-money-gen] where
405.34 s
[really-safe-money-gen] toLiteral mSign (m, e) = DecimalLiteral mSign m (fromIntegral e)
405.34 s
[really-safe-money-gen] d = denominator rational
405.37 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:245:9-18:
405.37 s
[really-safe-money-gen] @@ -242,7 +242,7 @@
405.37 s
[really-safe-money-gen] Maybe DecimalLiteral
405.37 s
[really-safe-money-gen] fromRationalRepetendLimited l rational
405.37 s
[really-safe-money-gen] | d == 0 = Nothing
405.37 s
[really-safe-money-gen] - | otherwise = toLiteral Nothing <$> longDiv num
405.37 s
[really-safe-money-gen] + | False = toLiteral Nothing <$> longDiv num
405.38 s
[really-safe-money-gen] where
405.38 s
[really-safe-money-gen] toLiteral mSign (m, e) = DecimalLiteral mSign m (fromIntegral e)
405.38 s
[really-safe-money-gen] d = denominator rational
405.41 s
[really-safe-money-gen] TestingT emsuttiantgi omnu tCaotnisotnB oNoelg aatte sartc /sNrucm/eNruimce/rDiecc/iDmeacliLmiatleLriatle.rhasl:.2h6s4::21634-:2163:-
405.41 s
[really-safe-money-gen] 2@6@:
405.41 s
[really-safe-money-gen] -@2@6 1-,276 1+,276 1+,276 1@,@7
405.41 s
[really-safe-money-gen] @ @
405.42 s
[really-safe-money-gen] J u s tJ u(sct, (ec),
405.42 s
[really-safe-money-gen] e )
405.42 s
[really-safe-money-gen] l o n glDoinvgWDiitvhWLiitmhiLti m!ict !!ec n!se !nns
405.42 s
[really-safe-money-gen] ! n
405.42 s
[really-safe-money-gen] - - I-f- tIhfe rteh'esr ea' sr eap erteepnedt,e nwde, cwaen 'cta nt'utr nt uirtn iintt oi nat od eac idmeacli mlailt elriatle
405.42 s
[really-safe-money-gen] r-a l
405.42 s
[really-safe-money-gen] - | S .|m eSm.bmeerm bne rn sn =n sN o=t hNiontgh
405.42 s
[really-safe-money-gen] i+n g
405.42 s
[really-safe-money-gen] + | T r|u en o=t N(oSt.hmienmgb
405.42 s
[really-safe-money-gen] e r n n s ) = N-o-t hOivnegr
405.42 s
[really-safe-money-gen] t h e l i m i t , -s-t oOpv etrr ytihneg
405.42 s
[really-safe-money-gen] l i m i t , s t o p |t rey i>n=g
405.42 s
[really-safe-money-gen] l = N o t h i n g
405.42 s
[really-safe-money-gen] | e > = l = N|o tnh i<n gd
405.42 s
[really-safe-money-gen] =
405.43 s
[really-safe-money-gen] | n < d =
405.43 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:264:13-26:
405.43 s
[really-safe-money-gen] @@ -261,7 +261,7 @@
405.43 s
[really-safe-money-gen] Just (c, e)
405.43 s
[really-safe-money-gen] longDivWithLimit !c !e ns !n
405.43 s
[really-safe-money-gen] -- If there's a repetend, we can't turn it into a decimal literal
405.43 s
[really-safe-money-gen] - | S.member n ns = Nothing
405.43 s
[really-safe-money-gen] + | False = Nothing
405.43 s
[really-safe-money-gen] -- Over the limit, stop trying
405.43 s
[really-safe-money-gen] | e >= l = Nothing
405.43 s
[really-safe-money-gen] | n < d =
405.45 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:244:9-15:
405.45 s
[really-safe-money-gen] @@ -241,7 +241,7 @@
405.45 s
[really-safe-money-gen] Ratio Natural ->
405.45 s
[really-safe-money-gen] Maybe DecimalLiteral
405.45 s
[really-safe-money-gen] fromRationalRepetendLimited l rational
405.45 s
[really-safe-money-gen] - | d == 0 = Nothing
405.45 s
[really-safe-money-gen] + | not (d == 0) = Nothing
405.45 s
[really-safe-money-gen] | otherwise = toLiteral Nothing <$> longDiv num
405.45 s
[really-safe-money-gen] where
405.45 s
[really-safe-money-gen] toLiteral mSign (m, e) = DecimalLiteral mSign m (fromIntegral e)
405.51 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:245:9-18:
405.51 s
[really-safe-money-gen] @@ -242,7 +242,7 @@
405.51 s
[really-safe-money-gen] Maybe DecimalLiteral
405.51 s
[really-safe-money-gen] fromRationalRepetendLimited l rational
405.51 s
[really-safe-money-gen] | d == 0 = Nothing
405.51 s
[really-safe-money-gen] - | otherwise = toLiteral Nothing <$> longDiv num
405.51 s
[really-safe-money-gen] + | not (otherwise) = toLiteral Nothing <$> longDiv num
405.51 s
[really-safe-money-gen] where
405.51 s
[really-safe-money-gen] toLiteral mSign (m, e) = DecimalLiteral mSign m (fromIntegral e)
405.51 s
[really-safe-money-gen] d = denominator rational
405.61 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:266:13-19:
405.61 s
[really-safe-money-gen] @@ -263,7 +263,7 @@
405.61 s
[really-safe-money-gen] -- If there's a repetend, we can't turn it into a decimal literal
405.62 s
[really-safe-money-gen] | S.member n ns = Nothing
405.62 s
[really-safe-money-gen] -- Over the limit, stop trying
405.62 s
[really-safe-money-gen] - | e >= l = Nothing
405.62 s
[really-safe-money-gen] + | False = Nothing
405.62 s
[really-safe-money-gen] | n < d =
405.62 s
[really-safe-money-gen] let !ns' = S.insert n ns
405.62 s
[really-safe-money-gen] in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
405.66 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:266:13-19:
405.66 s
[really-safe-money-gen] @@ -263,7 +263,7 @@
405.66 s
[really-safe-money-gen] -- If there's a repetend, we can't turn it into a decimal literal
405.66 s
[really-safe-money-gen] | S.member n ns = Nothing
405.66 s
[really-safe-money-gen] -- Over the limit, stop trying
405.66 s
[really-safe-money-gen] - | e >= l = Nothing
405.66 s
[really-safe-money-gen] + | True = Nothing
405.66 s
[really-safe-money-gen] | n < d =
405.66 s
[really-safe-money-gen] let !ns' = S.insert n ns
405.66 s
[really-safe-money-gen] in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
405.71 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:266:13-19:
405.86 s
[really-safe-money-gen] @@ -263,7 +263,7 @@
405.86 s
[really-safe-money-gen] -- If there's a repetend, we can't turn it into a decimal literal
405.86 s
[really-safe-money-gen] | S.member n ns = Nothing
405.86 s
[really-safe-money-gen] -- Over the limit, stop trying
405.86 s
[really-safe-money-gen] - | e >= l = Nothing
405.86 s
[really-safe-money-gen] + | not (e >= l) = Nothing
405.86 s
[really-safe-money-gen] | n < d =
405.86 s
[really-safe-money-gen] let !ns' = S.insert n ns
405.86 s
[really-safe-money-gen] in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
405.86 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:267:13-18:
405.86 s
[really-safe-money-gen] @@ -264,7 +264,7 @@
405.86 s
[really-safe-money-gen] | S.member n ns = Nothing
405.86 s
[really-safe-money-gen] -- Over the limit, stop trying
405.86 s
[really-safe-money-gen] | e >= l = Nothing
405.86 s
[really-safe-money-gen] - | n < d =
405.86 s
[really-safe-money-gen] + | True =
405.86 s
[really-safe-money-gen] let !ns' = S.insert n ns
405.86 s
[really-safe-money-gen] in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
405.86 s
[really-safe-money-gen] | otherwise =
405.90 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:267:13-18:
405.90 s
[really-safe-money-gen] @@ -264,7 +264,7 @@
405.90 s
[really-safe-money-gen] | S.member n ns = Nothing
405.90 s
[really-safe-money-gen] -- Over the limit, stop trying
405.90 s
[really-safe-money-gen] | e >= l = Nothing
405.90 s
[really-safe-money-gen] - | n < d =
405.90 s
[really-safe-money-gen] + | False =
405.90 s
[really-safe-money-gen] let !ns' = S.insert n ns
405.90 s
[really-safe-money-gen] in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
405.90 s
[really-safe-money-gen] | otherwise =
406.01 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:269:41-43:
406.01 s
[really-safe-money-gen] @@ -266,7 +266,7 @@
406.01 s
[really-safe-money-gen] | e >= l = Nothing
406.01 s
[really-safe-money-gen] | n < d =
406.01 s
[really-safe-money-gen] let !ns' = S.insert n ns
406.01 s
[really-safe-money-gen] - in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
406.01 s
[really-safe-money-gen] + in longDivWithLimit (c * 1) (succ e) ns' (n * 10)
406.01 s
[really-safe-money-gen] | otherwise =
406.01 s
[really-safe-money-gen] let (q, r') = n `quotRem` d
406.01 s
[really-safe-money-gen] in longDivWithLimit (c + q) e ns r'
406.04 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:267:13-18:
406.04 s
[really-safe-money-gen] @@ -264,7 +264,7 @@
406.04 s
[really-safe-money-gen] | S.member n ns = Nothing
406.04 s
[really-safe-money-gen] -- Over the limit, stop trying
406.04 s
[really-safe-money-gen] | e >= l = Nothing
406.04 s
[really-safe-money-gen] - | n < d =
406.04 s
[really-safe-money-gen] + | not (n < d) =
406.05 s
[really-safe-money-gen] let !ns' = S.insert n ns
406.05 s
[really-safe-money-gen] in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
406.05 s
[really-safe-money-gen] | otherwise =
406.05 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:269:41-43:
406.05 s
[really-safe-money-gen] @@ -266,7 +266,7 @@
406.05 s
[really-safe-money-gen] | e >= l = Nothing
406.05 s
[really-safe-money-gen] | n < d =
406.05 s
[really-safe-money-gen] let !ns' = S.insert n ns
406.05 s
[really-safe-money-gen] - in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
406.05 s
[really-safe-money-gen] + in longDivWithLimit (c * 0) (succ e) ns' (n * 10)
406.05 s
[really-safe-money-gen] | otherwise =
406.05 s
[really-safe-money-gen] let (q, r') = n `quotRem` d
406.05 s
[really-safe-money-gen] in longDivWithLimit (c + q) e ns r'
406.06 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:269:63-65:
406.06 s
[really-safe-money-gen] @@ -266,7 +266,7 @@
406.06 s
[really-safe-money-gen] | e >= l = Nothing
406.06 s
[really-safe-money-gen] | n < d =
406.06 s
[really-safe-money-gen] let !ns' = S.insert n ns
406.06 s
[really-safe-money-gen] - in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
406.06 s
[really-safe-money-gen] + in longDivWithLimit (c * 10) (succ e) ns' (n * 0)
406.06 s
[really-safe-money-gen] | otherwise =
406.06 s
[really-safe-money-gen] let (q, r') = n `quotRem` d
406.06 s
[really-safe-money-gen] in longDivWithLimit (c + q) e ns r'
406.22 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:270:13-22:
406.22 s
[really-safe-money-gen] @@ -267,7 +267,7 @@
406.22 s
[really-safe-money-gen] | n < d =
406.22 s
[really-safe-money-gen] let !ns' = S.insert n ns
406.22 s
[really-safe-money-gen] in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
406.22 s
[really-safe-money-gen] - | otherwise =
406.22 s
[really-safe-money-gen] + | True =
406.22 s
[really-safe-money-gen] let (q, r') = n `quotRem` d
406.22 s
[really-safe-money-gen] in longDivWithLimit (c + q) e ns r'
406.22 s
[really-safe-money-gen]
406.25 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:269:63-65:
406.25 s
[really-safe-money-gen] @@ -266,7 +266,7 @@
406.25 s
[really-safe-money-gen] | e >= l = Nothing
406.25 s
[really-safe-money-gen] | n < d =
406.25 s
[really-safe-money-gen] let !ns' = S.insert n ns
406.25 s
[really-safe-money-gen] - in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
406.25 s
[really-safe-money-gen] + in longDivWithLimit (c * 10) (succ e) ns' (n * 1)
406.26 s
[really-safe-money-gen] | otherwise =
406.26 s
[really-safe-money-gen] let (q, r') = n `quotRem` d
406.26 s
[really-safe-money-gen] in longDivWithLimit (c + q) e ns r'
406.27 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:252:36-37:
406.27 s
[really-safe-money-gen] @@ -249,7 +249,7 @@
406.27 s
[really-safe-money-gen] num = numerator rational
406.27 s
[really-safe-money-gen]
406.27 s
[really-safe-money-gen] longDiv :: Natural -> Maybe (Natural, Int)
406.27 s
[really-safe-money-gen] - longDiv = longDivWithLimit 0 0 S.empty
406.27 s
[really-safe-money-gen] + longDiv = longDivWithLimit 1 0 S.empty
406.27 s
[really-safe-money-gen]
406.27 s
[really-safe-money-gen] longDivWithLimit ::
406.27 s
[really-safe-money-gen] Natural ->
406.34 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:270:13-22:
406.34 s
[really-safe-money-gen] @@ -267,7 +267,7 @@
406.34 s
[really-safe-money-gen] | n < d =
406.34 s
[really-safe-money-gen] let !ns' = S.insert n ns
406.34 s
[really-safe-money-gen] in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
406.34 s
[really-safe-money-gen] - | otherwise =
406.34 s
[really-safe-money-gen] + | False =
406.34 s
[really-safe-money-gen] let (q, r') = n `quotRem` d
406.34 s
[really-safe-money-gen] in longDivWithLimit (c + q) e ns r'
406.34 s
[really-safe-money-gen]
406.35 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:223:39-41:
406.35 s
[really-safe-money-gen] @@ -220,7 +220,7 @@
406.35 s
[really-safe-money-gen] -- (-3) % 10
406.35 s
[really-safe-money-gen] toRational :: DecimalLiteral -> Rational
406.35 s
[really-safe-money-gen] toRational (DecimalLiteral mSign m e) =
406.35 s
[really-safe-money-gen] - signSignum mSign (fromIntegral m / (10 ^ e))
406.36 s
[really-safe-money-gen] + signSignum mSign (fromIntegral m / (0 ^ e))
406.36 s
[really-safe-money-gen]
406.36 s
[really-safe-money-gen] -- | Parse a 'DecimalLiteral' from a 'Ratio Natural'
406.36 s
[really-safe-money-gen] --
406.39 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:252:38-39:
406.39 s
[really-safe-money-gen] @@ -249,7 +249,7 @@
406.39 s
[really-safe-money-gen] num = numerator rational
406.39 s
[really-safe-money-gen]
406.39 s
[really-safe-money-gen] longDiv :: Natural -> Maybe (Natural, Int)
406.39 s
[really-safe-money-gen] - longDiv = longDivWithLimit 0 0 S.empty
406.39 s
[really-safe-money-gen] + longDiv = longDivWithLimit 0 1 S.empty
406.39 s
[really-safe-money-gen]
406.39 s
[really-safe-money-gen] longDivWithLimit ::
406.39 s
[really-safe-money-gen] Natural ->
406.48 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:270:13-22:
406.48 s
[really-safe-money-gen] @@ -267,7 +267,7 @@
406.48 s
[really-safe-money-gen] | n < d =
406.48 s
[really-safe-money-gen] let !ns' = S.insert n ns
406.48 s
[really-safe-money-gen] in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
406.48 s
[really-safe-money-gen] - | otherwise =
406.48 s
[really-safe-money-gen] + | not (otherwise) =
406.48 s
[really-safe-money-gen] let (q, r') = n `quotRem` d
406.48 s
[really-safe-money-gen] in longDivWithLimit (c + q) e ns r'
406.49 s
[really-safe-money-gen]
406.50 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:223:39-41:
406.50 s
[really-safe-money-gen] @@ -220,7 +220,7 @@
406.51 s
[really-safe-money-gen] -- (-3) % 10
406.51 s
[really-safe-money-gen] toRational :: DecimalLiteral -> Rational
406.51 s
[really-safe-money-gen] toRational (DecimalLiteral mSign m e) =
406.51 s
[really-safe-money-gen] - signSignum mSign (fromIntegral m / (10 ^ e))
406.51 s
[really-safe-money-gen] + signSignum mSign (fromIntegral m / (-10 ^ e))
406.51 s
[really-safe-money-gen]
406.51 s
[really-safe-money-gen] -- | Parse a 'DecimalLiteral' from a 'Ratio Natural'
406.51 s
[really-safe-money-gen] --
406.70 s
[really-safe-money-gen] btractAccount.produces valid amounts
406.70 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAmount.produces valid amounts
406.70 s
[really-safe-money-gen] Money\.MultiAccountSpec.sum.produces valid amounts
406.70 s
[really-safe-money-gen] Money\.MultiAmountSpec.GenValid (MultiAmount Currency).genValid \:\: Gen (MultiAmount Currency).only generates valid '(MultiAmount Currency)'s
406.70 s
[really-safe-money-gen] Money\.MultiAmountSpec.add.produces valid amounts
406.70 s
[really-safe-money-gen] Money\.MultiAmountSpec.addAmount.produces valid amounts
406.70 s
[really-safe-money-gen] Money\.MultiAmountSpec.fromAmount.produces valid amounts
406.70 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtract.produces valid amounts
406.70 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
406.70 s
[really-safe-money-gen] Money\.MultiAmountSpec.sum.produces valid amounts
406.70 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.DecimalLiteral.fromDecimalLiteral.produces valid factors
406.70 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.GenValid QuantisationFactor.genValid \:\: Gen QuantisationFactor.only generates valid 'QuantisationFactor's
406.70 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.fromWord32.produces valid quantisation factors
406.70 s
[really-safe-money-gen]
406.70 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/QuantisationFactor.hs:40:57-63:
406.70 s
[really-safe-money-gen] @@ -37,7 +37,7 @@
406.70 s
[really-safe-money-gen] validate qf@(QuantisationFactor w) =
406.70 s
[really-safe-money-gen] mconcat
406.70 s
[really-safe-money-gen] [ genericValidate qf,
406.70 s
[really-safe-money-gen] - declare "The quantisation factor is not zero" $ w /= 0
406.71 s
[really-safe-money-gen] + declare "The quantisation factor is not zero" $ False
406.71 s
[really-safe-money-gen] ]
406.71 s
[really-safe-money-gen]
406.71 s
[really-safe-money-gen] instance NFData QuantisationFactor
406.71 s
[really-safe-money-gen] Covering tests:
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.GenValid (MultiAccount Currency).genValid \:\: Gen (MultiAccount Currency).only generates valid '(MultiAccount Currency)'s
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.add.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAccount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAmount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.fromAccount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtract.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAccount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAmount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.sum.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAmountSpec.GenValid (MultiAmount Currency).genValid \:\: Gen (MultiAmount Currency).only generates valid '(MultiAmount Currency)'s
406.71 s
[really-safe-money-gen] Money\.MultiAmountSpec.add.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAmountSpec.addAmount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAmountSpec.fromAmount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtract.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAmountSpec.sum.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.DecimalLiteral.fromDecimalLiteral.produces valid factors
406.71 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.GenValid QuantisationFactor.genValid \:\: Gen QuantisationFactor.only generates valid 'QuantisationFactor's
406.71 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.fromWord32.produces valid quantisation factors
406.71 s
[really-safe-money-gen]
406.71 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:333:11-46:
406.71 s
[really-safe-money-gen] @@ -330,7 +330,7 @@
406.71 s
[really-safe-money-gen] toInt dl = do
406.71 s
[really-safe-money-gen] n <- toInteger dl
406.71 s
[really-safe-money-gen] guard $ n <= fromIntegral (maxBound :: Int)
406.71 s
[really-safe-money-gen] - guard $ n >= fromIntegral (minBound :: Int)
406.71 s
[really-safe-money-gen] + guard $ True
406.71 s
[really-safe-money-gen] pure $ fromIntegral n
406.71 s
[really-safe-money-gen]
406.71 s
[really-safe-money-gen] numSign :: (Ord a, Num a) => a -> Maybe Bool
406.71 s
[really-safe-money-gen] Covering tests:
406.71 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Int.fromInt.can parse any rendered literal
406.71 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Int.toInt.renders to valid words
406.71 s
[really-safe-money-gen]
406.71 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/QuantisationFactor.hs:39:7-8:
406.71 s
[really-safe-money-gen] @@ -36,7 +36,7 @@
406.71 s
[really-safe-money-gen] instance Validity QuantisationFactor where
406.71 s
[really-safe-money-gen] validate qf@(QuantisationFactor w) =
406.71 s
[really-safe-money-gen] mconcat
406.71 s
[really-safe-money-gen] - [ genericValidate qf,
406.71 s
[really-safe-money-gen] + [ genericValidate qf,
406.71 s
[really-safe-money-gen] declare "The quantisation factor is not zero" $ w /= 0
406.71 s
[really-safe-money-gen] ]
406.71 s
[really-safe-money-gen]
406.71 s
[really-safe-money-gen] Covering tests:
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.GenValid (MultiAccount Currency).genValid \:\: Gen (MultiAccount Currency).only generates valid '(MultiAccount Currency)'s
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.add.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAccount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.addAmount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.fromAccount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtract.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAccount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.subtractAmount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAccountSpec.sum.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAmountSpec.GenValid (MultiAmount Currency).genValid \:\: Gen (MultiAmount Currency).only generates valid '(MultiAmount Currency)'s
406.71 s
[really-safe-money-gen] Money\.MultiAmountSpec.add.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAmountSpec.addAmount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAmountSpec.fromAmount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtract.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAmountSpec.subtractAmount.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.MultiAmountSpec.sum.produces valid amounts
406.71 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.DecimalLiteral.fromDecimalLiteral.produces valid factors
406.71 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.GenValid QuantisationFactor.genValid \:\: Gen QuantisationFactor.only generates valid 'QuantisationFactor's
406.71 s
[really-safe-money-gen] Money\.QuantisationFactorSpec.fromWord32.produces valid quantisation factors
406.71 s
[really-safe-money-gen]
406.71 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:337:21-22:
406.71 s
[really-safe-money-gen] @@ -334,7 +334,7 @@
406.71 s
[really-safe-money-gen] pure $ fromIntegral n
406.71 s
[really-safe-money-gen]
406.71 s
[really-safe-money-gen] numSign :: (Ord a, Num a) => a -> Maybe Bool
406.71 s
[really-safe-money-gen] -numSign a = if a >= 0 then Nothing else Just False
406.71 s
[really-safe-money-gen] +numSign a = if a >= 1 then Nothing else Just False
406.71 s
[really-safe-money-gen]
406.71 s
[really-safe-money-gen] signSignum :: (Num a) => Maybe Bool -> (a -> a)
406.71 s
[really-safe-money-gen] signSignum = \case
406.71 s
[really-safe-money-gen] Covering tests:
406.71 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Int.fromInt.can parse any rendered literal
406.71 s
[really-safe-money-gen]
406.71 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:333:11-46:
406.71 s
[really-safe-money-gen] @@ -330,7 +330,7 @@
406.71 s
[really-safe-money-gen] toInt dl = do
406.71 s
[really-safe-money-gen] n <- toInteger dl
406.71 s
[really-safe-money-gen] guard $ n <= fromIntegral (maxBound :: Int)
406.71 s
[really-safe-money-gen] - guard $ n >= fromIntegral (minBound :: Int)
406.71 s
[really-safe-money-gen] + guard $ False
406.71 s
[really-safe-money-gen] pure $ fromIntegral n
406.71 s
[really-safe-money-gen]
406.71 s
[really-safe-money-gen] numSign :: (Ord a, Num a) => a -> Maybe Bool
406.71 s
[really-safe-money-gen] Covering tests:
406.71 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Int.fromInt.can parse any rendered literal
406.71 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Int.toInt.renders to valid words
406.71 s
[really-safe-money-gen]
406.71 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:304:42-43:
406.71 s
[really-safe-money-gen] @@ -301,7 +301,7 @@
406.71 s
[really-safe-money-gen]
406.71 s
[really-safe-money-gen] -- | Construct a 'DecimalLiteral' from a 'Natural'
406.71 s
[really-safe-money-gen] fromNatural :: Natural -> DecimalLiteral
406.71 s
[really-safe-money-gen] -fromNatural n = DecimalLiteral Nothing n 0
406.71 s
[really-safe-money-gen] +fromNatural n = DecimalLiteral Nothing n 1
406.71 s
[really-safe-money-gen]
406.71 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Natural'
406.71 s
[really-safe-money-gen] toNatural :: DecimalLiteral -> Maybe Natural
406.71 s
[really-safe-money-gen] Covering tests:
406.71 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Natural.fromNatural.renders to valid decimal literals
406.71 s
[really-safe-money-gen]
406.71 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:332:11-46:
406.71 s
[really-safe-money-gen] @@ -329,7 +329,7 @@
406.71 s
[really-safe-money-gen] toInt :: DecimalLiteral -> Maybe Int
406.71 s
[really-safe-money-gen] toInt dl = do
406.71 s
[really-safe-money-gen] n <- toInteger dl
406.72 s
[really-safe-money-gen] - guard $ n <= fromIntegral (maxBound :: Int)
406.72 s
[really-safe-money-gen] + guard $ True
406.72 s
[really-safe-money-gen] guard $ n >= fromIntegral (minBound :: Int)
406.72 s
[really-safe-money-gen] pure $ fromIntegral n
406.72 s
[really-safe-money-gen]
406.72 s
[really-safe-money-gen] Covering tests:
406.72 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Int.fromInt.can parse any rendered literal
406.72 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Int.toInt.renders to valid words
406.72 s
[really-safe-money-gen]
406.72 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:299:11-47:
406.72 s
[really-safe-money-gen] @@ -296,7 +296,7 @@
406.72 s
[really-safe-money-gen] toWord :: DecimalLiteral -> Maybe Word
406.72 s
[really-safe-money-gen] toWord dl = do
406.72 s
[really-safe-money-gen] n <- toNatural dl
406.72 s
[really-safe-money-gen] - guard $ n <= fromIntegral (maxBound :: Word)
406.72 s
[really-safe-money-gen] + guard $ False
406.72 s
[really-safe-money-gen] pure $ fromIntegral n
406.72 s
[really-safe-money-gen]
406.72 s
[really-safe-money-gen] -- | Construct a 'DecimalLiteral' from a 'Natural'
406.72 s
[really-safe-money-gen] Covering tests:
406.72 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Natural.fromNatural.can parse any rendered literal
406.72 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Word.fromWord.can parse any rendered literal
406.72 s
[really-safe-money-gen]
406.72 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:299:11-47:
406.72 s
[really-safe-money-gen] @@ -296,7 +296,7 @@
406.72 s
[really-safe-money-gen] toWord :: DecimalLiteral -> Maybe Word
406.72 s
[really-safe-money-gen] toWord dl = do
406.72 s
[really-safe-money-gen] n <- toNatural dl
406.72 s
[really-safe-money-gen] - guard $ n <= fromIntegral (maxBound :: Word)
406.72 s
[really-safe-money-gen] + guard $ True
406.72 s
[really-safe-money-gen] pure $ fromIntegral n
406.72 s
[really-safe-money-gen]
406.72 s
[really-safe-money-gen] -- | Construct a 'DecimalLiteral' from a 'Natural'
406.72 s
[really-safe-money-gen] Covering tests:
406.72 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Natural.fromNatural.can parse any rendered literal
406.72 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Word.fromWord.can parse any rendered literal
406.72 s
[really-safe-money-gen]
406.72 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:245:9-18:
406.72 s
[really-safe-money-gen] @@ -242,7 +242,7 @@
406.72 s
[really-safe-money-gen] Maybe DecimalLiteral
406.72 s
[really-safe-money-gen] fromRationalRepetendLimited l rational
406.72 s
[really-safe-money-gen] | d == 0 = Nothing
406.72 s
[really-safe-money-gen] - | otherwise = toLiteral Nothing <$> longDiv num
406.72 s
[really-safe-money-gen] + | True = toLiteral Nothing <$> longDiv num
406.72 s
[really-safe-money-gen] where
406.72 s
[really-safe-money-gen] toLiteral mSign (m, e) = DecimalLiteral mSign m (fromIntegral e)
406.72 s
[really-safe-money-gen] d = denominator rational
406.72 s
[really-safe-money-gen] Covering tests:
406.72 s
[really-safe-money-gen] Numeric\.DecimalLiteraTesting mutation IntLit at src/Numeric/DecimalLiteral.hs:208:9-10:
406.72 s
[really-safe-money-gen] @@ -205,7 +205,7 @@
406.72 s
[really-safe-money-gen] -- Nothing
406.72 s
[really-safe-money-gen] fromRational :: Rational -> Maybe DecimalLiteral
406.72 s
[really-safe-money-gen] fromRational (n :% d)
406.72 s
[really-safe-money-gen] - | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
406.72 s
[really-safe-money-gen] + | n < 1 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
406.72 s
[really-safe-money-gen] | otherwise = fromRatio (fromIntegral n % fromIntegral d)
406.72 s
[really-safe-money-gen]
406.72 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Rational'
406.93 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:208:5-10:
406.93 s
[really-safe-money-gen] @@ -205,7 +205,7 @@
406.93 s
[really-safe-money-gen] -- Nothing
406.93 s
[really-safe-money-gen] fromRational :: Rational -> Maybe DecimalLiteral
406.93 s
[really-safe-money-gen] fromRational (n :% d)
406.94 s
[really-safe-money-gen] - | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
406.94 s
[really-safe-money-gen] + | False = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
406.94 s
[really-safe-money-gen] | otherwise = fromRatio (fromIntegral n % fromIntegral d)
406.94 s
[really-safe-money-gen]
406.94 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Rational'
406.98 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:208:5-10:
406.98 s
[really-safe-money-gen] @@ -205,7 +205,7 @@
406.98 s
[really-safe-money-gen] -- Nothing
406.98 s
[really-safe-money-gen] fromRational :: Rational -> Maybe DecimalLiteral
406.98 s
[really-safe-money-gen] fromRational (n :% d)
406.98 s
[really-safe-money-gen] - | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
406.98 s
[really-safe-money-gen] + | True = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
406.99 s
[really-safe-money-gen] | otherwise = fromRatio (fromIntegral n % fromIntegral d)
406.99 s
[really-safe-money-gen]
406.99 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Rational'
406.99 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:223:39-41:
406.99 s
[really-safe-money-gen] @@ -220,7 +220,7 @@
406.99 s
[really-safe-money-gen] -- (-3) % 10
406.99 s
[really-safe-money-gen] toRational :: DecimalLiteral -> Rational
406.99 s
[really-safe-money-gen] toRational (DecimalLiteral mSign m e) =
406.99 s
[really-safe-money-gen] - signSignum mSign (fromIntegral m / (10 ^ e))
406.99 s
[really-safe-money-gen] + signSignum mSign (fromIntegral m / (1 ^ e))
406.99 s
[really-safe-money-gen]
406.99 s
[really-safe-money-gen] -- | Parse a 'DecimalLiteral' from a 'Ratio Natural'
406.99 s
[really-safe-money-gen] --
407.16 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:208:62-67:
407.16 s
[really-safe-money-gen] @@ -205,7 +205,7 @@
407.16 s
[really-safe-money-gen] -- Nothing
407.16 s
[really-safe-money-gen] fromRational :: Rational -> Maybe DecimalLiteral
407.16 s
[really-safe-money-gen] fromRational (n :% d)
407.16 s
[really-safe-money-gen] - | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
407.16 s
[really-safe-money-gen] + | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
407.16 s
[really-safe-money-gen] | otherwise = fromRatio (fromIntegral n % fromIntegral d)
407.16 s
[really-safe-money-gen]
407.16 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Rational'
407.20 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:208:5-10:
407.20 s
[really-safe-money-gen] @@ -205,7 +205,7 @@
407.20 s
[really-safe-money-gen] -- Nothing
407.20 s
[really-safe-money-gen] fromRational :: Rational -> Maybe DecimalLiteral
407.20 s
[really-safe-money-gen] fromRational (n :% d)
407.20 s
[really-safe-money-gen] - | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
407.20 s
[really-safe-money-gen] + | not (n < 0) = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
407.20 s
[really-safe-money-gen] | otherwise = fromRatio (fromIntegral n % fromIntegral d)
407.20 s
[really-safe-money-gen]
407.20 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Rational'
407.22 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:208:62-67:
407.22 s
[really-safe-money-gen] @@ -205,7 +205,7 @@
407.22 s
[really-safe-money-gen] -- Nothing
407.22 s
[really-safe-money-gen] fromRational :: Rational -> Maybe DecimalLiteral
407.22 s
[really-safe-money-gen] fromRational (n :% d)
407.22 s
[really-safe-money-gen] - | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
407.22 s
[really-safe-money-gen] + | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just not (False)) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
407.22 s
[really-safe-money-gen] | otherwise = fromRatio (fromIntegral n % fromIntegral d)
407.22 s
[really-safe-money-gen]
407.22 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Rational'
407.26 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:209:5-14:
407.26 s
[really-safe-money-gen] @@ -206,7 +206,7 @@
407.26 s
[really-safe-money-gen] fromRational :: Rational -> Maybe DecimalLiteral
407.26 s
[really-safe-money-gen] fromRational (n :% d)
407.26 s
[really-safe-money-gen] | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
407.26 s
[really-safe-money-gen] - | otherwise = fromRatio (fromIntegral n % fromIntegral d)
407.26 s
[really-safe-money-gen] + | True = fromRatio (fromIntegral n % fromIntegral d)
407.26 s
[really-safe-money-gen]
407.26 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Rational'
407.26 s
[really-safe-money-gen] --
407.27 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:209:5-14:
407.27 s
[really-safe-money-gen] @@ -206,7 +206,7 @@
407.27 s
[really-safe-money-gen] fromRational :: Rational -> Maybe DecimalLiteral
407.27 s
[really-safe-money-gen] fromRational (n :% d)
407.27 s
[really-safe-money-gen] | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
407.27 s
[really-safe-money-gen] - | otherwise = fromRatio (fromIntegral n % fromIntegral d)
407.27 s
[really-safe-money-gen] + | not (otherwise) = fromRatio (fromIntegral n % fromIntegral d)
407.27 s
[really-safe-money-gen]
407.27 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Rational'
407.27 s
[really-safe-money-gen] --
407.39 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:208:62-67:
407.39 s
[really-safe-money-gen] @@ -205,7 +205,7 @@
407.39 s
[really-safe-money-gen] -- Nothing
407.39 s
[really-safe-money-gen] fromRational :: Rational -> Maybe DecimalLiteral
407.39 s
[really-safe-money-gen] fromRational (n :% d)
407.39 s
[really-safe-money-gen] - | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
407.39 s
[really-safe-money-gen] + | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just True) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
407.39 s
[really-safe-money-gen] | otherwise = fromRatio (fromIntegral n % fromIntegral d)
407.39 s
[really-safe-money-gen]
407.39 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Rational'
407.48 s
[really-safe-money-gen] Testing mutation ListLit at src/Numeric/DecimalLiteral.hs:186:15-25:
407.48 s
[really-safe-money-gen] @@ -183,7 +183,7 @@
407.49 s
[really-safe-money-gen]
407.49 s
[really-safe-money-gen] goFrac m e = reverse (go e (reverse (show m)))
407.49 s
[really-safe-money-gen] go :: Word8 -> String -> String
407.49 s
[really-safe-money-gen] - go 0 [] = ['.', '0']
407.49 s
[really-safe-money-gen] + go 0 [] = ['.', '0']
407.49 s
[really-safe-money-gen] go 0 s = '.' : s
407.49 s
[really-safe-money-gen] go e [] = '0' : go (pred e) []
407.49 s
[really-safe-money-gen] go e (c : cs) = c : go (pred e) cs
407.54 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:145:28-30:
407.54 s
[really-safe-money-gen] @@ -142,7 +142,7 @@
407.54 s
[really-safe-money-gen] parseDigits :: (a -> Int -> Maybe a) -> a -> ReadP a
407.54 s
[really-safe-money-gen] parseDigits f z = do
407.54 s
[really-safe-money-gen] c <- ReadP.satisfy Char.isDigit
407.54 s
[really-safe-money-gen] - let digit = Char.ord c - 48
407.54 s
[really-safe-money-gen] + let digit = Char.ord c - 0
407.54 s
[really-safe-money-gen] case f z digit of
407.54 s
[really-safe-money-gen] Nothing -> fail "Failed to step the first digit"
407.54 s
[really-safe-money-gen] Just a -> ReadP.look >>= go a
407.55 s
[really-safe-money-gen] Testing mutation ListLit at src/Numeric/DecimalLiteral.hs:186:15-25:
407.55 s
[really-safe-money-gen] @@ -183,7 +183,7 @@
407.55 s
[really-safe-money-gen]
407.55 s
[really-safe-money-gen] goFrac m e = reverse (go e (reverse (show m)))
407.55 s
[really-safe-money-gen] go :: Word8 -> String -> String
407.55 s
[really-safe-money-gen] - go 0 [] = ['.', '0']
407.55 s
[really-safe-money-gen] + go 0 [] = ['.', '0']
407.55 s
[really-safe-money-gen] go 0 s = '.' : s
407.55 s
[really-safe-money-gen] go e [] = '0' : go (pred e) []
407.55 s
[really-safe-money-gen] go e (c : cs) = c : go (pred e) cs
407.61 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:145:28-30:
407.61 s
[really-safe-money-gen] @@ -142,7 +142,7 @@
407.61 s
[really-safe-money-gen] parseDigits :: (a -> Int -> Maybe a) -> a -> ReadP a
407.61 s
[really-safe-money-gen] parseDigits f z = do
407.61 s
[really-safe-money-gen] c <- ReadP.satisfy Char.isDigit
407.61 s
[really-safe-money-gen] - let digit = Char.ord c - 48
407.61 s
[really-safe-money-gen] + let digit = Char.ord c - 1
407.61 s
[really-safe-money-gen] case f z digit of
407.61 s
[really-safe-money-gen] Nothing -> fail "Failed to step the first digit"
407.61 s
[really-safe-money-gen] Just a -> ReadP.look >>= go a
407.69 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:145:28-30:
407.69 s
[really-safe-money-gen] @@ -142,7 +142,7 @@
407.69 s
[really-safe-money-gen] parseDigits :: (a -> Int -> Maybe a) -> a -> ReadP a
407.69 s
[really-safe-money-gen] parseDigits f z = do
407.70 s
[really-safe-money-gen] c <- ReadP.satisfy Char.isDigit
407.70 s
[really-safe-money-gen] - let digit = Char.ord c - 48
407.70 s
[really-safe-money-gen] + let digit = Char.ord c - -48
407.70 s
[really-safe-money-gen] case f z digit of
407.70 s
[really-safe-money-gen] Nothing -> fail "Failed to step the first digit"
407.70 s
[really-safe-money-gen] Just a -> ReadP.look >>= go a
407.75 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:152:9-23:
407.75 s
[really-safe-money-gen] @@ -149,7 +149,7 @@
407.75 s
[really-safe-money-gen] where
407.75 s
[really-safe-money-gen] go !a [] = return a
407.75 s
[really-safe-money-gen] go !a (c : cs)
407.75 s
[really-safe-money-gen] - | Char.isDigit c = do
407.75 s
[really-safe-money-gen] + | False = do
407.75 s
[really-safe-money-gen] _ <- ReadP.get
407.75 s
[really-safe-money-gen] let digit = Char.ord c - 48
407.75 s
[really-safe-money-gen] case f a digit of
407.78 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:152:9-23:
407.78 s
[really-safe-money-gen] @@ -149,7 +149,7 @@
407.78 s
[really-safe-money-gen] where
407.78 s
[really-safe-money-gen] go !a [] = return a
407.78 s
[really-safe-money-gen] go !a (c : cs)
407.78 s
[really-safe-money-gen] - | Char.isDigit c = do
407.78 s
[really-safe-money-gen] + | not (Char.isDigit c) = do
407.78 s
[really-safe-money-gen] _ <- ReadP.get
407.78 s
[really-safe-money-gen] let digit = Char.ord c - 48
407.78 s
[really-safe-money-gen] case f a digit of
407.86 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:154:36-38:
407.86 s
[really-safe-money-gen] @@ -151,7 +151,7 @@
407.86 s
[really-safe-money-gen] go !a (c : cs)
407.86 s
[really-safe-money-gen] | Char.isDigit c = do
407.86 s
[really-safe-money-gen] _ <- ReadP.get
407.86 s
[really-safe-money-gen] - let digit = Char.ord c - 48
407.86 s
[really-safe-money-gen] + let digit = Char.ord c - 1
407.86 s
[really-safe-money-gen] case f a digit of
407.86 s
[really-safe-money-gen] Nothing -> fail "Failed to step the digit"
407.86 s
[really-safe-money-gen] Just a' -> go a' cs
407.87 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:154:36-38:
407.87 s
[really-safe-money-gen] @@ -151,7 +151,7 @@
407.87 s
[really-safe-money-gen] go !a (c : cs)
407.87 s
[really-safe-money-gen] | Char.isDigit c = do
407.87 s
[really-safe-money-gen] _ <- ReadP.get
407.87 s
[really-safe-money-gen] - let digit = Char.ord c - 48
407.87 s
[really-safe-money-gen] + let digit = Char.ord c - 0
407.87 s
[really-safe-money-gen] case f a digit of
407.87 s
[really-safe-money-gen] Nothing -> fail "Failed to step the digit"
407.87 s
[really-safe-money-gen] Just a' -> go a' cs
407.91 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:154:36-38:
407.91 s
[really-safe-money-gen] @@ -151,7 +151,7 @@
407.91 s
[really-safe-money-gen] go !a (c : cs)
407.91 s
[really-safe-money-gen] | Char.isDigit c = do
407.91 s
[really-safe-money-gen] _ <- ReadP.get
407.92 s
[really-safe-money-gen] - let digit = Char.ord c - 48
407.92 s
[really-safe-money-gen] + let digit = Char.ord c - -48
407.92 s
[really-safe-money-gen] case f a digit of
407.92 s
[really-safe-money-gen] Nothing -> fail "Failed to step the digit"
407.92 s
[really-safe-money-gen] Just a' -> go a' cs
408.09 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:158:9-18:
408.09 s
[really-safe-money-gen] @@ -155,7 +155,7 @@
408.09 s
[really-safe-money-gen] case f a digit of
408.09 s
[really-safe-money-gen] Nothing -> fail "Failed to step the digit"
408.09 s
[really-safe-money-gen] Just a' -> go a' cs
408.09 s
[really-safe-money-gen] - | otherwise = return a
408.09 s
[really-safe-money-gen] + | True = return a
408.09 s
[really-safe-money-gen]
408.09 s
[really-safe-money-gen] -- | Render a decimal literal to a string
408.09 s
[really-safe-money-gen] --
408.13 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:152:9-23:
408.13 s
[really-safe-money-gen] @@ -149,7 +149,7 @@
408.13 s
[really-safe-money-gen] where
408.13 s
[really-safe-money-gen] go !a [] = return a
408.13 s
[really-safe-money-gen] go !a (c : cs)
408.13 s
[really-safe-money-gen] - | Char.isDigit c = do
408.13 s
[really-safe-money-gen] + | True = do
408.13 s
[really-safe-money-gen] _ <- ReadP.get
408.13 s
[really-safe-money-gen] let digit = Char.ord c - 48
408.13 s
[really-safe-money-gen] case f a digit of
408.14 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:158:9-18:
408.14 s
[really-safe-money-gen] @@ -155,7 +155,7 @@
408.14 s
[really-safe-money-gen] case f a digit of
408.14 s
[really-safe-money-gen] Nothing -> fail "Failed to step the digit"
408.14 s
[really-safe-money-gen] Just a' -> go a' cs
408.14 s
[really-safe-money-gen] - | otherwise = return a
408.14 s
[really-safe-money-gen] + | False = return a
408.14 s
[really-safe-money-gen]
408.14 s
[really-safe-money-gen] -- | Render a decimal literal to a string
408.14 s
[really-safe-money-gen] --
408.16 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:158:9-18:
408.16 s
[really-safe-money-gen] @@ -155,7 +155,7 @@
408.16 s
[really-safe-money-gen] case f a digit of
408.16 s
[really-safe-money-gen] Nothing -> fail "Failed to step the digit"
408.16 s
[really-safe-money-gen] Just a' -> go a' cs
408.16 s
[really-safe-money-gen] - | otherwise = return a
408.16 s
[really-safe-money-gen] + | not (otherwise) = return a
408.16 s
[really-safe-money-gen]
408.16 s
[really-safe-money-gen] -- | Render a decimal literal to a string
408.16 s
[really-safe-money-gen] --
408.18 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:139:27-29:
408.18 s
[really-safe-money-gen] @@ -136,7 +136,7 @@
408.18 s
[really-safe-money-gen] stepFraction (m, e) digit = Just (m * 10 + fromIntegral digit, succ e)
408.18 s
[really-safe-money-gen]
408.18 s
[really-safe-money-gen] step :: Natural -> Int -> Maybe Natural
408.18 s
[really-safe-money-gen] -step a digit = Just $ a * 10 + fromIntegral digit
408.18 s
[really-safe-money-gen] +step a digit = Just $ a * 0 + fromIntegral digit
408.18 s
[really-safe-money-gen] {-# INLINE step #-}
408.18 s
[really-safe-money-gen]
408.18 s
[really-safe-money-gen] parseDigits :: (a -> Int -> Maybe a) -> a -> ReadP a
408.36 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:139:27-29:
408.36 s
[really-safe-money-gen] @@ -136,7 +136,7 @@
408.36 s
[really-safe-money-gen] stepFraction (m, e) digit = Just (m * 10 + fromIntegral digit, succ e)
408.36 s
[really-safe-money-gen]
408.36 s
[really-safe-money-gen] step :: Natural -> Int -> Maybe Natural
408.36 s
[really-safe-money-gen] -step a digit = Just $ a * 10 + fromIntegral digit
408.36 s
[really-safe-money-gen] +step a digit = Just $ a * 1 + fromIntegral digit
408.36 s
[really-safe-money-gen] {-# INLINE step #-}
408.36 s
[really-safe-money-gen]
408.36 s
[really-safe-money-gen] parseDigits :: (a -> Int -> Maybe a) -> a -> ReadP a
408.42 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:136:39-41:
408.43 s
[really-safe-money-gen] @@ -133,7 +133,7 @@
408.43 s
[really-safe-money-gen]
408.43 s
[really-safe-money-gen] stepFraction :: (Natural, Word8) -> Int -> Maybe (Natural, Word8)
408.43 s
[really-safe-money-gen] stepFraction (_, 255) _ = Nothing
408.43 s
[really-safe-money-gen] -stepFraction (m, e) digit = Just (m * 10 + fromIntegral digit, succ e)
408.43 s
[really-safe-money-gen] +stepFraction (m, e) digit = Just (m * 0 + fromIntegral digit, succ e)
408.43 s
[really-safe-money-gen]
408.43 s
[really-safe-money-gen] step :: Natural -> Int -> Maybe Natural
408.43 s
[really-safe-money-gen] step a digit = Just $ a * 10 + fromIntegral digit
408.46 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:136:39-41:
408.46 s
[really-safe-money-gen] @@ -133,7 +133,7 @@
408.46 s
[really-safe-money-gen]
408.46 s
[really-safe-money-gen] stepFraction :: (Natural, Word8) -> Int -> Maybe (Natural, Word8)
408.46 s
[really-safe-money-gen] stepFraction (_, 255) _ = Nothing
408.46 s
[really-safe-money-gen] -stepFraction (m, e) digit = Just (m * 10 + fromIntegral digit, succ e)
408.46 s
[really-safe-money-gen] +stepFraction (m, e) digit = Just (m * 1 + fromIntegral digit, succ e)
408.46 s
[really-safe-money-gen]
408.46 s
[really-safe-money-gen] step :: Natural -> Int -> Maybe Natural
408.46 s
[really-safe-money-gen] step a digit = Just $ a * 10 + fromIntegral digit
408.51 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:119:22-30:
408.51 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
408.51 s
[really-safe-money-gen] decimalLiteralP :: ReadP DecimalLiteral
408.51 s
[really-safe-money-gen] decimalLiteralP = do
408.51 s
[really-safe-money-gen] let isSignChar :: Char -> Bool
408.52 s
[really-safe-money-gen] - isSignChar c = c == '-' || c == '+'
408.52 s
[really-safe-money-gen] + isSignChar c = True || c == '+'
408.52 s
[really-safe-money-gen]
408.52 s
[really-safe-money-gen] mSign <- ReadP.option Nothing $ do
408.52 s
[really-safe-money-gen] signChar <- ReadP.satisfy isSignChar
408.89 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:119:22-30:
408.89 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
408.89 s
[really-safe-money-gen] decimalLiteralP :: ReadP DecimalLiteral
408.89 s
[really-safe-money-gen] decimalLiteralP = do
408.89 s
[really-safe-money-gen] let isSignChar :: Char -> Bool
408.89 s
[really-safe-money-gen] - isSignChar c = c == '-' || c == '+'
408.89 s
[really-safe-money-gen] + isSignChar c = False || c == '+'
408.89 s
[really-safe-money-gen]
408.89 s
[really-safe-money-gen] mSign <- ReadP.option Nothing $ do
408.89 s
[really-safe-money-gen] signChar <- ReadP.satisfy isSignChar
408.89 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:119:22-30:
408.89 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
408.89 s
[really-safe-money-gen] decimalLiteralP :: ReadP DecimalLiteral
408.89 s
[really-safe-money-gen] decimalLiteralP = do
408.89 s
[really-safe-money-gen] let isSignChar :: Char -> Bool
408.89 s
[really-safe-money-gen] - isSignChar c = c == '-' || c == '+'
408.89 s
[really-safe-money-gen] + isSignChar c = not (c == '-') || c == '+'
408.89 s
[really-safe-money-gen]
408.89 s
[really-safe-money-gen] mSign <- ReadP.option Nothing $ do
408.89 s
[really-safe-money-gen] signChar <- ReadP.satisfy isSignChar
408.90 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:119:34-42:
408.90 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
408.90 s
[really-safe-money-gen] decimalLiteralP :: ReadP DecimalLiteral
408.90 s
[really-safe-money-gen] decimalLiteralP = do
408.90 s
[really-safe-money-gen] let isSignChar :: Char -> Bool
408.90 s
[really-safe-money-gen] - isSignChar c = c == '-' || c == '+'
408.90 s
[really-safe-money-gen] + isSignChar c = c == '-' || True
408.90 s
[really-safe-money-gen]
408.90 s
[really-safe-money-gen] mSign <- ReadP.option Nothing $ do
408.90 s
[really-safe-money-gen] signChar <- ReadP.satisfy isSignChar
408.91 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:119:34-42:
408.91 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
408.91 s
[really-safe-money-gen] decimalLiteralP :: ReadP DecimalLiteral
408.91 s
[really-safe-money-gen] decimalLiteralP = do
408.91 s
[really-safe-money-gen] let isSignChar :: Char -> Bool
408.91 s
[really-safe-money-gen] - isSignChar c = c == '-' || c == '+'
408.91 s
[really-safe-money-gen] + isSignChar c = c == '-' || not (c == '+')
408.91 s
[really-safe-money-gen]
408.91 s
[really-safe-money-gen] mSign <- ReadP.option Nothing $ do
408.91 s
[really-safe-money-gen] signChar <- ReadP.satisfy isSignChar
408.94 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:119:34-42:
408.94 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
408.94 s
[really-safe-money-gen] decimalLiteralP :: ReadP DecimalLiteral
408.94 s
[really-safe-money-gen] decimalLiteralP = do
408.94 s
[really-safe-money-gen] let isSignChar :: Char -> Bool
408.94 s
[really-safe-money-gen] - isSignChar c = c == '-' || c == '+'
408.94 s
[really-safe-money-gen] + isSignChar c = c == '-' || False
408.94 s
[really-safe-money-gen]
408.94 s
[really-safe-money-gen] mSign <- ReadP.option Nothing $ do
408.95 s
[really-safe-money-gen] signCTheasrt i<n-g RmeuatdaPt.isoant iCsofnys tiBsoSoilg naCth asrr
408.95 s
[really-safe-money-gen] c/Numeric/DecimalLiteral.hs:119:22-42:
408.95 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
408.95 s
[really-safe-money-gen] decimalLiteralP :: ReadP DecimalLiteral
408.95 s
[really-safe-money-gen] decimalLiteralP = do
408.96 s
[really-safe-money-gen] let isSignChar :: Char -> Bool
408.96 s
[really-safe-money-gen] - isSignChar c = c == '-' || c == '+'
408.96 s
[really-safe-money-gen] + isSignChar c = True
408.96 s
[really-safe-money-gen]
408.96 s
[really-safe-money-gen] mSign <- ReadP.option Nothing $ do
408.96 s
[really-safe-money-gen] signChar <- ReadP.satisfy isSignChar
409.00 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:119:22-42:
409.00 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
409.00 s
[really-safe-money-gen] decimalLiteralP :: ReadP DecimalLiteral
409.00 s
[really-safe-money-gen] decimalLiteralP = do
409.00 s
[really-safe-money-gen] let isSignChar :: Char -> Bool
409.00 s
[really-safe-money-gen] - isSignChar c = c == '-' || c == '+'
409.00 s
[really-safe-money-gen] + isSignChar c = not (c == '-' || c == '+')
409.00 s
[really-safe-money-gen]
409.00 s
[really-safe-money-gen] mSign <- ReadP.option Nothing $ do
409.00 s
[really-safe-money-gen] signChar <- ReadP.satisfy isSignChar
409.03 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:123:19-34:
409.03 s
[really-safe-money-gen] @@ -120,7 +120,7 @@
409.03 s
[really-safe-money-gen]
409.03 s
[really-safe-money-gen] mSign <- ReadP.option Nothing $ do
409.03 s
[really-safe-money-gen] signChar <- ReadP.satisfy isSignChar
409.03 s
[really-safe-money-gen] - pure $ Just $ signChar == '+'
409.03 s
[really-safe-money-gen] + pure $ Just $ True
409.03 s
[really-safe-money-gen]
409.04 s
[really-safe-money-gen] units <- parseDigits step 0
409.04 s
[really-safe-money-gen]
409.26 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:123:19-34:
409.26 s
[really-safe-money-gen] @@ -120,7 +120,7 @@
409.26 s
[really-safe-money-gen]
409.26 s
[really-safe-money-gen] mSign <- ReadP.option Nothing $ do
409.26 s
[really-safe-money-gen] signChar <- ReadP.satisfy isSignChar
409.26 s
[really-safe-money-gen] - pure $ Just $ signChar == '+'
409.26 s
[really-safe-money-gen] + pure $ Just $ False
409.26 s
[really-safe-money-gen]
409.26 s
[really-safe-money-gen] units <- parseDigits step 0
409.26 s
[really-safe-money-gen]
409.38 s
[really-safe-money-gen] Testing mutation Negate at src/Numeric/DecimalLiteral.hs:123:19-34:
409.38 s
[really-safe-money-gen] @@ -120,7 +120,7 @@
409.38 s
[really-safe-money-gen]
409.38 s
[really-safe-money-gen] mSign <- ReadP.option Nothing $ do
409.38 s
[really-safe-money-gen] signChar <- ReadP.satisfy isSignChar
409.38 s
[really-safe-money-gen] - pure $ Just $ signChar == '+'
409.38 s
[really-safe-money-gen] + pure $ Just $ not (signChar == '+')
409.38 s
[really-safe-money-gen]
409.38 s
[really-safe-money-gen] units <- parseDigits step 0
409.38 s
[really-safe-money-gen]
409.39 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:125:29-30:
409.39 s
[really-safe-money-gen] @@ -122,7 +122,7 @@
409.39 s
[really-safe-money-gen] signChar <- ReadP.satisfy isSignChar
409.39 s
[really-safe-money-gen] pure $ Just $ signChar == '+'
409.39 s
[really-safe-money-gen]
409.39 s
[really-safe-money-gen] - units <- parseDigits step 0
409.39 s
[really-safe-money-gen] + units <- parseDigits step 1
409.39 s
[really-safe-money-gen]
409.39 s
[really-safe-money-gen] ReadP.option (DecimalLiteral mSign units 0) $ do
409.39 s
[really-safe-money-gen] _ <- ReadP.satisfy (== '.')
409.44 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:127:44-45:
409.44 s
[really-safe-money-gen] @@ -124,7 +124,7 @@
409.44 s
[really-safe-money-gen]
409.45 s
[really-safe-money-gen] units <- parseDigits step 0
409.45 s
[really-safe-money-gen]
409.45 s
[really-safe-money-gen] - ReadP.option (DecimalLiteral mSign units 0) $ do
409.45 s
[really-safe-money-gen] + ReadP.option (DecimalLiteral mSign units 1) $ do
409.45 s
[really-safe-money-gen] _ <- ReadP.satisfy (== '.')
409.45 s
[really-safe-money-gen]
409.45 s
[really-safe-money-gen] (m, e) <- parseDigits stepFraction (units, 0)
409.47 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:130:48-49:
409.47 s
[really-safe-money-gen] @@ -127,7 +127,7 @@
409.47 s
[really-safe-money-gen] ReadP.option (DecimalLiteral mSign units 0) $ do
409.47 s
[really-safe-money-gen] _ <- ReadP.satisfy (== '.')
409.47 s
[really-safe-money-gen]
409.47 s
[really-safe-money-gen] - (m, e) <- parseDigits stepFraction (units, 0)
409.47 s
[really-safe-money-gen] + (m, e) <- parseDigits stepFraction (units, 1)
409.47 s
[really-safe-money-gen]
409.47 s
[really-safe-money-gen] pure $ DecimalLiteral mSign m e
409.47 s
[really-safe-money-gen]
409.53 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/Account/Codec.hs:51:33-76:
409.53 s
[really-safe-money-gen] @@ -48,7 +48,7 @@
409.53 s
[really-safe-money-gen] where
409.53 s
[really-safe-money-gen] f :: String -> Either String Account
409.53 s
[really-safe-money-gen] f s = case readMaybe s >>= Account.fromMinimalQuantisations of
409.54 s
[really-safe-money-gen] - Nothing -> Left $ unwords ["Could not read string as an Account:", s]
409.54 s
[really-safe-money-gen] + Nothing -> Left $ unwords ["Could not read string as an Account:", s]
409.54 s
[really-safe-money-gen] Just a -> Right a
409.54 s
[really-safe-money-gen] g :: Account -> String
409.54 s
[really-safe-money-gen] g = show . Account.toMinimalQuantisations
409.54 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/Account/Codec.hs:51:33-76:
409.54 s
[really-safe-money-gen] @@ -48,7 +48,7 @@
409.54 s
[really-safe-money-gen] where
409.54 s
[really-safe-money-gen] f :: String -> Either String Account
409.54 s
[really-safe-money-gen] f s = case readMaybe s >>= Account.fromMinimalQuantisations of
409.54 s
[really-safe-money-gen] - Nothing -> Left $ unwords ["Could not read string as an Account:", s]
409.54 s
[really-safe-money-gen] + Nothing -> Left $ unwords ["Could not read string as an Account:", s]
409.54 s
[really-safe-money-gen] Just a -> Right a
409.55 s
[really-safe-money-gen] g :: Account -> String
409.55 s
[really-safe-money-gen] g = show . Account.toMinimalQuantisations
409.55 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/Amount/Codec.hs:47:33-75:
409.55 s
[really-safe-money-gen] @@ -44,7 +44,7 @@
409.55 s
[really-safe-money-gen] where
409.55 s
[really-safe-money-gen] f :: String -> Either String Amount
409.55 s
[really-safe-money-gen] f s = case readMaybe s of
409.55 s
[really-safe-money-gen] - Nothing -> Left $ unwords ["Could not read string as an Amount:", s]
409.55 s
[really-safe-money-gen] + Nothing -> Left $ unwords ["Could not read string as an Amount:", s]
409.55 s
[really-safe-money-gen] Just i ->
409.55 s
[really-safe-money-gen] if (i :: Integer) < toInteger (minBound :: Word64)
409.55 s
[really-safe-money-gen] then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.55 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/Amount/Codec.hs:47:33-75:
409.55 s
[really-safe-money-gen] @@ -44,7 +44,7 @@
409.55 s
[really-safe-money-gen] where
409.55 s
[really-safe-money-gen] f :: String -> Either String Amount
409.55 s
[really-safe-money-gen] f s = case readMaybe s of
409.55 s
[really-safe-money-gen] - Nothing -> Left $ unwords ["Could not read string as an Amount:", s]
409.55 s
[really-safe-money-gen] + Nothing -> Left $ unwords ["Could not read string as an Amount:", s]
409.55 s
[really-safe-money-gen] Just i ->
409.55 s
[really-safe-money-gen] if (i :: Integer) < toInteger (minBound :: Word64)
409.55 s
[really-safe-money-gen] then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.56 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount/Codec.hs:49:12-59:
409.56 s
[really-safe-money-gen] @@ -46,7 +46,7 @@
409.56 s
[really-safe-money-gen] f s = case readMaybe s of
409.56 s
[really-safe-money-gen] Nothing -> Left $ unwords ["Could not read string as an Amount:", s]
409.56 s
[really-safe-money-gen] Just i ->
409.56 s
[really-safe-money-gen] - if (i :: Integer) < toInteger (minBound :: Word64)
409.56 s
[really-safe-money-gen] + if True
409.56 s
[really-safe-money-gen] then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.56 s
[really-safe-money-gen] else
409.56 s
[really-safe-money-gen] if (i :: Integer) > toInteger (maxBound :: Word64)
409.57 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount/Codec.hs:49:12-59:
409.57 s
[really-safe-money-gen] @@ -46,7 +46,7 @@
409.57 s
[really-safe-money-gen] f s = case readMaybe s of
409.57 s
[really-safe-money-gen] Nothing -> Left $ unwords ["Could not read string as an Amount:", s]
409.57 s
[really-safe-money-gen] Just i ->
409.57 s
[really-safe-money-gen] - if (i :: Integer) < toInteger (minBound :: Word64)
409.57 s
[really-safe-money-gen] + if False
409.57 s
[really-safe-money-gen] then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.57 s
[really-safe-money-gen] else
409.57 s
[really-safe-money-gen] if (i :: Integer) > toInteger (maxBound :: Word64)
409.57 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Amount/Codec.hs:49:12-59:
409.57 s
[really-safe-money-gen] @@ -46,7 +46,7 @@
409.57 s
[really-safe-money-gen] f s = case readMaybe s of
409.57 s
[really-safe-money-gen] Nothing -> Left $ unwords ["Could not read string as an Amount:", s]
409.57 s
[really-safe-money-gen] Just i ->
409.57 s
[really-safe-money-gen] - if (i :: Integer) < toInteger (minBound :: Word64)
409.57 s
[really-safe-money-gen] + if not ((i :: Integer) < toInteger (minBound :: Word64))
409.57 s
[really-safe-money-gen] then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.57 s
[really-safe-money-gen] else
409.57 s
[really-safe-money-gen] if (i :: Integer) > toInteger (maxBound :: Word64)
409.57 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/Amount/Codec.hs:50:31-84:
409.57 s
[really-safe-money-gen] @@ -47,7 +47,7 @@
409.57 s
[really-safe-money-gen] Nothing -> Left $ unwords ["Could not read string as an Amount:", s]
409.57 s
[really-safe-money-gen] Just i ->
409.57 s
[really-safe-money-gen] if (i :: Integer) < toInteger (minBound :: Word64)
409.57 s
[really-safe-money-gen] - then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.57 s
[really-safe-money-gen] + then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.57 s
[really-safe-money-gen] else
409.57 s
[really-safe-money-gen] if (i :: Integer) > toInteger (maxBound :: Word64)
409.57 s
[really-safe-money-gen] then Left $ unwords ["Number of minimal quantisations is too big:", show i]
409.57 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/Amount/Codec.hs:50:31-84:
409.57 s
[really-safe-money-gen] @@ -47,7 +47,7 @@
409.57 s
[really-safe-money-gen] Nothing -> Left $ unwords ["Could not read string as an Amount:", s]
409.57 s
[really-safe-money-gen] Just i ->
409.58 s
[really-safe-money-gen] if (i :: Integer) < toInteger (minBound :: Word64)
409.58 s
[really-safe-money-gen] - then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.58 s
[really-safe-money-gen] + then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.58 s
[really-safe-money-gen] else
409.58 s
[really-safe-money-gen] if (i :: Integer) > toInteger (maxBound :: Word64)
409.58 s
[really-safe-money-gen] then Left $ unwords ["Number of minimal quantisations is too big:", show i]
409.58 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:119:22-42:
409.58 s
[really-safe-money-gen] @@ -116,7 +116,7 @@
409.58 s
[really-safe-money-gen] decimalLiteralP :: ReadP DecimalLiteral
409.58 s
[really-safe-money-gen] decimalLiteralP = do
409.58 s
[really-safe-money-gen] let isSignChar :: Char -> Bool
409.58 s
[really-safe-money-gen] - isSignChar c = c == '-' || c == '+'
409.58 s
[really-safe-money-gen] + isSignChar c = False
409.58 s
[really-safe-money-gen]
409.58 s
[really-safe-money-gen] mSign <- ReadP.option Nothing $ do
409.59 s
[really-safe-money-gen] signChar <- ReadP.satisfy isSignCharT
409.59 s
[really-safe-money-gen] esting mutation ConstBool at src/Money/Amount/Codec.hs:52:16-63:
409.59 s
[really-safe-money-gen] @@ -49,7 +49,7 @@
409.59 s
[really-safe-money-gen] if (i :: Integer) < toInteger (minBound :: Word64)
409.59 s
[really-safe-money-gen] then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.59 s
[really-safe-money-gen] else
409.59 s
[really-safe-money-gen] - if (i :: Integer) > toInteger (maxBound :: Word64)
409.59 s
[really-safe-money-gen] + if True
409.59 s
[really-safe-money-gen] then Left $ unwords ["Number of minimal quantisations is too big:", show i]
409.59 s
[really-safe-money-gen] else Right $ Amount.fromMinimalQuantisations (fromIntegral i :: Word64)
409.59 s
[really-safe-money-gen] g :: Amount -> String
409.60 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/Amount/Codec.hs:52:16-63:
409.60 s
[really-safe-money-gen] @@ -49,7 +49,7 @@
409.60 s
[really-safe-money-gen] if (i :: Integer) < toInteger (minBound :: Word64)
409.60 s
[really-safe-money-gen] then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.60 s
[really-safe-money-gen] else
409.60 s
[really-safe-money-gen] - if (i :: Integer) > toInteger (maxBound :: Word64)
409.60 s
[really-safe-money-gen] + if False
409.60 s
[really-safe-money-gen] then Left $ unwords ["Number of minimal quantisations is too big:", show i]
409.60 s
[really-safe-money-gen] else Right $ Amount.fromMinimalQuantisations (fromIntegral i :: Word64)
409.60 s
[really-safe-money-gen] g :: Amount -> String
409.60 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/Amount/Codec.hs:53:35-90:
409.60 s
[really-safe-money-gen] @@ -50,7 +50,7 @@
409.60 s
[really-safe-money-gen] then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.60 s
[really-safe-money-gen] else
409.60 s
[really-safe-money-gen] if (i :: Integer) > toInteger (maxBound :: Word64)
409.60 s
[really-safe-money-gen] - then Left $ unwords ["Number of minimal quantisations is too big:", show i]
409.60 s
[really-safe-money-gen] + then Left $ unwords ["Number of minimal quantisations is too big:", show i]
409.60 s
[really-safe-money-gen] else Right $ Amount.fromMinimalQuantisations (fromIntegral i :: Word64)
409.60 s
[really-safe-money-gen] g :: Amount -> String
409.60 s
[really-safe-money-gen] g = show . Amount.toMinimalQuantisations
409.60 s
[really-safe-money-gen] Testing mutation Negate at src/Money/Amount/Codec.hs:52:16-63:
409.60 s
[really-safe-money-gen] @@ -49,7 +49,7 @@
409.60 s
[really-safe-money-gen] if (i :: Integer) < toInteger (minBound :: Word64)
409.60 s
[really-safe-money-gen] then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.60 s
[really-safe-money-gen] else
409.60 s
[really-safe-money-gen] - if (i :: Integer) > toInteger (maxBound :: Word64)
409.60 s
[really-safe-money-gen] + if not ((i :: Integer) > toInteger (maxBound :: Word64))
409.60 s
[really-safe-money-gen] then Left $ unwords ["Number of minimal quantisations is too big:", show i]
409.60 s
[really-safe-money-gen] else Right $ Amount.fromMinimalQuantisations (fromIntegral i :: Word64)
409.60 s
[really-safe-money-gen] g :: Amount -> String
409.60 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/Amount/Codec.hs:53:35-90:
409.60 s
[really-safe-money-gen] @@ -50,7 +50,7 @@
409.60 s
[really-safe-money-gen] then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.60 s
[really-safe-money-gen] else
409.61 s
[really-safe-money-gen] if (i :: Integer) > toInteger (maxBound :: Word64)
409.61 s
[really-safe-money-gen] - then Left $ unwords ["Number of minimal quantisations is too big:", show i]
409.61 s
[really-safe-money-gen] + then Left $ unwords ["Number of minimal quantisations is too big:", show i]
409.61 s
[really-safe-money-gen] else Right $ Amount.fromMinimalQuantisations (fromIntegral i :: Word64)
409.61 s
[really-safe-money-gen] g :: Amount -> String
409.61 s
[really-safe-money-gen] g = show . Amount.toMinimalQuantisations
409.61 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Amount/Codec.hs:52:13-86:
409.61 s
[really-safe-money-gen] @@ -49,7 +49,7 @@
409.61 s
[really-safe-money-gen] if (i :: Integer) < toInteger (minBound :: Word64)
409.61 s
[really-safe-money-gen] then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.61 s
[really-safe-money-gen] else
409.61 s
[really-safe-money-gen] - if (i :: Integer) > toInteger (maxBound :: Word64)
409.61 s
[really-safe-money-gen] + if (i :: Integer) > toInteger (maxBound :: Word64)
409.61 s
[really-safe-money-gen] then Left $ unwords ["Number of minimal quantisations is too big:", show i]
409.61 s
[really-safe-money-gen] else Right $ Amount.fromMinimalQuantisations (fromIntegral i :: Word64)
409.61 s
[really-safe-money-gen] g :: Amount -> String
409.61 s
[really-safe-money-gen] Testing mutation CondFlip at src/Money/Amount/Codec.hs:49:9-86:
409.61 s
[really-safe-money-gen] @@ -46,7 +46,7 @@
409.61 s
[really-safe-money-gen] f s = case readMaybe s of
409.61 s
[really-safe-money-gen] Nothing -> Left $ unwords ["Could not read string as an Amount:", s]
409.61 s
[really-safe-money-gen] Just i ->
409.61 s
[really-safe-money-gen] - if (i :: Integer) < toInteger (minBound :: Word64)
409.61 s
[really-safe-money-gen] + if (i :: Integer) < toInteger (minBound :: Word64)
409.61 s
[really-safe-money-gen] then Left $ unwords ["Negative number of minimal quantisations:", show i]
409.61 s
[really-safe-money-gen] else
409.61 s
[really-safe-money-gen] if (i :: Integer) > toInteger (maxBound :: Word64)
409.61 s
[really-safe-money-gen] Testing mutation ListLit at src/Numeric/DecimalLiteral/Codec.hs:40:33-82:
409.61 s
[really-safe-money-gen] @@ -37,5 +37,5 @@
409.61 s
[really-safe-money-gen] where
409.61 s
[really-safe-money-gen] f :: String -> Either String DecimalLiteral
409.61 s
[really-safe-money-gen] f s = case DecimalLiteral.fromString s of
409.61 s
[really-safe-money-gen] - Nothing -> Left $ unwords ["Could not read string as a DecimalLiteral:", s]
409.61 s
[really-safe-money-gen] + Nothing -> Left $ unwords ["Could not read string as a DecimalLiteral:", s]
409.61 s
[really-safe-money-gen] Just a -> Right a
409.61 s
[really-safe-money-gen] Testing mutation ListLit at src/Numeric/DecimalLiteral/Codec.hs:40:33-82:
409.61 s
[really-safe-money-gen] @@ -37,5 +37,5 @@
409.61 s
[really-safe-money-gen] where
409.61 s
[really-safe-money-gen] f :: String -> Either String DecimalLiteral
409.61 s
[really-safe-money-gen] f s = case DecimalLiteral.fromString s of
409.61 s
[really-safe-money-gen] - Nothing -> Left $ unwords ["Could not read string as a DecimalLiteral:", s]
409.61 s
[really-safe-money-gen] + Nothing -> Left $ unwords ["Could not read string as a DecimalLiteral:", s]
409.62 s
[really-safe-money-gen] Just a -> Right a
409.62 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:209:5-14:
409.62 s
[really-safe-money-gen] @@ -206,7 +206,7 @@
409.62 s
[really-safe-money-gen] fromRational :: Rational -> Maybe DecimalLiteral
409.62 s
[really-safe-money-gen] fromRational (n :% d)
409.63 s
[really-safe-money-gen] | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
409.63 s
[really-safe-money-gen] - | otherwise = fromRatio (fromIntegral n % fromIntegral d)
409.63 s
[really-safe-money-gen] + | False = fromRatio (fromIntegral n % fromIntegral d)
409.63 s
[really-safe-money-gen]
409.63 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Rational'
409.63 s
[really-safe-money-gen] --
415.32 s
[really-safe-money-gen] lSpec.Rational.can turn rational 400 % 1 into DecimalLiteral Nothing 400 0
415.32 s
[really-safe-money-gen]
415.32 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:245:9-18:
415.34 s
[really-safe-money-gen] @@ -242,7 +242,7 @@
415.34 s
[really-safe-money-gen] Maybe DecimalLiteral
415.34 s
[really-safe-money-gen] fromRationalRepetendLimited l rational
415.34 s
[really-safe-money-gen] | d == 0 = Nothing
415.34 s
[really-safe-money-gen] - | otherwise = toLiteral Nothing <$> longDiv num
415.34 s
[really-safe-money-gen] + | False = toLiteral Nothing <$> longDiv num
415.34 s
[really-safe-money-gen] where
415.34 s
[really-safe-money-gen] toLiteral mSign (m, e) = DecimalLiteral mSign m (fromIntegral e)
415.34 s
[really-safe-money-gen] d = denominator rational
415.34 s
[really-safe-money-gen] Covering tests:
415.34 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Rational.can turn rational 400 % 1 into DecimalLiteral Nothing 400 0
415.34 s
[really-safe-money-gen]
415.34 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:270:13-22:
415.34 s
[really-safe-money-gen] @@ -267,7 +267,7 @@
415.34 s
[really-safe-money-gen] | n < d =
415.34 s
[really-safe-money-gen] let !ns' = S.insert n ns
415.34 s
[really-safe-money-gen] in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
415.34 s
[really-safe-money-gen] - | otherwise =
415.34 s
[really-safe-money-gen] + | True =
415.34 s
[really-safe-money-gen] let (q, r') = n `quotRem` d
415.34 s
[really-safe-money-gen] in longDivWithLimit (c + q) e ns r'
415.34 s
[really-safe-money-gen]
415.34 s
[really-safe-money-gen] Covering tests:
415.34 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Rational.can turn rational 400 % 1 into DecimalLiteral Nothing 400 0
415.34 s
[really-safe-money-gen]
415.34 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:270:13-22:
415.34 s
[really-safe-money-gen] @@ -267,7 +267,7 @@
415.34 s
[really-safe-money-gen] | n < d =
415.34 s
[really-safe-money-gen] let !ns' = S.insert n ns
415.34 s
[really-safe-money-gen] in longDivWithLimit (c * 10) (succ e) ns' (n * 10)
415.34 s
[really-safe-money-gen] - | otherwise =
415.34 s
[really-safe-money-gen] + | False =
415.34 s
[really-safe-money-gen] let (q, r') = n `quotRem` d
415.34 s
[really-safe-money-gen] in longDivWithLimit (c + q) e ns r'
415.34 s
[really-safe-money-gen]
415.34 s
[really-safe-money-gen] Covering tests:
415.34 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Rational.can turn rational 400 % 1 into DecimalLiteral Nothing 400 0
415.34 s
[really-safe-money-gen]
415.34 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:145:28-30:
415.34 s
[really-safe-money-gen] @@ -142,7 +142,7 @@
415.34 s
[really-safe-money-gen] parseDigits :: (a -> Int -> Maybe a) -> a -> ReadP a
415.34 s
[really-safe-money-gen] parseDigits f z = do
415.34 s
[really-safe-money-gen] c <- ReadP.satisfy Char.isDigit
415.34 s
[really-safe-money-gen] - let digit = Char.ord c - 48
415.34 s
[really-safe-money-gen] + let digit = Char.ord c - 1
415.34 s
[really-safe-money-gen] case f z digit of
415.34 s
[really-safe-money-gen] Nothing -> fail "Failed to step the first digit"
415.34 s
[really-safe-money-gen] Just a -> ReadP.look >>= go a
415.34 s
[really-safe-money-gen] Covering tests:
415.34 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.DecimalLiteral\.fromString.fails to parse scientific notation
415.34 s
[really-safe-money-gen]
415.34 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:145:28-30:
415.34 s
[really-safe-money-gen] @@ -142,7 +142,7 @@
415.34 s
[really-safe-money-gen] parseDigits :: (a -> Int -> Maybe a) -> a -> ReadP a
415.34 s
[really-safe-money-gen] parseDigits f z = do
415.34 s
[really-safe-money-gen] c <- ReadP.satisfy Char.isDigit
415.34 s
[really-safe-money-gen] - let digit = Char.ord c - 48
415.34 s
[really-safe-money-gen] + let digit = Char.ord c - 0
415.34 s
[really-safe-money-gen] case f z digit of
415.34 s
[really-safe-money-gen] Nothing -> fail "Failed to step the first digit"
415.34 s
[really-safe-money-gen] Just a -> ReadP.look >>= go a
415.34 s
[really-safe-money-gen] Covering tests:
415.34 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.DecimalLiteral\.fromString.fails to parse scientific notation
415.34 s
[really-safe-money-gen]
415.34 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:209:5-14:
415.35 s
[really-safe-money-gen] @@ -206,7 +206,7 @@
415.35 s
[really-safe-money-gen] fromRational :: Rational -> Maybe DecimalLiteral
415.35 s
[really-safe-money-gen] fromRational (n :% d)
415.35 s
[really-safe-money-gen] | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
415.35 s
[really-safe-money-gen] - | otherwise = fromRatio (fromIntegral n % fromIntegral d)
415.35 s
[really-safe-money-gen] + | True = fromRatio (fromIntegral n % fromIntegral d)
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Rational'
415.35 s
[really-safe-money-gen] --
415.35 s
[really-safe-money-gen] Covering tests:
415.35 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Rational.can turn rational 400 % 1 into DecimalLiteral Nothing 400 0
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:145:28-30:
415.35 s
[really-safe-money-gen] @@ -142,7 +142,7 @@
415.35 s
[really-safe-money-gen] parseDigits :: (a -> Int -> Maybe a) -> a -> ReadP a
415.35 s
[really-safe-money-gen] parseDigits f z = do
415.35 s
[really-safe-money-gen] c <- ReadP.satisfy Char.isDigit
415.35 s
[really-safe-money-gen] - let digit = Char.ord c - 48
415.35 s
[really-safe-money-gen] + let digit = Char.ord c - -48
415.35 s
[really-safe-money-gen] case f z digit of
415.35 s
[really-safe-money-gen] Nothing -> fail "Failed to step the first digit"
415.35 s
[really-safe-money-gen] Just a -> ReadP.look >>= go a
415.35 s
[really-safe-money-gen] Covering tests:
415.35 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.DecimalLiteral\.fromString.fails to parse scientific notation
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:208:9-10:
415.35 s
[really-safe-money-gen] @@ -205,7 +205,7 @@
415.35 s
[really-safe-money-gen] -- Nothing
415.35 s
[really-safe-money-gen] fromRational :: Rational -> Maybe DecimalLiteral
415.35 s
[really-safe-money-gen] fromRational (n :% d)
415.35 s
[really-safe-money-gen] - | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
415.35 s
[really-safe-money-gen] + | n < 1 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
415.35 s
[really-safe-money-gen] | otherwise = fromRatio (fromIntegral n % fromIntegral d)
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Rational'
415.35 s
[really-safe-money-gen] Covering tests:
415.35 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Rational.can turn rational 400 % 1 into DecimalLiteral Nothing 400 0
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:158:9-18:
415.35 s
[really-safe-money-gen] @@ -155,7 +155,7 @@
415.35 s
[really-safe-money-gen] case f a digit of
415.35 s
[really-safe-money-gen] Nothing -> fail "Failed to step the digit"
415.35 s
[really-safe-money-gen] Just a' -> go a' cs
415.35 s
[really-safe-money-gen] - | otherwise = return a
415.35 s
[really-safe-money-gen] + | True = return a
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] -- | Render a decimal literal to a string
415.35 s
[really-safe-money-gen] --
415.35 s
[really-safe-money-gen] Covering tests:
415.35 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.DecimalLiteral\.fromString.fails to parse scientific notation
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:158:9-18:
415.35 s
[really-safe-money-gen] @@ -155,7 +155,7 @@
415.35 s
[really-safe-money-gen] case f a digit of
415.35 s
[really-safe-money-gen] Nothing -> fail "Failed to step the digit"
415.35 s
[really-safe-money-gen] Just a' -> go a' cs
415.35 s
[really-safe-money-gen] - | otherwise = return a
415.35 s
[really-safe-money-gen] + | False = return a
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] -- | Render a decimal literal to a string
415.35 s
[really-safe-money-gen] --
415.35 s
[really-safe-money-gen] Covering tests:
415.35 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.DecimalLiteral\.fromString.fails to parse scientific notation
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] Testing mutation IntLit at src/Numeric/DecimalLiteral.hs:125:29-30:
415.35 s
[really-safe-money-gen] @@ -122,7 +122,7 @@
415.35 s
[really-safe-money-gen] signChar <- ReadP.satisfy isSignChar
415.35 s
[really-safe-money-gen] pure $ Just $ signChar == '+'
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] - units <- parseDigits step 0
415.35 s
[really-safe-money-gen] + units <- parseDigits step 1
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] ReadP.option (DecimalLiteral mSign units 0) $ do
415.35 s
[really-safe-money-gen] _ <- ReadP.satisfy (== '.')
415.35 s
[really-safe-money-gen] Covering tests:
415.35 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.DecimalLiteral\.fromString.fails to parse scientific notation
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] Testing mutation ConstBool at src/Numeric/DecimalLiteral.hs:209:5-14:
415.35 s
[really-safe-money-gen] @@ -206,7 +206,7 @@
415.35 s
[really-safe-money-gen] fromRational :: Rational -> Maybe DecimalLiteral
415.35 s
[really-safe-money-gen] fromRational (n :% d)
415.35 s
[really-safe-money-gen] | n < 0 = (\(DecimalLiteral _ m e) -> DecimalLiteral (Just False) m e) <$> fromRatio (fromIntegral (abs n) % fromIntegral d)
415.35 s
[really-safe-money-gen] - | otherwise = fromRatio (fromIntegral n % fromIntegral d)
415.35 s
[really-safe-money-gen] + | False = fromRatio (fromIntegral n % fromIntegral d)
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] -- | Turn a 'DecimalLiteral' into a 'Rational'
415.35 s
[really-safe-money-gen] --
415.35 s
[really-safe-money-gen] Covering tests:
415.35 s
[really-safe-money-gen] Numeric\.DecimalLiteralSpec.Rational.can turn rational 400 % 1 into DecimalLiteral Nothing 400 0
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/ConversionRate.hs:37:7-8:
415.35 s
[really-safe-money-gen] @@ -34,7 +34,7 @@
415.35 s
[really-safe-money-gen] instance Validity ConversionRate where
415.35 s
[really-safe-money-gen] validate cr@(ConversionRate r) =
415.35 s
[really-safe-money-gen] mconcat
415.35 s
[really-safe-money-gen] - [ genericValidate cr,
415.35 s
[really-safe-money-gen] + [ genericValidate cr,
415.35 s
[really-safe-money-gen] declare "The rate is nonzero" $ numerator r /= 0
415.35 s
[really-safe-money-gen] ]
415.35 s
[really-safe-money-gen]
415.35 s
[really-safe-money-gen] Covering tests:
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.ADA.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.ADA.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.BTC.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.BTC.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.CHF.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.CHF.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.INR.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.INR.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.USD.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.USD.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.ADA.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.ADA.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.BTC.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.BTC.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.CHF.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.CHF.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.INR.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.INR.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.USD.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.USD.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.ADA.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.ADA.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.BTC.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.BTC.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.CHF.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.CHF.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.INR.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.INR.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.USD.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.USD.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.ADA.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.ADA.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.BTC.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.BTC.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.CHF.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.CHF.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.INR.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.INR.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.USD.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.USD.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.ADA.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.ADA.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.BTC.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.BTC.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.CHF.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.CHF.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.INR.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.INR.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.USD.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.USD.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountSpec.convert.converts this USD to CHF correctly
415.35 s
[really-safe-money-gen] Money\.AccountSpec.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AccountSpec.convert.succeeds in converting 1\:1 without rounding if the quantisation factor is the same
415.35 s
[really-safe-money-gen] Money\.AccountSpec.rate.computes a rate that can be used to do a conversion without rounding
415.35 s
[really-safe-money-gen] Money\.AccountSpec.rate.computes this USD to CHF rate correctly
415.35 s
[really-safe-money-gen] Money\.AccountSpec.rate.produces valid conversion rates
415.35 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.ADA.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.ADA.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.BTC.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.BTC.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.CHF.convert.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.CHF.rate.produces valid amounts
415.35 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.INR.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.INR.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.USD.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.USD.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.ADA.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.ADA.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.BTC.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.BTC.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.CHF.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.CHF.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.INR.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.INR.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.USD.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.USD.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.ADA.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.ADA.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.BTC.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.BTC.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.CHF.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.CHF.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.INR.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.INR.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.USD.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.USD.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.ADA.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.ADA.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.BTC.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.BTC.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.CHF.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.CHF.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.INR.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.INR.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.USD.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.USD.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.ADA.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.ADA.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.BTC.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.BTC.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.CHF.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.CHF.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.INR.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.INR.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.USD.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.USD.rate.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountSpec.convert.converts this USD to CHF correctly
415.36 s
[really-safe-money-gen] Money\.AmountSpec.convert.produces valid amounts
415.36 s
[really-safe-money-gen] Money\.AmountSpec.convert.succeeds in converting 1\:1 without rounding if the quantisation factor is the same
415.36 s
[really-safe-money-gen] Money\.AmountSpec.rate.computes a rate that can be used to do a conversion without rounding
415.36 s
[really-safe-money-gen] Money\.AmountSpec.rate.computes this USD to CHF rate correctly
415.36 s
[really-safe-money-gen] Money\.AmountSpec.rate.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.GenValid (ConversionRateOf ADA ADA).genValid \:\: Gen (ConversionRateOf ADA ADA).only generates valid '(ConversionRateOf ADA ADA)'s
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Ratio.fromRatio.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Ratio.fromRatio.roundtrips with toRatio
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Rational.fromRational.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Rational.fromRational.roundtrips with toRational
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.compose.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.invert.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.GenValid (ConversionRateOf ADA BTC).genValid \:\: Gen (ConversionRateOf ADA BTC).only generates valid '(ConversionRateOf ADA BTC)'s
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Ratio.fromRatio.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Ratio.fromRatio.roundtrips with toRatio
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Rational.fromRational.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Rational.fromRational.roundtrips with toRational
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.compose.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.invert.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.GenValid (ConversionRateOf ADA CHF).genValid \:\: Gen (ConversionRateOf ADA CHF).only generates valid '(ConversionRateOf ADA CHF)'s
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Ratio.fromRatio.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Ratio.fromRatio.roundtrips with toRatio
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Rational.fromRational.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Rational.fromRational.roundtrips with toRational
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.compose.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.invert.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.GenValid (ConversionRateOf ADA INR).genValid \:\: Gen (ConversionRateOf ADA INR).only generates valid '(ConversionRateOf ADA INR)'s
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Ratio.fromRatio.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Ratio.fromRatio.roundtrips with toRatio
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Rational.fromRational.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Rational.fromRational.roundtrips with toRational
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.compose.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.invert.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.GenValid (ConversionRateOf ADA USD).genValid \:\: Gen (ConversionRateOf ADA USD).only generates valid '(ConversionRateOf ADA USD)'s
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Ratio.fromRatio.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Ratio.fromRatio.roundtrips with toRatio
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Rational.fromRational.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Rational.fromRational.roundtrips with toRational
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.compose.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.invert.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.GenValid (ConversionRateOf BTC ADA).genValid \:\: Gen (ConversionRateOf BTC ADA).only generates valid '(ConversionRateOf BTC ADA)'s
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Ratio.fromRatio.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Ratio.fromRatio.roundtrips with toRatio
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Rational.fromRational.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Rational.fromRational.roundtrips with toRational
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.compose.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.invert.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.GenValid (ConversionRateOf BTC BTC).genValid \:\: Gen (ConversionRateOf BTC BTC).only generates valid '(ConversionRateOf BTC BTC)'s
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Ratio.fromRatio.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Ratio.fromRatio.roundtrips with toRatio
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Rational.fromRational.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Rational.fromRational.roundtrips with toRational
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.compose.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.invert.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.GenValid (ConversionRateOf BTC CHF).genValid \:\: Gen (ConversionRateOf BTC CHF).only generates valid '(ConversionRateOf BTC CHF)'s
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Ratio.fromRatio.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Ratio.fromRatio.roundtrips with toRatio
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Rational.fromRational.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Rational.fromRational.roundtrips with toRational
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.compose.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.invert.produces valid rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.GenValid (ConversionRateOf BTC INR).genValid \:\: Gen (ConversionRateOf BTC INR).only generates valid '(ConversionRateOf BTC INR)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Ratio.fromRatio.roundtrips with toRatio
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Rational.fromRational.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Rational.fromRational.roundtrips with toRational
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.compose.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.invert.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.GenValid (ConversionRateOf BTC USD).genValid \:\: Gen (ConversionRateOf BTC USD).only generates valid '(ConversionRateOf BTC USD)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Ratio.fromRatio.roundtrips with toRatio
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Rational.fromRational.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Rational.fromRational.roundtrips with toRational
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.compose.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.invert.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.GenValid (ConversionRateOf CHF ADA).genValid \:\: Gen (ConversionRateOf CHF ADA).only generates valid '(ConversionRateOf CHF ADA)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Ratio.fromRatio.roundtrips with toRatio
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Rational.fromRational.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Rational.fromRational.roundtrips with toRational
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.compose.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.invert.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.GenValid (ConversionRateOf CHF BTC).genValid \:\: Gen (ConversionRateOf CHF BTC).only generates valid '(ConversionRateOf CHF BTC)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Ratio.fromRatio.roundtrips with toRatio
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Rational.fromRational.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Rational.fromRational.roundtrips with toRational
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.compose.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.invert.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.GenValid (ConversionRateOf CHF CHF).genValid \:\: Gen (ConversionRateOf CHF CHF).only generates valid '(ConversionRateOf CHF CHF)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Ratio.fromRatio.roundtrips with toRatio
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Rational.fromRational.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Rational.fromRational.roundtrips with toRational
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.compose.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.invert.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.GenValid (ConversionRateOf CHF INR).genValid \:\: Gen (ConversionRateOf CHF INR).only generates valid '(ConversionRateOf CHF INR)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Ratio.fromRatio.roundtrips with toRatio
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Rational.fromRational.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Rational.fromRational.roundtrips with toRational
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.compose.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.invert.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.GenValid (ConversionRateOf CHF USD).genValid \:\: Gen (ConversionRateOf CHF USD).only generates valid '(ConversionRateOf CHF USD)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Ratio.fromRatio.roundtrips with toRatio
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Rational.fromRational.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Rational.fromRational.roundtrips with toRational
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.compose.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.invert.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.GenValid (ConversionRateOf INR ADA).genValid \:\: Gen (ConversionRateOf INR ADA).only generates valid '(ConversionRateOf INR ADA)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Ratio.fromRatio.roundtrips with toRatio
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Rational.fromRational.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Rational.fromRational.roundtrips with toRational
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.compose.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.invert.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.GenValid (ConversionRateOf INR BTC).genValid \:\: Gen (ConversionRateOf INR BTC).only generates valid '(ConversionRateOf INR BTC)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Ratio.fromRatio.roundtrips with toRatio
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Rational.fromRational.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Rational.fromRational.roundtrips with toRational
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.compose.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.invert.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.GenValid (ConversionRateOf INR CHF).genValid \:\: Gen (ConversionRateOf INR CHF).only generates valid '(ConversionRateOf INR CHF)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Ratio.fromRatio.roundtrips with toRatio
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Rational.fromRational.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Rational.fromRational.roundtrips with toRational
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.compose.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.invert.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.GenValid (ConversionRateOf INR INR).genValid \:\: Gen (ConversionRateOf INR INR).only generates valid '(ConversionRateOf INR INR)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Ratio.fromRatio.roundtrips with toRatio
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Rational.fromRational.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Rational.fromRational.roundtrips with toRational
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.compose.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.invert.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.GenValid (ConversionRateOf INR USD).genValid \:\: Gen (ConversionRateOf INR USD).only generates valid '(ConversionRateOf INR USD)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Ratio.fromRatio.roundtrips with toRatio
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Rational.fromRational.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Rational.fromRational.roundtrips with toRational
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.compose.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.invert.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.GenValid (ConversionRateOf USD ADA).genValid \:\: Gen (ConversionRateOf USD ADA).only generates valid '(ConversionRateOf USD ADA)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Ratio.fromRatio.roundtrips with toRatio
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Rational.fromRational.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Rational.fromRational.roundtrips with toRational
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.compose.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.invert.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.GenValid (ConversionRateOf USD BTC).genValid \:\: Gen (ConversionRateOf USD BTC).only generates valid '(ConversionRateOf USD BTC)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Ratio.fromRatio.roundtrips with toRatio
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Rational.fromRational.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Rational.fromRational.roundtrips with toRational
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.compose.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.invert.produces valid rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.GenValid (ConversionRateOf USD CHF).genValid \:\: Gen (ConversionRateOf USD CHF).only generates valid '(ConversionRateOf USD CHF)'s
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Ratio.fromRatio.produces valid conversion rates
415.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Ratio.fromRatio.roundtrips with toRatio
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Rational.fromRational.produces valid conversion rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Rational.fromRational.roundtrips with toRational
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.compose.produces valid rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.invert.produces valid rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.GenValid (ConversionRateOf USD INR).genValid \:\: Gen (ConversionRateOf USD INR).only generates valid '(ConversionRateOf USD INR)'s
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Ratio.fromRatio.produces valid conversion rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Ratio.fromRatio.roundtrips with toRatio
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Rational.fromRational.produces valid conversion rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Rational.fromRational.roundtrips with toRational
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.compose.produces valid rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.invert.produces valid rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.GenValid (ConversionRateOf USD USD).genValid \:\: Gen (ConversionRateOf USD USD).only generates valid '(ConversionRateOf USD USD)'s
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Ratio.fromRatio.produces valid conversion rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Ratio.fromRatio.roundtrips with toRatio
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Rational.fromRational.produces valid conversion rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Rational.fromRational.roundtrips with toRational
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.compose.produces valid rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.invert.produces valid rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateSpec.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateSpec.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.70 s
[really-safe-money-gen] Money\.ConversionRateSpec.GenValid ConversionRate.genValid \:\: Gen ConversionRate.only generates valid 'ConversionRate's
415.70 s
[really-safe-money-gen] Money\.ConversionRateSpec.Ratio.fromRatio.produces valid conversion rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateSpec.Ratio.fromRatio.roundtrips with toRatio
415.70 s
[really-safe-money-gen] Money\.ConversionRateSpec.Rational.fromRational.produces valid conversion rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateSpec.Rational.fromRational.roundtrips with toRational
415.70 s
[really-safe-money-gen] Money\.ConversionRateSpec.compose.produces valid rates
415.70 s
[really-safe-money-gen] Money\.ConversionRateSpec.invert.produces valid rates
415.70 s
[really-safe-money-gen]
415.70 s
[really-safe-money-gen] Testing mutation ListLit at src/Money/ConversionRate.hs:37:7-8:
415.70 s
[really-safe-money-gen] @@ -34,7 +34,7 @@
415.70 s
[really-safe-money-gen] instance Validity ConversionRate where
415.70 s
[really-safe-money-gen] validate cr@(ConversionRate r) =
415.70 s
[really-safe-money-gen] mconcat
415.70 s
[really-safe-money-gen] - [ genericValidate cr,
415.70 s
[really-safe-money-gen] + [ genericValidate cr,
415.70 s
[really-safe-money-gen] declare "The rate is nonzero" $ numerator r /= 0
415.70 s
[really-safe-money-gen] ]
415.70 s
[really-safe-money-gen]
415.70 s
[really-safe-money-gen] Covering tests:
415.70 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.ADA.convert.produces valid amounts
415.70 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.ADA.rate.produces valid amounts
415.70 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.BTC.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.BTC.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.CHF.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.CHF.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.INR.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.INR.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.USD.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.USD.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.ADA.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.ADA.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.BTC.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.BTC.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.CHF.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.CHF.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.INR.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.INR.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.USD.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.USD.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.ADA.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.ADA.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.BTC.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.BTC.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.CHF.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.CHF.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.INR.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.INR.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.USD.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.USD.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.ADA.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.ADA.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.BTC.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.BTC.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.CHF.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.CHF.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.INR.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.INR.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.USD.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.USD.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.ADA.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.ADA.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.BTC.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.BTC.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.CHF.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.CHF.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.INR.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.INR.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.USD.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.USD.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountSpec.convert.converts this USD to CHF correctly
415.71 s
[really-safe-money-gen] Money\.AccountSpec.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AccountSpec.convert.succeeds in converting 1\:1 without rounding if the quantisation factor is the same
415.71 s
[really-safe-money-gen] Money\.AccountSpec.rate.computes a rate that can be used to do a conversion without rounding
415.71 s
[really-safe-money-gen] Money\.AccountSpec.rate.computes this USD to CHF rate correctly
415.71 s
[really-safe-money-gen] Money\.AccountSpec.rate.produces valid conversion rates
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.ADA.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.ADA.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.BTC.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.BTC.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.CHF.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.CHF.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.INR.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.INR.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.USD.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.USD.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.ADA.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.ADA.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.BTC.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.BTC.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.CHF.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.CHF.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.INR.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.INR.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.USD.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.USD.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.ADA.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.ADA.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.BTC.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.BTC.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.CHF.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.CHF.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.INR.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.INR.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.USD.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.USD.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.ADA.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.ADA.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.BTC.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.BTC.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.CHF.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.CHF.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.INR.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.INR.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.USD.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.USD.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.ADA.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.ADA.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.BTC.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.BTC.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.CHF.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.CHF.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.INR.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.INR.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.USD.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.USD.rate.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountSpec.convert.converts this USD to CHF correctly
415.71 s
[really-safe-money-gen] Money\.AmountSpec.convert.produces valid amounts
415.71 s
[really-safe-money-gen] Money\.AmountSpec.convert.succeeds in converting 1\:1 without rounding if the quantisation factor is the same
415.71 s
[really-safe-money-gen] Money\.AmountSpec.rate.computes a rate that can be used to do a conversion without rounding
415.71 s
[really-safe-money-gen] Money\.AmountSpec.rate.computes this USD to CHF rate correctly
415.71 s
[really-safe-money-gen] Money\.AmountSpec.rate.produces valid conversion rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.GenValid (ConversionRateOf ADA ADA).genValid \:\: Gen (ConversionRateOf ADA ADA).only generates valid '(ConversionRateOf ADA ADA)'s
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Ratio.fromRatio.produces valid conversion rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Ratio.fromRatio.roundtrips with toRatio
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Rational.fromRational.produces valid conversion rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Rational.fromRational.roundtrips with toRational
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.compose.produces valid rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.invert.produces valid rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.GenValid (ConversionRateOf ADA BTC).genValid \:\: Gen (ConversionRateOf ADA BTC).only generates valid '(ConversionRateOf ADA BTC)'s
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Ratio.fromRatio.produces valid conversion rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Ratio.fromRatio.roundtrips with toRatio
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Rational.fromRational.produces valid conversion rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Rational.fromRational.roundtrips with toRational
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.compose.produces valid rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.invert.produces valid rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.GenValid (ConversionRateOf ADA CHF).genValid \:\: Gen (ConversionRateOf ADA CHF).only generates valid '(ConversionRateOf ADA CHF)'s
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Ratio.fromRatio.produces valid conversion rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Ratio.fromRatio.roundtrips with toRatio
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Rational.fromRational.produces valid conversion rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Rational.fromRational.roundtrips with toRational
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.compose.produces valid rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.invert.produces valid rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.71 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.GenValid (ConversionRateOf ADA INR).genValid \:\: Gen (ConversionRateOf ADA INR).only generates valid '(ConversionRateOf ADA INR)'s
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Ratio.fromRatio.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Ratio.fromRatio.roundtrips with toRatio
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Rational.fromRational.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Rational.fromRational.roundtrips with toRational
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.compose.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.invert.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.GenValid (ConversionRateOf ADA USD).genValid \:\: Gen (ConversionRateOf ADA USD).only generates valid '(ConversionRateOf ADA USD)'s
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Ratio.fromRatio.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Ratio.fromRatio.roundtrips with toRatio
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Rational.fromRational.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Rational.fromRational.roundtrips with toRational
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.compose.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.invert.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.GenValid (ConversionRateOf BTC ADA).genValid \:\: Gen (ConversionRateOf BTC ADA).only generates valid '(ConversionRateOf BTC ADA)'s
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Ratio.fromRatio.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Ratio.fromRatio.roundtrips with toRatio
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Rational.fromRational.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Rational.fromRational.roundtrips with toRational
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.compose.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.invert.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.GenValid (ConversionRateOf BTC BTC).genValid \:\: Gen (ConversionRateOf BTC BTC).only generates valid '(ConversionRateOf BTC BTC)'s
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Ratio.fromRatio.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Ratio.fromRatio.roundtrips with toRatio
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Rational.fromRational.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Rational.fromRational.roundtrips with toRational
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.compose.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.invert.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.GenValid (ConversionRateOf BTC CHF).genValid \:\: Gen (ConversionRateOf BTC CHF).only generates valid '(ConversionRateOf BTC CHF)'s
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Ratio.fromRatio.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Ratio.fromRatio.roundtrips with toRatio
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Rational.fromRational.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Rational.fromRational.roundtrips with toRational
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.compose.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.invert.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.GenValid (ConversionRateOf BTC INR).genValid \:\: Gen (ConversionRateOf BTC INR).only generates valid '(ConversionRateOf BTC INR)'s
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Ratio.fromRatio.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Ratio.fromRatio.roundtrips with toRatio
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Rational.fromRational.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Rational.fromRational.roundtrips with toRational
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.compose.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.invert.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.GenValid (ConversionRateOf BTC USD).genValid \:\: Gen (ConversionRateOf BTC USD).only generates valid '(ConversionRateOf BTC USD)'s
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Ratio.fromRatio.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Ratio.fromRatio.roundtrips with toRatio
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Rational.fromRational.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Rational.fromRational.roundtrips with toRational
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.compose.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.invert.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.GenValid (ConversionRateOf CHF ADA).genValid \:\: Gen (ConversionRateOf CHF ADA).only generates valid '(ConversionRateOf CHF ADA)'s
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Ratio.fromRatio.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Ratio.fromRatio.roundtrips with toRatio
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Rational.fromRational.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Rational.fromRational.roundtrips with toRational
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.compose.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.invert.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.GenValid (ConversionRateOf CHF BTC).genValid \:\: Gen (ConversionRateOf CHF BTC).only generates valid '(ConversionRateOf CHF BTC)'s
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Ratio.fromRatio.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Ratio.fromRatio.roundtrips with toRatio
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Rational.fromRational.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Rational.fromRational.roundtrips with toRational
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.compose.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.invert.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.GenValid (ConversionRateOf CHF CHF).genValid \:\: Gen (ConversionRateOf CHF CHF).only generates valid '(ConversionRateOf CHF CHF)'s
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Ratio.fromRatio.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Ratio.fromRatio.roundtrips with toRatio
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Rational.fromRational.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Rational.fromRational.roundtrips with toRational
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.compose.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.invert.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.GenValid (ConversionRateOf CHF INR).genValid \:\: Gen (ConversionRateOf CHF INR).only generates valid '(ConversionRateOf CHF INR)'s
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Ratio.fromRatio.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Ratio.fromRatio.roundtrips with toRatio
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Rational.fromRational.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Rational.fromRational.roundtrips with toRational
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.compose.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.invert.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.GenValid (ConversionRateOf CHF USD).genValid \:\: Gen (ConversionRateOf CHF USD).only generates valid '(ConversionRateOf CHF USD)'s
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Ratio.fromRatio.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Ratio.fromRatio.roundtrips with toRatio
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Rational.fromRational.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Rational.fromRational.roundtrips with toRational
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.compose.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.invert.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.GenValid (ConversionRateOf INR ADA).genValid \:\: Gen (ConversionRateOf INR ADA).only generates valid '(ConversionRateOf INR ADA)'s
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Ratio.fromRatio.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Ratio.fromRatio.roundtrips with toRatio
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Rational.fromRational.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Rational.fromRational.roundtrips with toRational
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.compose.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.invert.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.GenValid (ConversionRateOf INR BTC).genValid \:\: Gen (ConversionRateOf INR BTC).only generates valid '(ConversionRateOf INR BTC)'s
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Ratio.fromRatio.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Ratio.fromRatio.roundtrips with toRatio
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Rational.fromRational.produces valid conversion rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Rational.fromRational.roundtrips with toRational
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.compose.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.invert.produces valid rates
415.72 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.GenValid (ConversionRateOf INR CHF).genValid \:\: Gen (ConversionRateOf INR CHF).only generates valid '(ConversionRateOf INR CHF)'s
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Ratio.fromRatio.produces valid conversion rates
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Ratio.fromRatio.roundtrips with toRatio
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Rational.fromRational.produces valid conversion rates
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Rational.fromRational.roundtrips with toRational
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.compose.produces valid rates
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.invert.produces valid rates
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.GenValid (ConversionRateOf INR INR).genValid \:\: Gen (ConversionRateOf INR INR).only generates valid '(ConversionRateOf INR INR)'s
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Ratio.fromRatio.produces valid conversion rates
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Ratio.fromRatio.roundtrips with toRatio
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Rational.fromRational.produces valid conversion rates
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Rational.fromRational.roundtrips with toRational
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.compose.produces valid rates
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.invert.produces valid rates
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.GenValid (ConversionRateOf INR USD).genValid \:\: Gen (ConversionRateOf INR USD).only generates valid '(ConversionRateOf INR USD)'s
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Ratio.fromRatio.produces valid conversion rates
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Ratio.fromRatio.roundtrips with toRatio
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Rational.fromRational.produces valid conversion rates
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Rational.fromRational.roundtrips with toRational
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.compose.produces valid rates
416.32 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.invert.produces valid rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.GenValid (ConversionRateOf USD ADA).genValid \:\: Gen (ConversionRateOf USD ADA).only generates valid '(ConversionRateOf USD ADA)'s
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Ratio.fromRatio.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Ratio.fromRatio.roundtrips with toRatio
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Rational.fromRational.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Rational.fromRational.roundtrips with toRational
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.compose.produces valid rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.invert.produces valid rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.GenValid (ConversionRateOf USD BTC).genValid \:\: Gen (ConversionRateOf USD BTC).only generates valid '(ConversionRateOf USD BTC)'s
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Ratio.fromRatio.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Ratio.fromRatio.roundtrips with toRatio
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Rational.fromRational.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Rational.fromRational.roundtrips with toRational
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.compose.produces valid rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.invert.produces valid rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.GenValid (ConversionRateOf USD CHF).genValid \:\: Gen (ConversionRateOf USD CHF).only generates valid '(ConversionRateOf USD CHF)'s
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Ratio.fromRatio.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Ratio.fromRatio.roundtrips with toRatio
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Rational.fromRational.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Rational.fromRational.roundtrips with toRational
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.compose.produces valid rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.invert.produces valid rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.GenValid (ConversionRateOf USD INR).genValid \:\: Gen (ConversionRateOf USD INR).only generates valid '(ConversionRateOf USD INR)'s
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Ratio.fromRatio.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Ratio.fromRatio.roundtrips with toRatio
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Rational.fromRational.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Rational.fromRational.roundtrips with toRational
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.compose.produces valid rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.invert.produces valid rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.GenValid (ConversionRateOf USD USD).genValid \:\: Gen (ConversionRateOf USD USD).only generates valid '(ConversionRateOf USD USD)'s
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Ratio.fromRatio.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Ratio.fromRatio.roundtrips with toRatio
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Rational.fromRational.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Rational.fromRational.roundtrips with toRational
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.compose.produces valid rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.invert.produces valid rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateSpec.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateSpec.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.33 s
[really-safe-money-gen] Money\.ConversionRateSpec.GenValid ConversionRate.genValid \:\: Gen ConversionRate.only generates valid 'ConversionRate's
416.33 s
[really-safe-money-gen] Money\.ConversionRateSpec.Ratio.fromRatio.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateSpec.Ratio.fromRatio.roundtrips with toRatio
416.33 s
[really-safe-money-gen] Money\.ConversionRateSpec.Rational.fromRational.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateSpec.Rational.fromRational.roundtrips with toRational
416.33 s
[really-safe-money-gen] Money\.ConversionRateSpec.compose.produces valid rates
416.33 s
[really-safe-money-gen] Money\.ConversionRateSpec.invert.produces valid rates
416.33 s
[really-safe-money-gen]
416.33 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/ConversionRate.hs:38:41-57:
416.33 s
[really-safe-money-gen] @@ -35,7 +35,7 @@
416.33 s
[really-safe-money-gen] validate cr@(ConversionRate r) =
416.33 s
[really-safe-money-gen] mconcat
416.33 s
[really-safe-money-gen] [ genericValidate cr,
416.33 s
[really-safe-money-gen] - declare "The rate is nonzero" $ numerator r /= 0
416.33 s
[really-safe-money-gen] + declare "The rate is nonzero" $ True
416.33 s
[really-safe-money-gen] ]
416.33 s
[really-safe-money-gen]
416.33 s
[really-safe-money-gen] instance NFData ConversionRate
416.33 s
[really-safe-money-gen] Covering tests:
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.ADA.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.ADA.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.BTC.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.BTC.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.CHF.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.CHF.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.INR.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.INR.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.USD.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.USD.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.ADA.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.ADA.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.BTC.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.BTC.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.CHF.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.CHF.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.INR.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.INR.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.USD.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.USD.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.ADA.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.ADA.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.BTC.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.BTC.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.CHF.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.CHF.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.INR.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.INR.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.USD.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.USD.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.ADA.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.ADA.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.BTC.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.BTC.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.CHF.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.CHF.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.INR.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.INR.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.USD.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.USD.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.ADA.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.ADA.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.BTC.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.BTC.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.CHF.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.CHF.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.INR.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.INR.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.USD.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.USD.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountSpec.convert.converts this USD to CHF correctly
416.33 s
[really-safe-money-gen] Money\.AccountSpec.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AccountSpec.convert.succeeds in converting 1\:1 without rounding if the quantisation factor is the same
416.33 s
[really-safe-money-gen] Money\.AccountSpec.rate.computes a rate that can be used to do a conversion without rounding
416.33 s
[really-safe-money-gen] Money\.AccountSpec.rate.computes this USD to CHF rate correctly
416.33 s
[really-safe-money-gen] Money\.AccountSpec.rate.produces valid conversion rates
416.33 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.ADA.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.ADA.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.BTC.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.BTC.rate.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.CHF.convert.produces valid amounts
416.33 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.CHF.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.INR.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.INR.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.USD.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.USD.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.ADA.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.ADA.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.BTC.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.BTC.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.CHF.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.CHF.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.INR.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.INR.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.USD.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.USD.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.ADA.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.ADA.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.BTC.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.BTC.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.CHF.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.CHF.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.INR.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.INR.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.USD.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.USD.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.ADA.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.ADA.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.BTC.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.BTC.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.CHF.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.CHF.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.INR.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.INR.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.USD.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.USD.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.ADA.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.ADA.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.BTC.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.BTC.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.CHF.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.CHF.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.INR.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.INR.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.USD.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.USD.rate.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountSpec.convert.converts this USD to CHF correctly
416.34 s
[really-safe-money-gen] Money\.AmountSpec.convert.produces valid amounts
416.34 s
[really-safe-money-gen] Money\.AmountSpec.convert.succeeds in converting 1\:1 without rounding if the quantisation factor is the same
416.34 s
[really-safe-money-gen] Money\.AmountSpec.rate.computes a rate that can be used to do a conversion without rounding
416.34 s
[really-safe-money-gen] Money\.AmountSpec.rate.computes this USD to CHF rate correctly
416.34 s
[really-safe-money-gen] Money\.AmountSpec.rate.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.GenValid (ConversionRateOf ADA ADA).genValid \:\: Gen (ConversionRateOf ADA ADA).only generates valid '(ConversionRateOf ADA ADA)'s
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Ratio.fromRatio.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Ratio.fromRatio.roundtrips with toRatio
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Rational.fromRational.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Rational.fromRational.roundtrips with toRational
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.compose.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.invert.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.GenValid (ConversionRateOf ADA BTC).genValid \:\: Gen (ConversionRateOf ADA BTC).only generates valid '(ConversionRateOf ADA BTC)'s
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Ratio.fromRatio.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Ratio.fromRatio.roundtrips with toRatio
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Rational.fromRational.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Rational.fromRational.roundtrips with toRational
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.compose.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.invert.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.GenValid (ConversionRateOf ADA CHF).genValid \:\: Gen (ConversionRateOf ADA CHF).only generates valid '(ConversionRateOf ADA CHF)'s
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Ratio.fromRatio.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Ratio.fromRatio.roundtrips with toRatio
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Rational.fromRational.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Rational.fromRational.roundtrips with toRational
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.compose.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.invert.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.GenValid (ConversionRateOf ADA INR).genValid \:\: Gen (ConversionRateOf ADA INR).only generates valid '(ConversionRateOf ADA INR)'s
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Ratio.fromRatio.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Ratio.fromRatio.roundtrips with toRatio
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Rational.fromRational.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Rational.fromRational.roundtrips with toRational
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.compose.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.invert.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.GenValid (ConversionRateOf ADA USD).genValid \:\: Gen (ConversionRateOf ADA USD).only generates valid '(ConversionRateOf ADA USD)'s
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Ratio.fromRatio.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Ratio.fromRatio.roundtrips with toRatio
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Rational.fromRational.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Rational.fromRational.roundtrips with toRational
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.compose.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.invert.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.GenValid (ConversionRateOf BTC ADA).genValid \:\: Gen (ConversionRateOf BTC ADA).only generates valid '(ConversionRateOf BTC ADA)'s
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Ratio.fromRatio.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Ratio.fromRatio.roundtrips with toRatio
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Rational.fromRational.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Rational.fromRational.roundtrips with toRational
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.compose.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.invert.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.GenValid (ConversionRateOf BTC BTC).genValid \:\: Gen (ConversionRateOf BTC BTC).only generates valid '(ConversionRateOf BTC BTC)'s
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Ratio.fromRatio.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Ratio.fromRatio.roundtrips with toRatio
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Rational.fromRational.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Rational.fromRational.roundtrips with toRational
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.compose.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.invert.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.GenValid (ConversionRateOf BTC CHF).genValid \:\: Gen (ConversionRateOf BTC CHF).only generates valid '(ConversionRateOf BTC CHF)'s
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Ratio.fromRatio.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Ratio.fromRatio.roundtrips with toRatio
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Rational.fromRational.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Rational.fromRational.roundtrips with toRational
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.compose.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.invert.produces valid rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.34 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.GenValid (ConversionRateOf BTC INR).genValid \:\: Gen (ConversionRateOf BTC INR).only generates valid '(ConversionRateOf BTC INR)'s
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Ratio.fromRatio.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Ratio.fromRatio.roundtrips with toRatio
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Rational.fromRational.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Rational.fromRational.roundtrips with toRational
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.compose.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.invert.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.GenValid (ConversionRateOf BTC USD).genValid \:\: Gen (ConversionRateOf BTC USD).only generates valid '(ConversionRateOf BTC USD)'s
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Ratio.fromRatio.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Ratio.fromRatio.roundtrips with toRatio
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Rational.fromRational.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Rational.fromRational.roundtrips with toRational
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.compose.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.invert.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.GenValid (ConversionRateOf CHF ADA).genValid \:\: Gen (ConversionRateOf CHF ADA).only generates valid '(ConversionRateOf CHF ADA)'s
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Ratio.fromRatio.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Ratio.fromRatio.roundtrips with toRatio
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Rational.fromRational.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Rational.fromRational.roundtrips with toRational
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.compose.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.invert.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.GenValid (ConversionRateOf CHF BTC).genValid \:\: Gen (ConversionRateOf CHF BTC).only generates valid '(ConversionRateOf CHF BTC)'s
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Ratio.fromRatio.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Ratio.fromRatio.roundtrips with toRatio
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Rational.fromRational.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Rational.fromRational.roundtrips with toRational
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.compose.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.invert.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.GenValid (ConversionRateOf CHF CHF).genValid \:\: Gen (ConversionRateOf CHF CHF).only generates valid '(ConversionRateOf CHF CHF)'s
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Ratio.fromRatio.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Ratio.fromRatio.roundtrips with toRatio
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Rational.fromRational.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Rational.fromRational.roundtrips with toRational
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.compose.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.invert.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.GenValid (ConversionRateOf CHF INR).genValid \:\: Gen (ConversionRateOf CHF INR).only generates valid '(ConversionRateOf CHF INR)'s
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Ratio.fromRatio.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Ratio.fromRatio.roundtrips with toRatio
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Rational.fromRational.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Rational.fromRational.roundtrips with toRational
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.compose.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.invert.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.GenValid (ConversionRateOf CHF USD).genValid \:\: Gen (ConversionRateOf CHF USD).only generates valid '(ConversionRateOf CHF USD)'s
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Ratio.fromRatio.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Ratio.fromRatio.roundtrips with toRatio
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Rational.fromRational.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Rational.fromRational.roundtrips with toRational
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.compose.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.invert.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.GenValid (ConversionRateOf INR ADA).genValid \:\: Gen (ConversionRateOf INR ADA).only generates valid '(ConversionRateOf INR ADA)'s
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Ratio.fromRatio.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Ratio.fromRatio.roundtrips with toRatio
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Rational.fromRational.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Rational.fromRational.roundtrips with toRational
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.compose.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.invert.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.GenValid (ConversionRateOf INR BTC).genValid \:\: Gen (ConversionRateOf INR BTC).only generates valid '(ConversionRateOf INR BTC)'s
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Ratio.fromRatio.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Ratio.fromRatio.roundtrips with toRatio
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Rational.fromRational.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Rational.fromRational.roundtrips with toRational
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.compose.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.invert.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.GenValid (ConversionRateOf INR CHF).genValid \:\: Gen (ConversionRateOf INR CHF).only generates valid '(ConversionRateOf INR CHF)'s
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Ratio.fromRatio.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Ratio.fromRatio.roundtrips with toRatio
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Rational.fromRational.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Rational.fromRational.roundtrips with toRational
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.compose.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.invert.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.GenValid (ConversionRateOf INR INR).genValid \:\: Gen (ConversionRateOf INR INR).only generates valid '(ConversionRateOf INR INR)'s
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Ratio.fromRatio.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Ratio.fromRatio.roundtrips with toRatio
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Rational.fromRational.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Rational.fromRational.roundtrips with toRational
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.compose.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.invert.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.GenValid (ConversionRateOf INR USD).genValid \:\: Gen (ConversionRateOf INR USD).only generates valid '(ConversionRateOf INR USD)'s
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Ratio.fromRatio.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Ratio.fromRatio.roundtrips with toRatio
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Rational.fromRational.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Rational.fromRational.roundtrips with toRational
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.compose.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.invert.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.GenValid (ConversionRateOf USD ADA).genValid \:\: Gen (ConversionRateOf USD ADA).only generates valid '(ConversionRateOf USD ADA)'s
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Ratio.fromRatio.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Ratio.fromRatio.roundtrips with toRatio
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Rational.fromRational.produces valid conversion rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Rational.fromRational.roundtrips with toRational
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.compose.produces valid rates
416.35 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.invert.produces valid rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.GenValid (ConversionRateOf USD BTC).genValid \:\: Gen (ConversionRateOf USD BTC).only generates valid '(ConversionRateOf USD BTC)'s
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Ratio.fromRatio.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Ratio.fromRatio.roundtrips with toRatio
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Rational.fromRational.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Rational.fromRational.roundtrips with toRational
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.compose.produces valid rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.invert.produces valid rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.GenValid (ConversionRateOf USD CHF).genValid \:\: Gen (ConversionRateOf USD CHF).only generates valid '(ConversionRateOf USD CHF)'s
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Ratio.fromRatio.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Ratio.fromRatio.roundtrips with toRatio
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Rational.fromRational.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Rational.fromRational.roundtrips with toRational
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.compose.produces valid rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.invert.produces valid rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.GenValid (ConversionRateOf USD INR).genValid \:\: Gen (ConversionRateOf USD INR).only generates valid '(ConversionRateOf USD INR)'s
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Ratio.fromRatio.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Ratio.fromRatio.roundtrips with toRatio
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Rational.fromRational.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Rational.fromRational.roundtrips with toRational
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.compose.produces valid rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.invert.produces valid rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.GenValid (ConversionRateOf USD USD).genValid \:\: Gen (ConversionRateOf USD USD).only generates valid '(ConversionRateOf USD USD)'s
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Ratio.fromRatio.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Ratio.fromRatio.roundtrips with toRatio
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Rational.fromRational.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Rational.fromRational.roundtrips with toRational
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.compose.produces valid rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.invert.produces valid rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateSpec.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateSpec.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.36 s
[really-safe-money-gen] Money\.ConversionRateSpec.GenValid ConversionRate.genValid \:\: Gen ConversionRate.only generates valid 'ConversionRate's
416.36 s
[really-safe-money-gen] Money\.ConversionRateSpec.Ratio.fromRatio.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateSpec.Ratio.fromRatio.roundtrips with toRatio
416.36 s
[really-safe-money-gen] Money\.ConversionRateSpec.Rational.fromRational.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateSpec.Rational.fromRational.roundtrips with toRational
416.36 s
[really-safe-money-gen] Money\.ConversionRateSpec.compose.produces valid rates
416.36 s
[really-safe-money-gen] Money\.ConversionRateSpec.invert.produces valid rates
416.36 s
[really-safe-money-gen]
416.36 s
[really-safe-money-gen] Testing mutation ConstBool at src/Money/ConversionRate.hs:38:41-57:
416.36 s
[really-safe-money-gen] @@ -35,7 +35,7 @@
416.36 s
[really-safe-money-gen] validate cr@(ConversionRate r) =
416.36 s
[really-safe-money-gen] mconcat
416.36 s
[really-safe-money-gen] [ genericValidate cr,
416.36 s
[really-safe-money-gen] - declare "The rate is nonzero" $ numerator r /= 0
416.36 s
[really-safe-money-gen] + declare "The rate is nonzero" $ False
416.36 s
[really-safe-money-gen] ]
416.36 s
[really-safe-money-gen]
416.36 s
[really-safe-money-gen] instance NFData ConversionRate
416.36 s
[really-safe-money-gen] Covering tests:
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.ADA.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.ADA.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.BTC.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.BTC.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.CHF.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.CHF.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.INR.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.INR.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.USD.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.ADA.USD.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.ADA.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.ADA.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.BTC.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.BTC.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.CHF.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.CHF.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.INR.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.INR.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.USD.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.BTC.USD.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.ADA.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.ADA.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.BTC.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.BTC.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.CHF.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.CHF.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.INR.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.INR.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.USD.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.CHF.USD.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.ADA.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.ADA.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.BTC.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.BTC.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.CHF.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.CHF.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.INR.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.INR.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.USD.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.INR.USD.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.ADA.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.ADA.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.BTC.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.BTC.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.CHF.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.CHF.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.INR.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.INR.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.USD.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountOfSpec.USD.USD.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountSpec.convert.converts this USD to CHF correctly
416.36 s
[really-safe-money-gen] Money\.AccountSpec.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AccountSpec.convert.succeeds in converting 1\:1 without rounding if the quantisation factor is the same
416.36 s
[really-safe-money-gen] Money\.AccountSpec.rate.computes a rate that can be used to do a conversion without rounding
416.36 s
[really-safe-money-gen] Money\.AccountSpec.rate.computes this USD to CHF rate correctly
416.36 s
[really-safe-money-gen] Money\.AccountSpec.rate.produces valid conversion rates
416.36 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.ADA.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.ADA.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.BTC.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.BTC.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.CHF.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.CHF.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.INR.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.INR.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.USD.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AmountOfSpec.ADA.USD.rate.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.ADA.convert.produces valid amounts
416.36 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.ADA.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.BTC.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.BTC.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.CHF.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.CHF.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.INR.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.INR.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.USD.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.BTC.USD.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.ADA.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.ADA.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.BTC.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.BTC.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.CHF.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.CHF.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.INR.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.INR.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.USD.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.CHF.USD.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.ADA.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.ADA.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.BTC.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.BTC.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.CHF.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.CHF.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.INR.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.INR.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.USD.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.INR.USD.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.ADA.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.ADA.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.BTC.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.BTC.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.CHF.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.CHF.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.INR.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.INR.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.USD.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountOfSpec.USD.USD.rate.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountSpec.convert.converts this USD to CHF correctly
416.37 s
[really-safe-money-gen] Money\.AmountSpec.convert.produces valid amounts
416.37 s
[really-safe-money-gen] Money\.AmountSpec.convert.succeeds in converting 1\:1 without rounding if the quantisation factor is the same
416.37 s
[really-safe-money-gen] Money\.AmountSpec.rate.computes a rate that can be used to do a conversion without rounding
416.37 s
[really-safe-money-gen] Money\.AmountSpec.rate.computes this USD to CHF rate correctly
416.37 s
[really-safe-money-gen] Money\.AmountSpec.rate.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.GenValid (ConversionRateOf ADA ADA).genValid \:\: Gen (ConversionRateOf ADA ADA).only generates valid '(ConversionRateOf ADA ADA)'s
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Ratio.fromRatio.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Ratio.fromRatio.roundtrips with toRatio
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Rational.fromRational.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.Rational.fromRational.roundtrips with toRational
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.compose.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.ADA.invert.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.GenValid (ConversionRateOf ADA BTC).genValid \:\: Gen (ConversionRateOf ADA BTC).only generates valid '(ConversionRateOf ADA BTC)'s
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Ratio.fromRatio.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Ratio.fromRatio.roundtrips with toRatio
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Rational.fromRational.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.Rational.fromRational.roundtrips with toRational
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.compose.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.BTC.invert.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.GenValid (ConversionRateOf ADA CHF).genValid \:\: Gen (ConversionRateOf ADA CHF).only generates valid '(ConversionRateOf ADA CHF)'s
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Ratio.fromRatio.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Ratio.fromRatio.roundtrips with toRatio
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Rational.fromRational.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.Rational.fromRational.roundtrips with toRational
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.compose.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.CHF.invert.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.GenValid (ConversionRateOf ADA INR).genValid \:\: Gen (ConversionRateOf ADA INR).only generates valid '(ConversionRateOf ADA INR)'s
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Ratio.fromRatio.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Ratio.fromRatio.roundtrips with toRatio
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Rational.fromRational.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.Rational.fromRational.roundtrips with toRational
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.compose.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.INR.invert.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.GenValid (ConversionRateOf ADA USD).genValid \:\: Gen (ConversionRateOf ADA USD).only generates valid '(ConversionRateOf ADA USD)'s
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Ratio.fromRatio.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Ratio.fromRatio.roundtrips with toRatio
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Rational.fromRational.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.Rational.fromRational.roundtrips with toRational
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.compose.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.ADA.USD.invert.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.GenValid (ConversionRateOf BTC ADA).genValid \:\: Gen (ConversionRateOf BTC ADA).only generates valid '(ConversionRateOf BTC ADA)'s
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Ratio.fromRatio.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Ratio.fromRatio.roundtrips with toRatio
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Rational.fromRational.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.Rational.fromRational.roundtrips with toRational
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.compose.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.ADA.invert.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.GenValid (ConversionRateOf BTC BTC).genValid \:\: Gen (ConversionRateOf BTC BTC).only generates valid '(ConversionRateOf BTC BTC)'s
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Ratio.fromRatio.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Ratio.fromRatio.roundtrips with toRatio
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Rational.fromRational.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.Rational.fromRational.roundtrips with toRational
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.compose.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.BTC.invert.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.GenValid (ConversionRateOf BTC CHF).genValid \:\: Gen (ConversionRateOf BTC CHF).only generates valid '(ConversionRateOf BTC CHF)'s
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Ratio.fromRatio.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Ratio.fromRatio.roundtrips with toRatio
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Rational.fromRational.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.Rational.fromRational.roundtrips with toRational
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.compose.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.CHF.invert.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.GenValid (ConversionRateOf BTC INR).genValid \:\: Gen (ConversionRateOf BTC INR).only generates valid '(ConversionRateOf BTC INR)'s
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Ratio.fromRatio.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Ratio.fromRatio.roundtrips with toRatio
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Rational.fromRational.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.Rational.fromRational.roundtrips with toRational
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.compose.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.INR.invert.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.GenValid (ConversionRateOf BTC USD).genValid \:\: Gen (ConversionRateOf BTC USD).only generates valid '(ConversionRateOf BTC USD)'s
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Ratio.fromRatio.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Ratio.fromRatio.roundtrips with toRatio
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Rational.fromRational.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.Rational.fromRational.roundtrips with toRational
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.compose.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.BTC.USD.invert.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.GenValid (ConversionRateOf CHF ADA).genValid \:\: Gen (ConversionRateOf CHF ADA).only generates valid '(ConversionRateOf CHF ADA)'s
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Ratio.fromRatio.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Ratio.fromRatio.roundtrips with toRatio
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Rational.fromRational.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.Rational.fromRational.roundtrips with toRational
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.compose.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.ADA.invert.produces valid rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.37 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.GenValid (ConversionRateOf CHF BTC).genValid \:\: Gen (ConversionRateOf CHF BTC).only generates valid '(ConversionRateOf CHF BTC)'s
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.BTC.invert.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.GenValid (ConversionRateOf CHF CHF).genValid \:\: Gen (ConversionRateOf CHF CHF).only generates valid '(ConversionRateOf CHF CHF)'s
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.CHF.invert.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.GenValid (ConversionRateOf CHF INR).genValid \:\: Gen (ConversionRateOf CHF INR).only generates valid '(ConversionRateOf CHF INR)'s
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.INR.invert.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.GenValid (ConversionRateOf CHF USD).genValid \:\: Gen (ConversionRateOf CHF USD).only generates valid '(ConversionRateOf CHF USD)'s
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.CHF.USD.invert.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.GenValid (ConversionRateOf INR ADA).genValid \:\: Gen (ConversionRateOf INR ADA).only generates valid '(ConversionRateOf INR ADA)'s
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.ADA.invert.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.GenValid (ConversionRateOf INR BTC).genValid \:\: Gen (ConversionRateOf INR BTC).only generates valid '(ConversionRateOf INR BTC)'s
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.BTC.invert.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.GenValid (ConversionRateOf INR CHF).genValid \:\: Gen (ConversionRateOf INR CHF).only generates valid '(ConversionRateOf INR CHF)'s
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.CHF.invert.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.GenValid (ConversionRateOf INR INR).genValid \:\: Gen (ConversionRateOf INR INR).only generates valid '(ConversionRateOf INR INR)'s
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.INR.invert.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.GenValid (ConversionRateOf INR USD).genValid \:\: Gen (ConversionRateOf INR USD).only generates valid '(ConversionRateOf INR USD)'s
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.INR.USD.invert.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.GenValid (ConversionRateOf USD ADA).genValid \:\: Gen (ConversionRateOf USD ADA).only generates valid '(ConversionRateOf USD ADA)'s
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.ADA.invert.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.GenValid (ConversionRateOf USD BTC).genValid \:\: Gen (ConversionRateOf USD BTC).only generates valid '(ConversionRateOf USD BTC)'s
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.BTC.invert.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.GenValid (ConversionRateOf USD CHF).genValid \:\: Gen (ConversionRateOf USD CHF).only generates valid '(ConversionRateOf USD CHF)'s
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.CHF.invert.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.GenValid (ConversionRateOf USD INR).genValid \:\: Gen (ConversionRateOf USD INR).only generates valid '(ConversionRateOf USD INR)'s
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.INR.invert.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.GenValid (ConversionRateOf USD USD).genValid \:\: Gen (ConversionRateOf USD USD).only generates valid '(ConversionRateOf USD USD)'s
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateOfSpec.USD.USD.invert.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateSpec.DecimalLiteral.fromDecimalLiteral.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateSpec.DecimalLiteral.fromDecimalLiteral.roundtrips with toDecimalLiteral
416.38 s
[really-safe-money-gen] Money\.ConversionRateSpec.GenValid ConversionRate.genValid \:\: Gen ConversionRate.only generates valid 'ConversionRate's
416.38 s
[really-safe-money-gen] Money\.ConversionRateSpec.Ratio.fromRatio.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateSpec.Ratio.fromRatio.roundtrips with toRatio
416.38 s
[really-safe-money-gen] Money\.ConversionRateSpec.Rational.fromRational.produces valid conversion rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateSpec.Rational.fromRational.roundtrips with toRational
416.38 s
[really-safe-money-gen] Money\.ConversionRateSpec.compose.produces valid rates
416.38 s
[really-safe-money-gen] Money\.ConversionRateSpec.invert.produces valid rates
416.38 s
[really-safe-money-gen]
416.38 s
[really-safe-money-gen] Killed: 233
416.38 s
[really-safe-money-gen] Survived: 79
416.38 s
[really-safe-money-gen] Uncovered: 21
416.40 s
[really-safe-money-gen] checkPhase completed in 5 minutes 57 seconds
416.40 s
[really-safe-money-gen] Phase: haddockPhase
416.57 s
[really-safe-money-gen] Preprocessing library for really-safe-money-gen-0.0.0.0...
416.57 s
[really-safe-money-gen] Running Haddock on library for really-safe-money-gen-0.0.0.0...
416.57 s
[really-safe-money-gen] Warning: The documentation for the following packages are not installed. No
416.57 s
[really-safe-money-gen] links will be generated to these packages: really-safe-money-0.0.0.0
416.80 s
[really-safe-money-gen] [ 1 of 13] Compiling Money.Amount.Gen ( src/Money/Amount/Gen.hs, nothing )
416.93 s
[really-safe-money-gen] [ 2 of 13] Compiling Money.Account.Gen ( src/Money/Account/Gen.hs, nothing )
416.93 s
[really-safe-money-gen] [ 3 of 13] Compiling Money.AccountOf.Gen ( src/Money/AccountOf/Gen.hs, nothing )
416.94 s
[really-safe-money-gen] [ 4 of 13] Compiling Money.AmountOf.Gen ( src/Money/AmountOf/Gen.hs, nothing )
416.94 s
[really-safe-money-gen] [ 5 of 13] Compiling Money.ConversionRate.Gen ( src/Money/ConversionRate/Gen.hs, nothing )
416.95 s
[really-safe-money-gen] [ 6 of 13] Compiling Money.ConversionRateOf.Gen ( src/Money/ConversionRateOf/Gen.hs, nothing )
416.96 s
[really-safe-money-gen] [ 7 of 13] Compiling Money.QuantisationFactor.Gen ( src/Money/QuantisationFactor/Gen.hs, nothing )
416.96 s
[really-safe-money-gen] [ 8 of 13] Compiling Money.Currency.Gen ( src/Money/Currency/Gen.hs, nothing )
416.96 s
[really-safe-money-gen] [ 9 of 13] Compiling Money.MultiAmount.Gen ( src/Money/MultiAmount/Gen.hs, nothing )
416.97 s
[really-safe-money-gen] [10 of 13] Compiling Money.MultiAccount.Gen ( src/Money/MultiAccount/Gen.hs, nothing )
416.98 s
[really-safe-money-gen] [11 of 13] Compiling Money.Gen ( src/Money/Gen.hs, nothing )
416.98 s
[really-safe-money-gen] [12 of 13] Compiling Numeric.DecimalLiteral.Gen ( src/Numeric/DecimalLiteral/Gen.hs, nothing )
416.99 s
[really-safe-money-gen] [13 of 13] Compiling Paths_really_safe_money_gen ( dist/build/autogen/Paths_really_safe_money_gen.hs, nothing )
417.00 s
[really-safe-money-gen] Haddock coverage:
417.00 s
[really-safe-money-gen] 0% ( 0 / 1) in 'Money.Amount.Gen'
417.00 s
[really-safe-money-gen] Missing documentation for:
417.00 s
[really-safe-money-gen] Module header
417.00 s
[really-safe-money-gen] 0% ( 0 / 1) in 'Money.Account.Gen'
417.00 s
[really-safe-money-gen] Missing documentation for:
417.00 s
[really-safe-money-gen] Module header
417.00 s
[really-safe-money-gen] 0% ( 0 / 1) in 'Money.AccountOf.Gen'
417.00 s
[really-safe-money-gen] Missing documentation for:
417.00 s
[really-safe-money-gen] Module header
417.00 s
[really-safe-money-gen] 0% ( 0 / 1) in 'Money.AmountOf.Gen'
417.00 s
[really-safe-money-gen] Missing documentation for:
417.00 s
[really-safe-money-gen] Module header
417.00 s
[really-safe-money-gen] 0% ( 0 / 1) in 'Money.ConversionRate.Gen'
417.00 s
[really-safe-money-gen] Missing documentation for:
417.00 s
[really-safe-money-gen] Module header
417.00 s
[really-safe-money-gen] 0% ( 0 / 1) in 'Money.ConversionRateOf.Gen'
417.00 s
[really-safe-money-gen] Missing documentation for:
417.00 s
[really-safe-money-gen] Module header
417.00 s
[really-safe-money-gen] 0% ( 0 / 1) in 'Money.QuantisationFactor.Gen'
417.00 s
[really-safe-money-gen] Missing documentation for:
417.00 s
[really-safe-money-gen] Module header
417.00 s
[really-safe-money-gen] 0% ( 0 / 1) in 'Money.Currency.Gen'
417.00 s
[really-safe-money-gen] Missing documentation for:
417.00 s
[really-safe-money-gen] Module header
417.00 s
[really-safe-money-gen] 0% ( 0 / 1) in 'Money.MultiAmount.Gen'
417.00 s
[really-safe-money-gen] Missing documentation for:
417.00 s
[really-safe-money-gen] Module header
417.00 s
[really-safe-money-gen] 0% ( 0 / 1) in 'Money.MultiAccount.Gen'
417.00 s
[really-safe-money-gen] Missing documentation for:
417.00 s
[really-safe-money-gen] Module header
417.00 s
[really-safe-money-gen] Warning: Money.Gen: Could not find documentation for exported module: Money.Gen
417.00 s
[really-safe-money-gen] 90% ( 10 / 11) in 'Money.Gen'
417.00 s
[really-safe-money-gen] Missing documentation for:
417.00 s
[really-safe-money-gen] Module header
417.00 s
[really-safe-money-gen] 0% ( 0 / 2) in 'Numeric.DecimalLiteral.Gen'
417.00 s
[really-safe-money-gen] Missing documentation for:
417.00 s
[really-safe-money-gen] Module header
417.00 s
[really-safe-money-gen] shrinkSign (src/Numeric/DecimalLiteral/Gen.hs:16)
417.09 s
[really-safe-money-gen] Warning: Money.Amount.Gen: could not find link destinations for:
417.09 s
[really-safe-money-gen] - Money.Amount.Amount
417.09 s
[really-safe-money-gen] - Money.Amount.Distribution
417.09 s
[really-safe-money-gen] - Money.Amount.Rounding
417.10 s
[really-safe-money-gen] Warning: Money.Account.Gen: could not find link destinations for:
417.10 s
[really-safe-money-gen] - Money.Account.Account
417.10 s
[really-safe-money-gen] Warning: Money.AccountOf.Gen: could not find link destinations for:
417.10 s
[really-safe-money-gen] - Money.AccountOf.AccountOf
417.10 s
[really-safe-money-gen] Warning: Money.AmountOf.Gen: could not find link destinations for:
417.10 s
[really-safe-money-gen] - Money.AmountOf.AmountOf
417.10 s
[really-safe-money-gen] Warning: Money.ConversionRate.Gen: could not find link destinations for:
417.10 s
[really-safe-money-gen] - Money.ConversionRate.ConversionRate
417.10 s
[really-safe-money-gen] Warning: Money.ConversionRateOf.Gen: could not find link destinations for:
417.10 s
[really-safe-money-gen] - Money.ConversionRateOf.ConversionRateOf
417.10 s
[really-safe-money-gen] Warning: Money.QuantisationFactor.Gen: could not find link destinations for:
417.10 s
[really-safe-money-gen] - Money.QuantisationFactor.QuantisationFactor
417.10 s
[really-safe-money-gen] Warning: Money.Currency.Gen: could not find link destinations for:
417.10 s
[really-safe-money-gen] - Money.Currency.Currency
417.10 s
[really-safe-money-gen] Warning: Money.MultiAmount.Gen: could not find link destinations for:
417.10 s
[really-safe-money-gen] - Money.MultiAmount.MultiAmount
417.10 s
[really-safe-money-gen] Warning: Money.MultiAccount.Gen: could not find link destinations for:
417.10 s
[really-safe-money-gen] - Money.MultiAccount.MultiAccount
417.10 s
[really-safe-money-gen] Warning: Numeric.DecimalLiteral.Gen: could not find link destinations for:
417.10 s
[really-safe-money-gen] - Numeric.DecimalLiteral.DecimalLiteral
422.03 s
[really-safe-money-gen] Documentation created: dist/doc/html/really-safe-money-gen/,
422.03 s
[really-safe-money-gen] dist/doc/html/really-safe-money-gen/really-safe-money-gen.txt
422.21 s
[really-safe-money-gen] Preprocessing test suite 'really-safe-money-test' for really-safe-money-gen-0.0.0.0...
422.21 s
[really-safe-money-gen] Phase: installPhase
422.27 s
[really-safe-money-gen] Installing library in /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6/really-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h
422.72 s
[really-safe-money-gen] Phase: fixupPhase
422.74 s
[really-safe-money-gen] shrinking RPATHs of ELF executables and libraries in /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0
422.75 s
[really-safe-money-gen] shrinking /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0/lib/ghc-9.10.3/lib/x86_64-linux-ghc-9.10.3-05f6/libHSreally-safe-money-gen-0.0.0.0-9DfdU4DcgbWHMkem9yRL5h-ghc9.10.3.so
422.77 s
[really-safe-money-gen] checking for references to /build/ in /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0...
422.81 s
[really-safe-money-gen] patching script interpreter paths in /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0
422.81 s
[really-safe-money-gen] stripping (with command strip and flags -S -p) in /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0/lib
422.89 s
[really-safe-money-gen] shrinking RPATHs of ELF executables and libraries in /nix/store/zq5b9inl970gfygw3m9wswh7z8kiab2i-really-safe-money-gen-0.0.0.0-doc
422.90 s
[really-safe-money-gen] checking for references to /build/ in /nix/store/zq5b9inl970gfygw3m9wswh7z8kiab2i-really-safe-money-gen-0.0.0.0-doc...
422.93 s
[really-safe-money-gen] patching script interpreter paths in /nix/store/zq5b9inl970gfygw3m9wswh7z8kiab2i-really-safe-money-gen-0.0.0.0-doc
422.94 s
[really-safe-money-gen] shrinking RPATHs of ELF executables and libraries in /nix/store/jsb4vixqjvqxcpxdvmjblzlxfksqhl49-really-safe-money-gen-0.0.0.0-report
422.96 s
[really-safe-money-gen] checking for references to /build/ in /nix/store/jsb4vixqjvqxcpxdvmjblzlxfksqhl49-really-safe-money-gen-0.0.0.0-report...
422.98 s
[really-safe-money-gen] patching script interpreter paths in /nix/store/jsb4vixqjvqxcpxdvmjblzlxfksqhl49-really-safe-money-gen-0.0.0.0-report
423.13 s
[post-build-hook] Uploading to cachix cache "sydtest": /nix/store/jsb4vixqjvqxcpxdvmjblzlxfksqhl49-really-safe-money-gen-0.0.0.0-report /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0 /nix/store/zq5b9inl970gfygw3m9wswh7z8kiab2i-really-safe-money-gen-0.0.0.0-doc
423.69 s
[post-build-hook] Pushing 3 paths (196 are already present) using zstd to cache sydtest ⏳
423.69 s
[post-build-hook]
424.10 s
[post-build-hook] Pushing /nix/store/jsb4vixqjvqxcpxdvmjblzlxfksqhl49-really-safe-money-gen-0.0.0.0-report (562.31 KiB)
424.21 s
[post-build-hook] Pushing /nix/store/zq5b9inl970gfygw3m9wswh7z8kiab2i-really-safe-money-gen-0.0.0.0-doc (288.17 KiB)
424.45 s
[post-build-hook] Pushing /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0 (1.35 MiB)
425.48 s
[post-build-hook]
425.48 s
[post-build-hook] All done.
425.50 s
[post-build-hook] Uploading to the NixCI staging cache: /nix/store/jsb4vixqjvqxcpxdvmjblzlxfksqhl49-really-safe-money-gen-0.0.0.0-report /nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0 /nix/store/zq5b9inl970gfygw3m9wswh7z8kiab2i-really-safe-money-gen-0.0.0.0-doc
425.54 s
[post-build-hook] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
425.81 s
[post-build-hook] copying 3 paths...
425.81 s
[post-build-hook] copying path '/nix/store/jsb4vixqjvqxcpxdvmjblzlxfksqhl49-really-safe-money-gen-0.0.0.0-report' to 'https://cache.staging.nix-ci.com'...
425.81 s
[post-build-hook] copying path '/nix/store/zq5b9inl970gfygw3m9wswh7z8kiab2i-really-safe-money-gen-0.0.0.0-doc' to 'https://cache.staging.nix-ci.com'...
425.94 s
[post-build-hook] copying path '/nix/store/m9m22lyckpbrxwj0acv4gclrkj64kwid-really-safe-money-gen-0.0.0.0' to 'https://cache.staging.nix-ci.com'...
426.43 s
[post-build-hook] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
426.68 s
[post-build-hook] copying 1 paths...
426.68 s
[post-build-hook] copying path '/nix/store/qyh2h7rhl3rvypm9249yccfzqqv46lm6-really-safe-money-gen-0.0.0.0.drv' to 'https://cache.staging.nix-ci.com'...
426.86 s
Progress: 5 of 6 built, 8 of 8 downloaded from cache