I have a fairly simple haskell project set up, where I just want to have the framework working with testing and so on before I actually start coding. I have my source files
Instead of renaming the TestSuite module as Fedor suggests you could add a GHC option to set the name of the main module to your Cabal file:
Test-Suite testFedor
ghc-options: -main-is TestSuite
Apparently Cabal main-is and GHC main-is are different. I don't know in what way.
You should define module name in your TestSuite.hs file as Main, like there for example.
A quote from The Haskell 98 Report:
A Haskell program is a collection of modules, one of which, by convention, must be called Main and must export the value main.