golds-gym 0.6.0.0 → 0.7.0.0
raw patch · 3 files changed
+65/−2 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
+ Test.Hspec.BenchGolden: calculateIQR :: Vector Double -> Double
+ Test.Hspec.BenchGolden: calculateMAD :: Vector Double -> Double -> Double
+ Test.Hspec.BenchGolden: calculateRobustStats :: BenchConfig -> Vector Double -> Double -> (Double, Double, Double, [Double])
+ Test.Hspec.BenchGolden: calculateTrimmedMean :: Double -> Vector Double -> Double
+ Test.Hspec.BenchGolden: checkVariance :: BenchConfig -> GoldenStats -> GoldenStats -> [Warning]
+ Test.Hspec.BenchGolden: compareStats :: BenchConfig -> GoldenStats -> GoldenStats -> BenchResult
+ Test.Hspec.BenchGolden: detectOutliers :: Double -> Vector Double -> Double -> Double -> [Double]
+ Test.Hspec.BenchGolden: getActualPath :: FilePath -> FilePath -> String -> FilePath
+ Test.Hspec.BenchGolden: getGoldenPath :: FilePath -> FilePath -> String -> FilePath
+ Test.Hspec.BenchGolden: readGoldenFile :: FilePath -> IO (Either String GoldenStats)
+ Test.Hspec.BenchGolden: runBenchmark :: String -> BenchAction -> BenchConfig -> ArchConfig -> IO GoldenStats
+ Test.Hspec.BenchGolden: runBenchmarkWithRawTimings :: String -> BenchAction -> BenchConfig -> ArchConfig -> IO GoldenStats
+ Test.Hspec.BenchGolden: runSweep :: Show a => String -> BenchConfig -> Text -> [a] -> (a -> BenchAction) -> IO [(a, BenchResult, GoldenStats)]
+ Test.Hspec.BenchGolden: runSweepPoint :: Show a => String -> BenchConfig -> Text -> a -> BenchAction -> IO (BenchResult, GoldenStats)
+ Test.Hspec.BenchGolden: writeActualFile :: FilePath -> FilePath -> String -> GoldenStats -> IO ()
+ Test.Hspec.BenchGolden: writeGoldenFile :: FilePath -> FilePath -> String -> GoldenStats -> IO ()
Files
- CHANGELOG.md +11/−0
- golds-gym.cabal +1/−1
- src/Test/Hspec/BenchGolden.hs +53/−1
CHANGELOG.md view
@@ -1,5 +1,16 @@ # Changelog +## [0.7.0]++### Added++- **Standalone API exports** for using sweep runner and CSV export functions independently of hspec+ - Runner functions: `runBenchmark`, `runBenchmarkWithRawTimings`, `runSweep`, `runSweepPoint`+ - Comparison utilities: `compareStats`, `checkVariance`+ - Robust statistics: `calculateRobustStats`, `calculateTrimmedMean`, `calculateMAD`, `calculateIQR`, `detectOutliers`+ - Golden file I/O: `readGoldenFile`, `writeGoldenFile`, `writeActualFile`, `getGoldenPath`, `getActualPath`+ - Full re-export of `Test.Hspec.BenchGolden.CSV` module+ ## [0.6.0] ### Added
golds-gym.cabal view
@@ -1,6 +1,6 @@ cabal-version: 3.0 name: golds-gym-version: 0.6.0.0+version: 0.7.0.0 synopsis: Golden testing framework for performance benchmarks description: A Haskell framework for golden testing of timing benchmarks.
src/Test/Hspec/BenchGolden.hs view
@@ -206,11 +206,38 @@ -- * Low-Level API , runBenchGolden + -- * Standalone Runner API+ -- | These functions can be used independently of hspec for+ -- programmatic benchmarking workflows.+ , runBenchmark+ , runBenchmarkWithRawTimings+ , runSweep+ , runSweepPoint++ -- * Comparison Utilities+ , compareStats+ , checkVariance++ -- * Robust Statistics+ , calculateRobustStats+ , calculateTrimmedMean+ , calculateMAD+ , calculateIQR+ , detectOutliers++ -- * Golden File I/O+ , readGoldenFile+ , writeGoldenFile+ , writeActualFile+ , getGoldenPath+ , getActualPath+ -- * Lens-Based Expectations , module Test.Hspec.BenchGolden.Lenses -- * Re-exports , module Test.Hspec.BenchGolden.Arch+ , module Test.Hspec.BenchGolden.CSV ) where import Data.IORef@@ -225,7 +252,32 @@ import Test.Hspec.BenchGolden.Arch import qualified Test.Hspec.BenchGolden.Lenses as L import Test.Hspec.BenchGolden.Lenses hiding (Expectation)-import Test.Hspec.BenchGolden.Runner (runBenchGolden, runSweep, setAcceptGoldens, setSkipBenchmarks, nf, nfIO, nfAppIO, io)+import Test.Hspec.BenchGolden.CSV+import Test.Hspec.BenchGolden.Runner+ ( runBenchGolden+ , runBenchmark+ , runBenchmarkWithRawTimings+ , runSweep+ , runSweepPoint+ , compareStats+ , checkVariance+ , calculateRobustStats+ , calculateTrimmedMean+ , calculateMAD+ , calculateIQR+ , detectOutliers+ , readGoldenFile+ , writeGoldenFile+ , writeActualFile+ , getGoldenPath+ , getActualPath+ , setAcceptGoldens+ , setSkipBenchmarks+ , nf+ , nfIO+ , nfAppIO+ , io+ ) import Test.Hspec.BenchGolden.Types -- | Create a benchmark golden test with default configuration.