hix-0.7.0: lib/Hix/Managed/Cabal/Mock.hs
module Hix.Managed.Cabal.Mock where
import Distribution.Simple (buildCompilerId, unknownCompilerInfo)
import Distribution.Simple.Compiler (AbiTag (NoAbiTag))
import Distribution.Solver.Types.PkgConfigDb (PkgConfigDb (NoPkgConfigDb))
import Distribution.System (Arch (X86_64), OS (Linux), Platform (Platform))
import Hix.Managed.Data.ManagedPackage (ManagedPackage)
import Hix.Managed.Data.Packages (Packages)
import qualified Hix.Managed.Cabal.Data.Packages
import Hix.Managed.Cabal.Data.Packages (GhcPackages (GhcPackages))
import qualified Hix.Managed.Cabal.Data.SolveResources
import Hix.Managed.Cabal.Data.SolveResources (SolveResources (SolveResources))
import Hix.Managed.Cabal.Init (emptySolveFlags)
import Hix.Managed.Cabal.Mock.InstalledPackage (mockInstalledPackageIndex)
import qualified Hix.Managed.Cabal.Mock.SourcePackage as SourcePackage
import Hix.Managed.Cabal.Mock.SourcePackage (mockSourcePackageDb)
mockSolveResources ::
Packages ManagedPackage ->
GhcPackages ->
SolveResources
mockSolveResources packages GhcPackages {installed, available} = do
SolveResources {
conf = def,
flags = emptySolveFlags,
platform = Platform X86_64 Linux,
compiler = unknownCompilerInfo buildCompilerId NoAbiTag,
pkgConfigDb = NoPkgConfigDb,
installedPkgIndex = mockInstalledPackageIndex installed,
sourcePkgDb = SourcePackage.dbWithManaged packages (mockSourcePackageDb available),
solverParams = id
}