diff options
-rw-r--r-- | Arbitrary.patch | 24 | ||||
-rw-r--r-- | Makefile | 8 |
2 files changed, 27 insertions, 5 deletions
diff --git a/Arbitrary.patch b/Arbitrary.patch new file mode 100644 index 0000000..11b6b51 --- /dev/null +++ b/Arbitrary.patch | |||
@@ -0,0 +1,24 @@ | |||
1 | --- Data/OpenPGP/Arbitrary.hs 2012-04-27 12:38:11.492411339 -0500 | ||
2 | +++ arb.s 2012-04-27 12:37:57.176469214 -0500 | ||
3 | @@ -19,8 +19,7 @@ | ||
4 | x6 <- arbitrary | ||
5 | x7 <- arbitrary | ||
6 | x8 <- arbitrary | ||
7 | - x9 <- arbitrary | ||
8 | - return (SignaturePacket x1 x2 x3 x4 x5 x6 x7 x8 x9) | ||
9 | + return (signaturePacket x1 x2 x3 x4 x5 x6 x7 x8) | ||
10 | 1 -> do x1 <- arbitrary | ||
11 | x2 <- arbitrary | ||
12 | x3 <- arbitrary | ||
13 | @@ -133,9 +132,8 @@ | ||
14 | 3 -> do x1 <- arbitrary | ||
15 | x2 <- arbitrary | ||
16 | return (TrustSignaturePacket x1 x2) | ||
17 | - 4 -> do x1 <- arbitrary | ||
18 | + 4 -> do x1 <- fmap (map toUpper . (`showHex` "")) (arbitrary :: Gen Word64) | ||
19 | return (IssuerPacket x1) | ||
20 | 5 -> do x1 <- arbitrary | ||
21 | - x2 <- arbitrary | ||
22 | - return (UnsupportedSignatureSubpacket x1 x2) | ||
23 | + return (UnsupportedSignatureSubpacket 105 x1) | ||
24 | _ -> error "FATAL ERROR: Arbitrary instance, logic bug" | ||
@@ -22,11 +22,9 @@ test: tests/suite | |||
22 | tests/suite: tests/suite.hs Data/OpenPGP.hs Data/OpenPGP/Internal.hs Data/OpenPGP/Arbitrary.hs | 22 | tests/suite: tests/suite.hs Data/OpenPGP.hs Data/OpenPGP/Internal.hs Data/OpenPGP/Arbitrary.hs |
23 | ghc --make $(GHCFLAGS) -o $@ $^ | 23 | ghc --make $(GHCFLAGS) -o $@ $^ |
24 | 24 | ||
25 | Data/OpenPGP/Arbitrary.hs: Data/OpenPGP.hs | 25 | Data/OpenPGP/Arbitrary.hs: Data/OpenPGP.hs Arbitrary.patch |
26 | derive -d Arbitrary -m Data.OpenPGP.Arbitrary -iData.OpenPGP -iTest.QuickCheck -iTest.QuickCheck.Instances -iNumeric -iData.Char -iData.Word -o $@ $^ | 26 | derive -d Arbitrary -m Data.OpenPGP.Arbitrary -iData.OpenPGP -iTest.QuickCheck -iTest.QuickCheck.Instances -iNumeric -iData.Char -iData.Word -o $@ Data/OpenPGP.hs |
27 | -printf ',s/SignaturePacket x1 x2 x3 x4 x5 x6 x7 x8 x9)$$/signaturePacket x1 x2 x3 x4 x5 x6 x7 x8)/g\n/signaturePacket/\n-d\nw\nq\n' | ed $@ | 27 | patch $@ Arbitrary.patch |
28 | -printf '/return (IssuerPacket/\n-d\ni\n 4 -> do x1 <- fmap (map toUpper . (`showHex` "")) (arbitrary :: Gen Word64)\n.\nw\nq\n' | ed $@ | ||
29 | -printf '/return (UnsupportedSignatureSubpacket/\n-d\n.s/x1/105/g\n.s/x2/x1/g\nw\nq\n' | ed $@ | ||
30 | 28 | ||
31 | report.html: tests/suite.hs Data/OpenPGP.hs Data/OpenPGP/Internal.hs | 29 | report.html: tests/suite.hs Data/OpenPGP.hs Data/OpenPGP/Internal.hs |
32 | -hlint $(HLINTFLAGS) --report $^ | 30 | -hlint $(HLINTFLAGS) --report $^ |