unicode-show
unicode-show copied to clipboard
Test suite failure on GHC 8.0.2
> /tmp/stackage-build13/unicode-show-0.1.0.2$ runghc -clear-package-db -global-package-db -package-db=/var/stackage/work/builds/nightly/pkgdb Setup configure --enable-tests --package-db=clear --package-db=global --package-db=/var/stackage/work/builds/nightly/pkgdb --libdir=/var/stackage/work/builds/nightly/lib --bindir=/var/stackage/work/builds/nightly/bin --datadir=/var/stackage/work/builds/nightly/share --libexecdir=/var/stackage/work/builds/nightly/libexec --sysconfdir=/var/stackage/work/builds/nightly/etc --docdir=/var/stackage/work/builds/nightly/doc/unicode-show-0.1.0.2 --htmldir=/var/stackage/work/builds/nightly/doc/unicode-show-0.1.0.2 --haddockdir=/var/stackage/work/builds/nightly/doc/unicode-show-0.1.0.2 --flags=
Configuring unicode-show-0.1.0.2...
> /tmp/stackage-build13/unicode-show-0.1.0.2$ runghc -clear-package-db -global-package-db -package-db=/var/stackage/work/builds/nightly/pkgdb Setup build
Building unicode-show-0.1.0.2...
Preprocessing library unicode-show-0.1.0.2...
[1 of 1] Compiling Text.Show.Unicode ( src/Text/Show/Unicode.hs, dist/build/Text/Show/Unicode.o )
Preprocessing test suite 'unicode-show-test' for unicode-show-0.1.0.2...
[1 of 1] Compiling Main ( test/Spec.hs, dist/build/unicode-show-test/unicode-show-test-tmp/Main.o )
Linking dist/build/unicode-show-test/unicode-show-test ...
> /tmp/stackage-build13/unicode-show-0.1.0.2$ dist/build/unicode-show-test/unicode-show-test
individual representations test:
ushow "\1589\1576\1575\1581 \1575\1604\1582\1610\1585" == "صباح الخير": [OK]
ushow "\128518\128149>\955\\=\128024" == "😆💕>λ\\=🐘": [OK]
ushow "\28450\&6" == "漢6": [OK]
ushow " 7" == " 7": [OK]
ushow "\25913\n\34892" == "改\n行": [OK]
ushow "\19979\19968\31449\na\ri\ta\22269\38469\26426\22330" == "下一站\na\ri\ta国际机场": [OK]
ushow "\SOH\SO\&H" == "\SOH\SO\&H": [OK]
read . ushow == id:
read . ushow == id, for String: [OK, passed 100 tests]
read . read . ushow . ushow == id, for String: [OK, passed 100 tests]
read . ushow == id, for some crazy Unicode type: [OK, passed 100 tests]
read . ushow == id, for some crazy Unicode type: [Failed]
*** Failed! Exception: 'Prelude.read: no parse' (after 1 test):
""
""
(used seed 859813756666089956)
read . ushow == id, for compound type: [OK, passed 100 tests]
Properties Test Cases Total
Passed 4 7 11
Failed 1 0 1
Total 5 7 12
Thank you for finding out! I'll look at it.
I have confirmed that the test case is failing:
data T = String :@\& String deriving (Eq, Ord, Show, Read)
data T = String :@\& String deriving (Eq, Ord, Show, Read)
Strangely enough, the former operator :@\&
breaks the identity read . ushow == id
, while the latter :@\&
does not. In contrast, on ghc 7.10.3, the former operator kept the identity, while the latter did not.
The former consists only of ASCII characters while the latter includes a Unicode character.
I need to further investigate to find the cause....