@@ -15,7 +15,14 @@ import Data.Algorithm.Diff (PolyDiff (..), getGroupedDif
1515import Data.Maybe (isNothing )
1616import Distribution.Fields (pwarning )
1717import Distribution.PackageDescription (GenericPackageDescription )
18- import Distribution.Types.GenericPackageDescription (condLibrary )
18+ import Distribution.PackageDescription
19+ ( condLibrary
20+ , condSubLibraries
21+ , condForeignLibs
22+ , condExecutables
23+ , condTestSuites
24+ , condBenchmarks
25+ )
1926import Distribution.PackageDescription.Parsec (parseGenericPackageDescription )
2027import Distribution.PackageDescription.PrettyPrint (showGenericPackageDescription )
2128import Distribution.Parsec (PWarnType (.. ), PWarning (.. ), showPErrorWithSource , showPWarningWithSource )
@@ -35,7 +42,6 @@ import qualified Distribution.InstalledPackageInfo as IPI
3542
3643#ifdef MIN_VERSION_tree_diff
3744import Data.TreeDiff (ansiWlEditExpr , ediff , toExpr )
38- import Data.TreeDiff.Class (ToExpr )
3945import Data.TreeDiff.Golden (ediffGolden )
4046import Data.TreeDiff.Instances.Cabal ()
4147#endif
@@ -239,7 +245,16 @@ treeDiffGoldenTest fp = ediffGolden goldenTest "expr" exprFile $ do
239245 let res = withSource (PCabalFile (fp, contents)) $ parseGenericPackageDescription contents
240246 let (_, x) = runParseResult res
241247 case x of
242- Right gpd -> pure (toExpr gpd)
248+ Right gpd -> pure $ toExpr
249+ ( gpd
250+ -- Test accessors because they encapsulate the merging behaviour
251+ , condLibrary gpd
252+ , condSubLibraries gpd
253+ , condForeignLibs gpd
254+ , condExecutables gpd
255+ , condTestSuites gpd
256+ , condBenchmarks gpd
257+ )
243258 Left (_, errs) -> fail $ unlines $ " ERROR" : map (showPErrorWithSource . fmap renderCabalFileSource) (NE. toList errs)
244259 where
245260 input = " tests" </> " ParserTests" </> " regressions" </> fp
0 commit comments