-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Contributed functionality for Hspec
--   
--   Contributed functionality for Hspec
@package hspec-contrib
@version 0.5.2


module Test.Hspec.Contrib.HUnit

-- | Convert a HUnit test suite to a spec. This can be used to run existing
--   HUnit tests with Hspec.
fromHUnitTest :: Test -> Spec

-- | <tt>specListFromHUnitTest</tt> is similar to <a>fromHUnitTest</a>, but
--   it constructs a list of <a>SpecTree</a>s instead of a <a>Spec</a>.
specListFromHUnitTest :: Test -> [SpecTree ()]

module Test.Hspec.Contrib.Mocks.V1

-- | Create a <a>test stub</a> action.
--   
--   <pre>
--   &gt;&gt;&gt; stub &lt;- stubAction ["foo", "bar", "baz"]
--   
--   &gt;&gt;&gt; stub
--   "foo"
--   
--   &gt;&gt;&gt; stub
--   "bar"
--   
--   &gt;&gt;&gt; stub
--   "baz"
--   
--   &gt;&gt;&gt; stub
--   *** Exception: HUnitFailure ...stubAction: no values left...
--   </pre>
stubAction :: HasCallStack => [a] -> IO (IO a)

-- | Create a <a>test spy</a> action.
--   
--   Record any arguments that are passed to that action.
--   
--   <pre>
--   &gt;&gt;&gt; withSpy $ \ spy -&gt; spy "foo" &gt;&gt; spy "bar" &gt;&gt; spy "baz"
--   ["foo","bar","baz"]
--   </pre>
withSpy :: ((a -> IO ()) -> IO ()) -> IO [a]


module Test.Hspec.Contrib.Retry

-- | Retry evaluating example that may be failed until success.
retryWith :: Int -> a -> Retry a
instance Test.Hspec.Core.Example.Example a => Test.Hspec.Core.Example.Example (Test.Hspec.Contrib.Retry.Retry a)
