
I don't call the `read' function in my source code anywhere. I do
derive `read' instances in my data definitions, but otherwise grep
finds no occurrences.
I'm fairly certain this is a bug in the testing framework, but I don't
know how to debug it further. The cabal compilation process seems to
produce a file at
"dist/build/MY_PACKAGE_NAME-testsStub/MY_PACKAGE_NAME-testsStub-tmp/MY_PACKAGE_NAME-testsStub.hs".
This file contains:
module Main ( main ) where
import Distribution.Simple.Test ( stubMain )
import Tests ( tests )
main :: IO ()
main = stubMain tests
In the parent directory there is an executable,
"dist/build/MY_PACKAGE_NAME-testsStub/MY_PACKAGE_NAME-testsStub" which
appears to be the file which cabal executes when I call "cabal test".
I'm not sure how this executable is created but I suspect it comes
from the file I quoted above.
I'm beginning to suspect that the testing framework is not playing
well with something.
This is my test file: http://lpaste.net/104680
I'm using the detailed-0.9 "type" of test module, because the
detailed-1.0 "type" isn't present on my system. Is this the problem?
They seem to reference detailed-1.0 in this user guide I found for
Cabal: http://www.haskell.org/cabal/release/rc/doc/users-guide/#test-suites
. Though now, seeing the URL, it seems that the user guide might be
for a release candidate version of cabal? I found that page through
googling how to set up a test suite in Cabal.
Can someone point me at a different guide or tutorial? I tried this
(http://www.haskell.org/cabal/users-guide/) guide as well, but it
doesn't give any examples and barely references test suites at all.
On Mon, May 26, 2014 at 5:20 PM, Erik Price
It's possible that you're calling the
read :: Read a => String -> a
function somewhere with a parameter that the function doesn't know how to parse. I ran into this just today when I called
read "a string" :: String
when what I needed to call was
read "\"a string\"" :: String
e
On Monday, May 26, 2014, Boris
wrote: Hello,
Last time I got such an error, it was because I was using 'read' for a type I had defined myself, deriving Read, but on something that was not reelated to the type. For instance:
data Foo = Foo deriving (Read, Show)
x :: Foo x = read "Bar"
Do you use read somwhere?
HTH
Daniel King
writes: Hi all,
I created a cabal project with the attached cabal file. I run:
cabal configure --enable-tests cabal build cabal test
and then I get the error:
cabal: Prelude.read: no parse
I'm not sure how to debug this any further. If I execute:
./dist/build/scientific-pl-testsStub/scientific-pl-testsStub
with any input I've tried (numbers, array notation, string notation, etc.) and I get that same error.
I can post the whole project if that is helpful.
Thanks for the debugging tips!
The full log is:
danking@spock # cabal configure --enable-tests Resolving dependencies... Configuring scientific-pl-0.1.0.0... danking@spock # cabal build Building scientific-pl-0.1.0.0... Preprocessing test suite 'scientific-pl-tests' for scientific-pl-0.1.0.0... [1 of 3] Compiling SPLData ( SPLData.hs, dist/build/SPLData.o ) [2 of 3] Compiling SPLEval ( SPLEval.hs, dist/build/SPLEval.o ) [3 of 3] Compiling Tests ( tests/Tests.hs, dist/build/Tests.o ) In-place registering scientific-pl-tests-0.1.0.0... [1 of 1] Compiling Main (
dist/build/scientific-pl-testsStub/scientific-pl-testsStub-tmp/scientific-pl-testsStub.hs, dist/build/scientific-pl-testsStub/scientific-pl-testsStub-tmp/Main.o ) Linking dist/build/scientific-pl-testsStub/scientific-pl-testsStub ... Preprocessing executable 'scientific-pl' for scientific-pl-0.1.0.0... [1 of 3] Compiling SPLData ( SPLData.hs, dist/build/scientific-pl/scientific-pl-tmp/SPLData.o ) [2 of 3] Compiling SPLEval ( SPLEval.hs, dist/build/scientific-pl/scientific-pl-tmp/SPLEval.o ) [3 of 3] Compiling Main ( Main.hs, dist/build/scientific-pl/scientific-pl-tmp/Main.o ) Linking dist/build/scientific-pl/scientific-pl ... danking@spock # cabal test Running 1 test suites... Test suite scientific-pl-tests: RUNNING... cabal: Prelude.read: no parse 1 danking@spock #
-- Boris Daix _______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
-- Dan King