Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal On branch : master
http://hackage.haskell.org/trac/ghc/changeset/11195401f9bb9c0078423ea1858e0b908ef3c8a0 >--------------------------------------------------------------- commit 11195401f9bb9c0078423ea1858e0b908ef3c8a0 Author: Johan Tibell <[email protected]> Date: Wed Oct 12 15:41:38 2011 +0000 Add unit test for building benchmarks >--------------------------------------------------------------- cabal/tests/PackageTests/BenchmarkExeV10/Check.hs | 21 ++++++++++++++++++++ .../{TestSuiteExeV10 => BenchmarkExeV10}/Foo.hs | 0 .../{BenchmarkStanza => BenchmarkExeV10}/Setup.hs | 0 .../benchmarks/bench-Foo.hs} | 0 .../{TestSuiteExeV10 => BenchmarkExeV10}/my.cabal | 6 ++-- cabal/tests/suite.hs | 5 +++- 6 files changed, 28 insertions(+), 4 deletions(-) diff --git a/cabal/tests/PackageTests/BenchmarkExeV10/Check.hs b/cabal/tests/PackageTests/BenchmarkExeV10/Check.hs new file mode 100644 index 0000000..c99d5f9 --- /dev/null +++ b/cabal/tests/PackageTests/BenchmarkExeV10/Check.hs @@ -0,0 +1,21 @@ +module PackageTests.BenchmarkExeV10.Check + ( checkBenchmark + ) where + +import Distribution.PackageDescription ( Benchmark(..), emptyBenchmark ) +import Distribution.Simple.Hpc +import Distribution.Version +import Test.HUnit +import System.Directory +import System.FilePath +import PackageTests.PackageTester + +dir :: FilePath +dir = "PackageTests" </> "BenchmarkExeV10" + +checkBenchmark :: Version -> Test +checkBenchmark cabalVersion = TestCase $ do + let spec = PackageSpec dir ["--enable-benchmarks"] + buildResult <- cabal_build spec + let buildMessage = "\'setup build\' should succeed" + assertEqual buildMessage True $ successful buildResult diff --git a/cabal/tests/PackageTests/TestSuiteExeV10/Foo.hs b/cabal/tests/PackageTests/BenchmarkExeV10/Foo.hs similarity index 100% copy from cabal/tests/PackageTests/TestSuiteExeV10/Foo.hs copy to cabal/tests/PackageTests/BenchmarkExeV10/Foo.hs diff --git a/cabal/tests/PackageTests/BenchmarkStanza/Setup.hs b/cabal/tests/PackageTests/BenchmarkExeV10/Setup.hs similarity index 100% copy from cabal/tests/PackageTests/BenchmarkStanza/Setup.hs copy to cabal/tests/PackageTests/BenchmarkExeV10/Setup.hs diff --git a/cabal/tests/PackageTests/TestSuiteExeV10/tests/test-Foo.hs b/cabal/tests/PackageTests/BenchmarkExeV10/benchmarks/bench-Foo.hs similarity index 100% copy from cabal/tests/PackageTests/TestSuiteExeV10/tests/test-Foo.hs copy to cabal/tests/PackageTests/BenchmarkExeV10/benchmarks/bench-Foo.hs diff --git a/cabal/tests/PackageTests/TestSuiteExeV10/my.cabal b/cabal/tests/PackageTests/BenchmarkExeV10/my.cabal similarity index 74% copy from cabal/tests/PackageTests/TestSuiteExeV10/my.cabal copy to cabal/tests/PackageTests/BenchmarkExeV10/my.cabal index c9d5ef1..e4f2740 100644 --- a/cabal/tests/PackageTests/TestSuiteExeV10/my.cabal +++ b/cabal/tests/PackageTests/BenchmarkExeV10/my.cabal @@ -8,8 +8,8 @@ library exposed-modules: Foo build-depends: base -test-suite test-Foo +benchmark bench-Foo type: exitcode-stdio-1.0 - hs-source-dirs: tests - main-is: test-Foo.hs + hs-source-dirs: benchmarks + main-is: bench-Foo.hs build-depends: base, my diff --git a/cabal/tests/suite.hs b/cabal/tests/suite.hs index f266386..93320ee 100644 --- a/cabal/tests/suite.hs +++ b/cabal/tests/suite.hs @@ -10,6 +10,7 @@ import Test.Framework import Test.Framework.Providers.HUnit import Test.Framework.Providers.QuickCheck2 import qualified Test.HUnit as HUnit +import PackageTests.BenchmarkExeV10.Check import PackageTests.BenchmarkStanza.Check import PackageTests.BuildDeps.SameDepsAllRound.Check import PackageTests.BuildDeps.TargetSpecificDeps1.Check @@ -48,7 +49,9 @@ tests cabalVersion = [ hunit "PackageTests/TestSuiteExeV10/TestWithHpc" (PackageTests.TestSuiteExeV10.Check.checkTestWithHpc cabalVersion), hunit "PackageTests/TestOptions" PackageTests.TestOptions.Check.suite, - hunit "PackageTests/BenchmarkStanza/" (PackageTests.BenchmarkStanza.Check.suite cabalVersion) + hunit "PackageTests/BenchmarkStanza/" (PackageTests.BenchmarkStanza.Check.suite cabalVersion), + hunit "PackageTests/BenchmarkExeV10/Test" + (PackageTests.BenchmarkExeV10.Check.checkBenchmark cabalVersion) -- ^ The benchmark stanza test will eventually be required -- only for higher versions. ] ++ _______________________________________________ Cvs-libraries mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-libraries
