git.iko.soy/typeable/cabal2nix
on master help sign in
spec.hs: guarantee via test suite that no maintained package is marked "dontDistribute"
a0b3c54Peter Simons
src/Distribution/Nixpkgs/Haskell/FromCabal/Configuration/Maintainers.hs+3−3
@@ -11,9 +11,9 @@ globalPackageMaintainers = Map.unionsWith Set.union [ Map.singleton p (Set.singl
11maintainedPackages :: [(Identifier, [PackageName])]
11maintainedPackages :: [(Identifier, [PackageName])]
12maintainedPackages =
12maintainedPackages =
13 [ "simons" |->
13 [ "simons" |->
14− [ "archlinux", "cabal2arch", "cabal2nix", "funcmp", "hackage-db", "halipeto"
14+ [ "cabal2nix", "funcmp", "hackage-db", "hledger-interest", "hopenssl"
15− , "hledger-interest", "hopenssl", "hsdns", "hsemail", "hsyslog", "jailbreak-cabal"
15+ , "hsdns", "hsemail", "hsyslog", "jailbreak-cabal", "language-nix"
16− , "language-nix", "streamproc"
16+ , "streamproc"
17 ]
17 ]
18 , "gebner" |-> [ "hledger-diff" ]
18 , "gebner" |-> [ "hledger-diff" ]
19 ]
19 ]
test/spec.hs+8−1
@@ -1,10 +1,13 @@
1module Main ( main ) where
1module Main ( main ) where
2
2
3−import Internal.Lens
4import Control.DeepSeq
3import Control.DeepSeq
5import Control.Exception
4import Control.Exception
5+import qualified Data.Map as Map
6+import qualified Data.Set as Set
7+import Distribution.Nixpkgs.Haskell.FromCabal.Configuration.GHC7102
6import Distribution.Nixpkgs.License
8import Distribution.Nixpkgs.License
7import Distribution.Nixpkgs.Meta
9import Distribution.Nixpkgs.Meta
10+import Internal.Lens
8import Test.Hspec
11import Test.Hspec
9
12
10main :: IO ()
13main :: IO ()
@@ -21,5 +24,9 @@ main = do
21 , def & broken .~ undefined
24 , def & broken .~ undefined
22 ]
25 ]
23
26
27+ describe "Configuration records are consistent" $
28+ it "No maintained package is marked as \"dont-distribute\"" $
29+ Map.keysSet (packageMaintainers ghc7102) `Set.intersection` (dontDistributePackages ghc7102) `shouldSatisfy` Set.null
30+
24hitsBottom :: NFData a => a -> Expectation
31hitsBottom :: NFData a => a -> Expectation
25hitsBottom x = evaluate (rnf x) `shouldThrow` anyErrorCall
32hitsBottom x = evaluate (rnf x) `shouldThrow` anyErrorCall