diff --git a/src/test/java/org/apache/maven/artifact/manager/DefaultWagonManagerTest.java b/src/test/java/org/apache/maven/artifact/manager/DefaultWagonManagerTest.java
index 79f39bb..04891ef 100644
--- a/src/test/java/org/apache/maven/artifact/manager/DefaultWagonManagerTest.java
+++ b/src/test/java/org/apache/maven/artifact/manager/DefaultWagonManagerTest.java
@@ -57,6 +57,10 @@
 public class DefaultWagonManagerTest
     extends PlexusTestCase
 {
+    private static final String UNKNOWN_BUT_VALID_SIGNATURE_ASC = "/gpg/unknown-but-valid-signature.asc";
+
+    private static final String TEST_SIG_FILE = "/gpg/other-test-signature.asc";
+
     private DefaultWagonManager wagonManager;
 
     private TransferListener transferListener = new Debug();
@@ -69,7 +73,7 @@
         super.setUp();
 
         wagonManager = (DefaultWagonManager) lookup( WagonManager.ROLE );
-        wagonManager.registerPublicKeyRing( getClass().getResourceAsStream( "/pubring.gpg" ) );
+        wagonManager.registerPublicKeyRing( getClass().getResourceAsStream( "/gpg/pubring.gpg" ) );
         
         artifactFactory = (ArtifactFactory) lookup( ArtifactFactory.ROLE );
     }
@@ -793,7 +797,7 @@
         
         Artifact artifact = createTestArtifact( "target/test-data/signature-verification", "jar" );
                 
-        createWagonWithSignedContent( "/other-test-signature.asc" );
+        createWagonWithSignedContent( TEST_SIG_FILE );
 
         try
         {
@@ -819,7 +823,7 @@
         
         Artifact artifact = createTestArtifact( "target/test-data/signature-verification", "jar" );
                 
-        createWagonWithSignedContent( "/other-test-signature.asc" );
+        createWagonWithSignedContent( TEST_SIG_FILE );
 
         wagonManager.getArtifact( artifact, repo, true );
     }
@@ -831,7 +835,7 @@
         
         Artifact artifact = createTestArtifact( "target/test-data/signature-verification", "jar" );
                 
-        createWagonWithSignedContent( "/other-test-signature.asc" );
+        createWagonWithSignedContent( TEST_SIG_FILE );
 
         wagonManager.getArtifact( artifact, repo, true );
     }
@@ -851,7 +855,7 @@
         
         Artifact artifact = createTestArtifact( "target/test-data/signature-verification", "jar" );
         
-        createWagonWithSignedContent( "/test-signature.asc" );
+        createWagonWithSignedContent( "/gpg/test-signature.asc" );
 
         wagonManager.getArtifact( artifact, repo, true );
     }
@@ -909,7 +913,7 @@
         
         Artifact artifact = createTestArtifact( "target/test-data/signature-verification", "jar" );
                 
-        createWagonWithSignedContent( "/unknown-but-valid-signature.asc" );
+        createWagonWithSignedContent( UNKNOWN_BUT_VALID_SIGNATURE_ASC );
 
         try
         {
@@ -929,7 +933,7 @@
         
         Artifact artifact = createTestArtifact( "target/test-data/signature-verification", "jar" );
                 
-        createWagonWithSignedContent( "/unknown-but-valid-signature.asc" );
+        createWagonWithSignedContent( UNKNOWN_BUT_VALID_SIGNATURE_ASC );
 
         wagonManager.getArtifact( artifact, repo, true );
     }
@@ -941,7 +945,7 @@
         
         Artifact artifact = createTestArtifact( "target/test-data/signature-verification", "jar" );
                 
-        createWagonWithSignedContent( "/unknown-but-valid-signature.asc" );
+        createWagonWithSignedContent( UNKNOWN_BUT_VALID_SIGNATURE_ASC );
 
         wagonManager.getArtifact( artifact, repo, true );
     }
diff --git a/src/test/java/org/apache/maven/artifact/pgp/PublicKeyRingTest.java b/src/test/java/org/apache/maven/artifact/pgp/PublicKeyRingTest.java
index c641851..aa532f2 100644
--- a/src/test/java/org/apache/maven/artifact/pgp/PublicKeyRingTest.java
+++ b/src/test/java/org/apache/maven/artifact/pgp/PublicKeyRingTest.java
@@ -39,7 +39,7 @@
         super.setUp();
 
         keyRing = new PublicKeyRing();
-        keyRing.addPublicKeyRing( getClass().getResourceAsStream( "/pubring.gpg" ) );
+        keyRing.addPublicKeyRing( getClass().getResourceAsStream( "/gpg/pubring.gpg" ) );
     }
 
     public void testPublicKeys()
diff --git a/src/test/java/org/apache/maven/artifact/pgp/SecretKeyRingTest.java b/src/test/java/org/apache/maven/artifact/pgp/SecretKeyRingTest.java
index 34f3838..8a7ee7f 100644
--- a/src/test/java/org/apache/maven/artifact/pgp/SecretKeyRingTest.java
+++ b/src/test/java/org/apache/maven/artifact/pgp/SecretKeyRingTest.java
@@ -41,7 +41,7 @@
         super.setUp();
 
         keyRing = new SecretKeyRing();
-        keyRing.addSecretKeyRing( getClass().getResourceAsStream( "/secring.gpg" ), PASSWORD.toCharArray() );
+        keyRing.addSecretKeyRing( getClass().getResourceAsStream( "/gpg/secring.gpg" ), PASSWORD.toCharArray() );
     }
 
     public void testSecretKeys()
diff --git a/src/test/java/org/apache/maven/artifact/pgp/StreamingSignerTest.java b/src/test/java/org/apache/maven/artifact/pgp/StreamingSignerTest.java
index 379140d..16e6a3a 100644
--- a/src/test/java/org/apache/maven/artifact/pgp/StreamingSignerTest.java
+++ b/src/test/java/org/apache/maven/artifact/pgp/StreamingSignerTest.java
@@ -32,8 +32,8 @@
 public class StreamingSignerTest
     extends TestCase
 {
-    private static final String FILE = "/test-input.txt";
-
+    private static final String FILE = "/gpg/test-input.txt";
+    
     private String keyId = "A7D16BD4";
 
     private SecretKeyRing keyRing;
@@ -42,16 +42,18 @@
 
     private PublicKeyRing publicKeyRing;
 
+    private SignatureVerifier verifier = new SignatureVerifier();
+
     protected void setUp()
         throws Exception
     {
         super.setUp();
 
         keyRing = new SecretKeyRing();
-        keyRing.addSecretKeyRing( getClass().getResourceAsStream( "/secring.gpg" ), PASSWORD.toCharArray() );
+        keyRing.addSecretKeyRing( getClass().getResourceAsStream( "/gpg/secring.gpg" ), PASSWORD.toCharArray() );
 
         publicKeyRing = new PublicKeyRing();
-        publicKeyRing.addPublicKeyRing( getClass().getResourceAsStream( "/pubring.gpg" ) );
+        publicKeyRing.addPublicKeyRing( getClass().getResourceAsStream( "/gpg/pubring.gpg" ) );
     }
 
     public void testSignDataDetachedBinary()
@@ -93,7 +95,7 @@
     public void testVerifySignatureDetachedBinaryGpg()
         throws IOException, OpenPgpException
     {
-        InputStream signature = getClass().getResourceAsStream( "/test-input.txt.sig" );
+        InputStream signature = getClass().getResourceAsStream( "/gpg/test-input.txt.sig" );
         StreamingSignatureVerifier verifier = new StreamingSignatureVerifier( signature, publicKeyRing );
 
         InputStream in = getClass().getResourceAsStream( FILE );
@@ -161,7 +163,7 @@
     public void testVerifySignatureDetachedAscii()
         throws IOException, OpenPgpException
     {
-        InputStream signature = getClass().getResourceAsStream( "/test-input.txt.asc" );
+        InputStream signature = getClass().getResourceAsStream( "/gpg/test-input.txt.asc" );
         StreamingSignatureVerifier verifier = new StreamingSignatureVerifier( signature, publicKeyRing );
 
         InputStream in = getClass().getResourceAsStream( FILE );
@@ -189,4 +191,149 @@
         assertNotNull( "check we got a status", status );
         assertTrue( "check it was successful", status.isValid() );
     }
+
+    public void testVerifyMultipleSignatureDetachedAsciiBothGood()
+        throws IOException, OpenPgpException
+    {
+        SignatureStatus status =
+            verifier.verifyDetachedSignature( getClass().getResourceAsStream( FILE ),
+                                              getClass().getResourceAsStream( "/gpg/test-input-both-good.asc" ),
+                                              publicKeyRing );
+
+        assertNotNull( "check we got a status", status );
+        assertTrue( "check it was successful", status.isValid() );
+    }
+
+    public void testVerifyMultipleSignatureDetachedAsciiOneGoodOneBad()
+        throws IOException, OpenPgpException
+    {
+        SignatureStatus status =
+            verifier.verifyDetachedSignature( getClass().getResourceAsStream( FILE ),
+                                              getClass().getResourceAsStream( "/gpg/test-input-one-good-one-bad.asc" ),
+                                              publicKeyRing );
+
+        assertNotNull( "check we got a status", status );
+        assertTrue( "check it was successful", status.isValid() );
+    }
+
+    public void testVerifyMultipleSignatureDetachedAsciiOneGoodOneMissing()
+        throws IOException, OpenPgpException
+    {
+        SignatureStatus status =
+            verifier.verifyDetachedSignature( getClass().getResourceAsStream( FILE ),
+                                              getClass().getResourceAsStream( "/gpg/test-input-one-good-one-missing.asc" ),
+                                              publicKeyRing );
+
+        assertNotNull( "check we got a status", status );
+        assertTrue( "check it was successful", status.isValid() );
+    }
+
+    public void testVerifyMultipleSignatureDetachedAsciiOneBadOneGood()
+        throws IOException, OpenPgpException
+    {
+        SignatureStatus status =
+            verifier.verifyDetachedSignature( getClass().getResourceAsStream( FILE ),
+                                              getClass().getResourceAsStream( "/gpg/test-input-one-bad-one-good.asc" ),
+                                              publicKeyRing );
+
+        assertNotNull( "check we got a status", status );
+        assertFalse( "check it was not successful", status.isValid() );
+    }
+
+    /* Requires Bouncycastle 140 to work
+    public void testVerifyMultipleSignatureDetachedAsciiOneMissingOneGood()
+        throws IOException, OpenPgpException
+    {
+        SignatureStatus status =
+            verifier.verifyDetachedSignature( getClass().getResourceAsStream( FILE ),
+                                              getClass().getResourceAsStream( "/gpg/test-input-one-missing-one-good.asc" ),
+                                              publicKeyRing );
+
+        assertNotNull( "check we got a status", status );
+        assertTrue( "check it was successful", status.isValid() );
+    }*/
+
+    public void testVerifyMultipleSignatureDetachedAsciiBothMissing()
+        throws IOException, OpenPgpException
+    {
+        try
+        {
+            verifier.verifyDetachedSignature( getClass().getResourceAsStream( FILE ),
+                                              getClass().getResourceAsStream( "/gpg/test-input-both-missing.asc" ),
+                                              publicKeyRing );
+            fail( "Expected failure due to missing keys" );
+        }
+        catch ( UnknownKeyException e )
+        {
+            assertTrue( true );
+        }
+    }
+
+    public void testVerifyDualSignatureDetachedAsciiBothGood()
+        throws IOException, OpenPgpException
+    {
+        SignatureStatus status =
+            verifier.verifyDetachedSignature( getClass().getResourceAsStream( FILE ),
+                                              getClass().getResourceAsStream( "/gpg/test-input-dual-both-good.asc" ),
+                                              publicKeyRing );
+
+        assertNotNull( "check we got a status", status );
+        assertTrue( "check it was successful", status.isValid() );
+    }
+
+    public void testVerifyDualSignatureDetachedAsciiOneGoodOneMissing()
+        throws IOException, OpenPgpException
+    {
+        SignatureStatus status =
+            verifier.verifyDetachedSignature(
+                                              getClass().getResourceAsStream( FILE ),
+                                              getClass().getResourceAsStream(
+                                                                              "/gpg/test-input-dual-one-good-one-missing.asc" ),
+                                              publicKeyRing );
+
+        assertNotNull( "check we got a status", status );
+        assertTrue( "check it was successful", status.isValid() );
+    }
+
+    public void testVerifyDualSignatureDetachedAsciiBad()
+        throws IOException, OpenPgpException
+    {
+        SignatureStatus status =
+            verifier.verifyDetachedSignature( getClass().getResourceAsStream( FILE ),
+                                              getClass().getResourceAsStream( "/gpg/test-input-dual-bad.asc" ),
+                                              publicKeyRing );
+
+        assertNotNull( "check we got a status", status );
+        assertFalse( "check it was not successful", status.isValid() );
+    }
+
+    public void testVerifyDualSignatureDetachedAsciiOneMissingOneGood()
+        throws IOException, OpenPgpException
+    {
+        SignatureStatus status =
+            verifier.verifyDetachedSignature(
+                                              getClass().getResourceAsStream( FILE ),
+                                              getClass().getResourceAsStream(
+                                                                              "/gpg/test-input-dual-one-missing-one-good.asc" ),
+                                              publicKeyRing );
+
+        assertNotNull( "check we got a status", status );
+        assertTrue( "check it was successful", status.isValid() );
+    }
+
+    public void testVerifyDualSignatureDetachedAsciiBothMissing()
+        throws IOException, OpenPgpException
+    {
+        try
+        {
+            verifier.verifyDetachedSignature( getClass().getResourceAsStream( FILE ),
+                                              getClass().getResourceAsStream( "/gpg/test-input-dual-both-missing.asc" ),
+                                              publicKeyRing );
+            fail( "Expected failure due to missing keys" );
+        }
+        catch ( UnknownKeyException e )
+        {
+            assertTrue( true );
+        }
+    }
 }
diff --git a/src/test/java/org/apache/maven/artifact/pgp/WagonOpenPgpObserverTest.java b/src/test/java/org/apache/maven/artifact/pgp/WagonOpenPgpObserverTest.java
index 3f6b7a3..d7e718f 100644
--- a/src/test/java/org/apache/maven/artifact/pgp/WagonOpenPgpObserverTest.java
+++ b/src/test/java/org/apache/maven/artifact/pgp/WagonOpenPgpObserverTest.java
@@ -53,14 +53,14 @@
         super.setUp();
 
         keyRing = new PublicKeyRing();
-        keyRing.addPublicKeyRing( getClass().getResourceAsStream( "/pubring.gpg" ) );
+        keyRing.addPublicKeyRing( getClass().getResourceAsStream( "/gpg/pubring.gpg" ) );
     }
 
     public void testSign()
         throws Exception
     {
         SecretKeyRing keyRing = new SecretKeyRing();
-        keyRing.addSecretKeyRing( getClass().getResourceAsStream( "/secring.gpg" ), "cop".toCharArray() );
+        keyRing.addSecretKeyRing( getClass().getResourceAsStream( "/gpg/secring.gpg" ), "cop".toCharArray() );
 
         WagonOpenPgpSignerObserver observer = new WagonOpenPgpSignerObserver( keyId, keyRing, false );
 
@@ -76,7 +76,7 @@
 
         wagon.connect( repository );
 
-        wagon.put( getTestFile( "src/test/resources/test-input.txt" ), "test-input.txt" );
+        wagon.put( getTestFile( "src/test/resources/gpg/test-input.txt" ), "/gpg/test-input.txt" );
 
         byte[] signature = observer.getActualSignature();
 
@@ -87,7 +87,7 @@
         // check signature
         SignatureVerifier verifier = new SignatureVerifier();
         SignatureStatus status =
-            verifier.verifyDetachedSignature( getClass().getResourceAsStream( "/test-input.txt" ),
+            verifier.verifyDetachedSignature( getClass().getResourceAsStream( "/gpg/test-input.txt" ),
                                               new ByteArrayInputStream( signature ), this.keyRing );
 
         assertNotNull( "check we got a status", status );
@@ -97,9 +97,9 @@
     public void testVerify()
         throws Exception
     {
-        verifySignature( "/test-input.txt.sig" );
+        verifySignature( "/gpg/test-input.txt.sig" );
 
-        verifySignature( "/test-input.txt.asc" );
+        verifySignature( "/gpg/test-input.txt.asc" );
     }
 
     private void verifySignature( String name )
@@ -121,7 +121,7 @@
 
         wagon.connect( repository );
 
-        wagon.get( "test-input.txt", new File( tempDir, "test-input.txt" ) );
+        wagon.get( "gpg/test-input.txt", new File( tempDir, "gpg/test-input.txt" ) );
 
         SignatureStatus status = observer.getStatus();
 
diff --git a/src/test/resources/other-test-signature.asc b/src/test/resources/gpg/other-test-signature.asc
similarity index 100%
rename from src/test/resources/other-test-signature.asc
rename to src/test/resources/gpg/other-test-signature.asc
diff --git a/src/test/resources/gpg/pubring.gpg b/src/test/resources/gpg/pubring.gpg
new file mode 100644
index 0000000..40f0b68
--- /dev/null
+++ b/src/test/resources/gpg/pubring.gpg
Binary files differ
diff --git a/src/test/resources/gpg/secring.gpg b/src/test/resources/gpg/secring.gpg
new file mode 100644
index 0000000..ffff1dc
--- /dev/null
+++ b/src/test/resources/gpg/secring.gpg
Binary files differ
diff --git a/src/test/resources/gpg/test-input-both-good.asc b/src/test/resources/gpg/test-input-both-good.asc
new file mode 100644
index 0000000..5fa820f
--- /dev/null
+++ b/src/test/resources/gpg/test-input-both-good.asc
@@ -0,0 +1,14 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYpjoACgkQTusOMqfRa9QHzQCcCgVPdvgvHdrx56sEnAObfO3c
+ckwAoIKGa98HKe8JN8XVfQ8X6/mZn2bO
+=I2nX
+-----END PGP SIGNATURE-----
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYpi0ACgkQCtKsbObCq2iiVwCgq0yJxh9uQ69jpLftNZPeuUAj
+ugcAn1qQzUfTJMhcZh40MNLExLIsnq8E
+=ucI7
+-----END PGP SIGNATURE-----
diff --git a/src/test/resources/gpg/test-input-both-missing.asc b/src/test/resources/gpg/test-input-both-missing.asc
new file mode 100644
index 0000000..d33ba88
--- /dev/null
+++ b/src/test/resources/gpg/test-input-both-missing.asc
@@ -0,0 +1,14 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYpo0ACgkQBZj5naYwbBrQWgCdENYJcFdZsw4ZVEcuE0z4rFkL
+YVcAoLbjjLnW5CjLF5zPcn6W+NObZVuJ
+=BWR2
+-----END PGP SIGNATURE-----
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYpqMACgkQxbsDNW2stZZ0QgCeLxkeswLeGVhDH/+iC4Ihnm52
+/OsAniVI81Cu0n4YjWJdkoSg8WgpqErv
+=Wfpf
+-----END PGP SIGNATURE-----
diff --git a/src/test/resources/gpg/test-input-dual-bad.asc b/src/test/resources/gpg/test-input-dual-bad.asc
new file mode 100644
index 0000000..3b24c98
--- /dev/null
+++ b/src/test/resources/gpg/test-input-dual-bad.asc
@@ -0,0 +1,8 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYqCwACgkQCtKsbObCq2hkYQCdFBjaLYR97sYhVTgl3xp62PO8
+qbwAn0RlkDf/m7DBLmAG/CZEPMqC31fdiEYEABECAAYFAkiYqCwACgkQTusOMqfR
+a9RkYQCgnHV2+uBwcGqs8QtJloREKae9FnMAn1Ds94uqWjOA8SdZHexFDOitlPpV
+=TQxq
+-----END PGP SIGNATURE-----
diff --git a/src/test/resources/gpg/test-input-dual-both-good.asc b/src/test/resources/gpg/test-input-dual-both-good.asc
new file mode 100644
index 0000000..1f80c84
--- /dev/null
+++ b/src/test/resources/gpg/test-input-dual-both-good.asc
@@ -0,0 +1,8 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYqFgACgkQCtKsbObCq2gYhQCffU+bu19kgKuj6C+fo1rMb5YW
+sz0AoML1X/l3SAg0JepYWHqLTnIV3ILbiEYEABECAAYFAkiYqFgACgkQTusOMqfR
+a9QYhQCfR4T/kS0yPx5156BvD0/Mj4Hb7kAAnj2NChb8V/+c4TyxQeENis9HmymG
+=7W8J
+-----END PGP SIGNATURE-----
diff --git a/src/test/resources/gpg/test-input-dual-both-missing.asc b/src/test/resources/gpg/test-input-dual-both-missing.asc
new file mode 100644
index 0000000..a7c0103
--- /dev/null
+++ b/src/test/resources/gpg/test-input-dual-both-missing.asc
@@ -0,0 +1,8 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYp+cACgkQxbsDNW2stZaPcwCdFs81SUWfXaoa0bIc37UA1Oa6
+TkkAnRdXzC2sernL6kL6oJNbrUIJ4lOSiEYEABECAAYFAkiYp+cACgkQBZj5naYw
+bBqPcwCfZyfZ79VMn6/hJmB5S+vpqxQh5V4AoMbxERdYf8gL5INSj4GAiBW2ejHT
+=o52W
+-----END PGP SIGNATURE-----
diff --git a/src/test/resources/gpg/test-input-dual-one-good-one-missing.asc b/src/test/resources/gpg/test-input-dual-one-good-one-missing.asc
new file mode 100644
index 0000000..1c24140
--- /dev/null
+++ b/src/test/resources/gpg/test-input-dual-one-good-one-missing.asc
@@ -0,0 +1,8 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYqJgACgkQxbsDNW2stZYuUgCfZbxsiidmuAXFxJu1bot/AuDm
++z0An0BbSCakfNfoI7A4l0bPRHiQ4U+biEYEABECAAYFAkiYqJgACgkQTusOMqfR
+a9QuUgCfTL9VTRJ6f54SkKdughTo3GlMpe4An3JIRpjhw6w91CZDmCqqZgoTABUt
+=FJGo
+-----END PGP SIGNATURE-----
diff --git a/src/test/resources/gpg/test-input-dual-one-missing-one-good.asc b/src/test/resources/gpg/test-input-dual-one-missing-one-good.asc
new file mode 100644
index 0000000..db31626
--- /dev/null
+++ b/src/test/resources/gpg/test-input-dual-one-missing-one-good.asc
@@ -0,0 +1,8 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYqLUACgkQTusOMqfRa9RPkwCfWXlGd7Z0m2okaNK9wbHLhBht
+15AAn22Yy4P72MGa4GkVs5DJ5pkztAHYiEYEABECAAYFAkiYqLUACgkQxbsDNW2s
+tZZPkwCfZYkaU3ui15I68yN6C2tSq9LcIS4AoLEMVRttEitbt4SXc/pP+gWnuihn
+=7g+W
+-----END PGP SIGNATURE-----
diff --git a/src/test/resources/gpg/test-input-one-bad-one-good.asc b/src/test/resources/gpg/test-input-one-bad-one-good.asc
new file mode 100644
index 0000000..d8a46c7
--- /dev/null
+++ b/src/test/resources/gpg/test-input-one-bad-one-good.asc
@@ -0,0 +1,14 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYqR0ACgkQTusOMqfRa9T4DACfZk9aKnBIhhJmac/Co4LtPVs3
+2zQAoJnxBDkQ3Z3il+1PyCKBRPHFxqHE
+=doQp
+-----END PGP SIGNATURE-----
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYpi0ACgkQCtKsbObCq2iiVwCgq0yJxh9uQ69jpLftNZPeuUAj
+ugcAn1qQzUfTJMhcZh40MNLExLIsnq8E
+=ucI7
+-----END PGP SIGNATURE-----
diff --git a/src/test/resources/gpg/test-input-one-good-one-bad.asc b/src/test/resources/gpg/test-input-one-good-one-bad.asc
new file mode 100644
index 0000000..a74e6ef
--- /dev/null
+++ b/src/test/resources/gpg/test-input-one-good-one-bad.asc
@@ -0,0 +1,14 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYpi0ACgkQCtKsbObCq2iiVwCgq0yJxh9uQ69jpLftNZPeuUAj
+ugcAn1qQzUfTJMhcZh40MNLExLIsnq8E
+=ucI7
+-----END PGP SIGNATURE-----
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYqR0ACgkQTusOMqfRa9T4DACfZk9aKnBIhhJmac/Co4LtPVs3
+2zQAoJnxBDkQ3Z3il+1PyCKBRPHFxqHE
+=doQp
+-----END PGP SIGNATURE-----
diff --git a/src/test/resources/gpg/test-input-one-good-one-missing.asc b/src/test/resources/gpg/test-input-one-good-one-missing.asc
new file mode 100644
index 0000000..dca1d56
--- /dev/null
+++ b/src/test/resources/gpg/test-input-one-good-one-missing.asc
@@ -0,0 +1,14 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYpi0ACgkQCtKsbObCq2iiVwCgq0yJxh9uQ69jpLftNZPeuUAj
+ugcAn1qQzUfTJMhcZh40MNLExLIsnq8E
+=ucI7
+-----END PGP SIGNATURE-----
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYpqMACgkQxbsDNW2stZZ0QgCeLxkeswLeGVhDH/+iC4Ihnm52
+/OsAniVI81Cu0n4YjWJdkoSg8WgpqErv
+=Wfpf
+-----END PGP SIGNATURE-----
diff --git a/src/test/resources/gpg/test-input-one-missing-one-good.asc b/src/test/resources/gpg/test-input-one-missing-one-good.asc
new file mode 100644
index 0000000..b71e183
--- /dev/null
+++ b/src/test/resources/gpg/test-input-one-missing-one-good.asc
@@ -0,0 +1,14 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYpqMACgkQxbsDNW2stZZ0QgCeLxkeswLeGVhDH/+iC4Ihnm52
+/OsAniVI81Cu0n4YjWJdkoSg8WgpqErv
+=Wfpf
+-----END PGP SIGNATURE-----
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.8 (Darwin)
+
+iEYEABECAAYFAkiYpi0ACgkQCtKsbObCq2iiVwCgq0yJxh9uQ69jpLftNZPeuUAj
+ugcAn1qQzUfTJMhcZh40MNLExLIsnq8E
+=ucI7
+-----END PGP SIGNATURE-----
diff --git a/src/test/resources/test-input.txt b/src/test/resources/gpg/test-input.txt
similarity index 100%
rename from src/test/resources/test-input.txt
rename to src/test/resources/gpg/test-input.txt
diff --git a/src/test/resources/test-input.txt.asc b/src/test/resources/gpg/test-input.txt.asc
similarity index 100%
rename from src/test/resources/test-input.txt.asc
rename to src/test/resources/gpg/test-input.txt.asc
diff --git a/src/test/resources/test-input.txt.sig b/src/test/resources/gpg/test-input.txt.sig
similarity index 100%
rename from src/test/resources/test-input.txt.sig
rename to src/test/resources/gpg/test-input.txt.sig
Binary files differ
diff --git a/src/test/resources/test-signature.asc b/src/test/resources/gpg/test-signature.asc
similarity index 100%
rename from src/test/resources/test-signature.asc
rename to src/test/resources/gpg/test-signature.asc
diff --git a/src/test/resources/unknown-but-valid-signature.asc b/src/test/resources/gpg/unknown-but-valid-signature.asc
similarity index 100%
rename from src/test/resources/unknown-but-valid-signature.asc
rename to src/test/resources/gpg/unknown-but-valid-signature.asc
diff --git a/src/test/resources/pubring.gpg b/src/test/resources/pubring.gpg
deleted file mode 100644
index 77de26a..0000000
--- a/src/test/resources/pubring.gpg
+++ /dev/null
Binary files differ
diff --git a/src/test/resources/secring.gpg b/src/test/resources/secring.gpg
deleted file mode 100644
index 8c15de9..0000000
--- a/src/test/resources/secring.gpg
+++ /dev/null
Binary files differ
