content: -- | Like "Test.Tasty.Hedgehog", but instead exposing an alternative
  -- implementation of 'testProperty' that does not induce deprecation warnings.
  module Test.Tasty.Hedgehog.Alt
    ( module TTH
    , testProperty
    ) where
  
  import Data.String (IsString(fromString))
  import Hedgehog (Property)
  import Test.Tasty (TestName, TestTree)
  import Test.Tasty.Hedgehog as TTH hiding (testProperty)
  
  -- | Create a 'T.TestTree' from a Hedgehog 'Property'.
  --
  -- Note that @tasty-hedgehog@'s version of 'testProperty' has been deprecated
  -- in favor of 'testPropertyNamed', whose second argument is intended to
  -- represent the name of a top-level 'Property' value to run in the event that
  -- the test fails. See https://github.com/qfpl/tasty-hedgehog/pull/42.
  --
  -- That being said, @what4@ currently does not define any of the properties
  -- that it tests as top-level values, and it would be a pretty significant
  -- undertaking to migrate all of the properties to top-level values. In the
  -- meantime, we avoid incurring deprecation warnings by defining our own
  -- version of 'testProperty'. The downside to this workaround is that if a
  -- property fails, the error message it will produce will likely suggest
  -- running ill-formed Haskell code, so users will have to use context clues to
  -- determine how to /actually/ reproduce the error.
  testProperty :: TestName -> Property -> TestTree
  testProperty name = testPropertyNamed name (fromString name)
  