From 35f1e355be08a67281a387ccc83db9944c3abcd0 Mon Sep 17 00:00:00 2001 From: Andreas Abel <andreas.abel@ifi.lmu.de> Date: Tue, 31 Aug 2021 03:00:16 +0200 Subject: [PATCH] Fix #7583: updated text for Setup.hs test/bench --help (#7584) The new text reflects the "new" reality (probably a couple of years). Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> --- Cabal/src/Distribution/Simple/Setup.hs | 43 +++++++++++++------------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/Cabal/src/Distribution/Simple/Setup.hs b/Cabal/src/Distribution/Simple/Setup.hs index 27050f6f88..195ef3e1eb 100644 --- a/Cabal/src/Distribution/Simple/Setup.hs +++ b/Cabal/src/Distribution/Simple/Setup.hs @@ -1857,16 +1857,8 @@ testCommand = CommandUI { commandName = "test" , commandSynopsis = "Run all/specific tests in the test suite." - , commandDescription = Just $ \pname -> wrapText $ - "If necessary (re)configures with `--enable-tests` flag and builds" - ++ " the test suite.\n" - ++ "\n" - ++ "Remember that the tests' dependencies must be installed if there" - ++ " are additional ones; e.g. with `" ++ pname - ++ " install --only-dependencies --enable-tests`.\n" - ++ "\n" - ++ "By defining UserHooks in a custom Setup.hs, the package can" - ++ " define actions to be executed before and after running tests.\n" + , commandDescription = Just $ \ _pname -> wrapText $ + testOrBenchmarkHelpText "test" , commandNotes = Nothing , commandUsage = usageAlternatives "test" [ "[FLAGS]" @@ -1876,6 +1868,24 @@ testCommand = CommandUI , commandOptions = testOptions' } +-- | Help text for @test@ and @bench@ commands. +testOrBenchmarkHelpText + :: String -- ^ Either @"test"@ or @"benchmark"@. + -> String -- ^ Help text. +testOrBenchmarkHelpText s = unlines $ map unwords + [ [ "The package must have been build with configuration" + , concat [ "flag `--enable-", s, "s`." ] + ] + , [] -- blank line + , [ concat [ "Note that additional dependencies of the ", s, "s" ] + , "must have already been installed." + ] + , [] + , [ "By defining UserHooks in a custom Setup.hs, the package can define" + , concat [ "actions to be executed before and after running ", s, "s." ] + ] + ] + testOptions' :: ShowOrParseArgs -> [OptionField TestFlags] testOptions' showOrParseArgs = [ optionVerbosity testVerbosity (\v flags -> flags { testVerbosity = v }) @@ -1971,17 +1981,8 @@ benchmarkCommand = CommandUI { commandName = "bench" , commandSynopsis = "Run all/specific benchmarks." - , commandDescription = Just $ \pname -> wrapText $ - "If necessary (re)configures with `--enable-benchmarks` flag and" - ++ " builds the benchmarks.\n" - ++ "\n" - ++ "Remember that the benchmarks' dependencies must be installed if" - ++ " there are additional ones; e.g. with `" ++ pname - ++ " install --only-dependencies --enable-benchmarks`.\n" - ++ "\n" - ++ "By defining UserHooks in a custom Setup.hs, the package can" - ++ " define actions to be executed before and after running" - ++ " benchmarks.\n" + , commandDescription = Just $ \ _pname -> wrapText $ + testOrBenchmarkHelpText "benchmark" , commandNotes = Nothing , commandUsage = usageAlternatives "bench" [ "[FLAGS]" -- GitLab