{
  "duration" : 105.638,
  "empty" : False,
  "failCount" : 0,
  "passCount" : 25,
  "skipCount" : 0,
  "suites" : [
    {
      "cases" : [
        {
          "age" : 0,
          "className" : "org.subshare.core.crypto.EncrypterDecrypterStreamTest",
          "duration" : 12.914,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "symmetricWithoutIv",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : "\nsymmetricWithoutIv: cipherTransformation=AES_CBC_PKCS5PADDING\nsymmetricWithoutIv: Generating 6337940 random bytes plaintext took 185 ms.\n10:25:20.715 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\nsymmetricWithoutIv: Creating symmetric key took 2292 ms.\nsymmetricWithoutIv: Encrypting 6337940 bytes plaintext to 6337958 bytes ciphertext took 1049 ms.\nsymmetricWithoutIv: Decrypting 6337958 bytes ciphertext to 6337940 bytes plaintext took 318 ms\n...[truncated 37165 chars]...\n2275 bytes plaintext took 280 ms.\n\nasymmetricCombiWithRandomIv: asymmetricCipherTransformation=RSA_OAEPWITHSHA1ANDMGF1PADDING\nasymmetricCombiWithRandomIv: symmetricCipherTransformation=TWOFISH_CFB_NOPADDING\nasymmetricCombiWithRandomIv: Generating 7336108 random bytes plaintext took 38 ms.\nasymmetricCombiWithRandomIv: Encrypting 7336108 bytes plaintext to 7336652 bytes ciphertext took 375 ms.\nasymmetricCombiWithRandomIv: Decrypting 7336652 bytes ciphertext to 7336108 bytes plaintext took 362 ms.\n"
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.crypto.EncrypterDecrypterStreamTest",
          "duration" : 10.469,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "symmetricWithRandomIv",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : "\nsymmetricWithoutIv: cipherTransformation=AES_CBC_PKCS5PADDING\nsymmetricWithoutIv: Generating 6337940 random bytes plaintext took 185 ms.\n10:25:20.715 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\nsymmetricWithoutIv: Creating symmetric key took 2292 ms.\nsymmetricWithoutIv: Encrypting 6337940 bytes plaintext to 6337958 bytes ciphertext took 1049 ms.\nsymmetricWithoutIv: Decrypting 6337958 bytes ciphertext to 6337940 bytes plaintext took 318 ms\n...[truncated 37165 chars]...\n2275 bytes plaintext took 280 ms.\n\nasymmetricCombiWithRandomIv: asymmetricCipherTransformation=RSA_OAEPWITHSHA1ANDMGF1PADDING\nasymmetricCombiWithRandomIv: symmetricCipherTransformation=TWOFISH_CFB_NOPADDING\nasymmetricCombiWithRandomIv: Generating 7336108 random bytes plaintext took 38 ms.\nasymmetricCombiWithRandomIv: Encrypting 7336108 bytes plaintext to 7336652 bytes ciphertext took 375 ms.\nasymmetricCombiWithRandomIv: Decrypting 7336652 bytes ciphertext to 7336108 bytes plaintext took 362 ms.\n"
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.crypto.EncrypterDecrypterStreamTest",
          "duration" : 9.184,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "asymmetricPlain",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : "\nsymmetricWithoutIv: cipherTransformation=AES_CBC_PKCS5PADDING\nsymmetricWithoutIv: Generating 6337940 random bytes plaintext took 185 ms.\n10:25:20.715 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\nsymmetricWithoutIv: Creating symmetric key took 2292 ms.\nsymmetricWithoutIv: Encrypting 6337940 bytes plaintext to 6337958 bytes ciphertext took 1049 ms.\nsymmetricWithoutIv: Decrypting 6337958 bytes ciphertext to 6337940 bytes plaintext took 318 ms\n...[truncated 37165 chars]...\n2275 bytes plaintext took 280 ms.\n\nasymmetricCombiWithRandomIv: asymmetricCipherTransformation=RSA_OAEPWITHSHA1ANDMGF1PADDING\nasymmetricCombiWithRandomIv: symmetricCipherTransformation=TWOFISH_CFB_NOPADDING\nasymmetricCombiWithRandomIv: Generating 7336108 random bytes plaintext took 38 ms.\nasymmetricCombiWithRandomIv: Encrypting 7336108 bytes plaintext to 7336652 bytes ciphertext took 375 ms.\nasymmetricCombiWithRandomIv: Decrypting 7336652 bytes ciphertext to 7336108 bytes plaintext took 362 ms.\n"
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.crypto.EncrypterDecrypterStreamTest",
          "duration" : 13.334,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "asymmetricCombiWithRandomIv",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : "\nsymmetricWithoutIv: cipherTransformation=AES_CBC_PKCS5PADDING\nsymmetricWithoutIv: Generating 6337940 random bytes plaintext took 185 ms.\n10:25:20.715 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\nsymmetricWithoutIv: Creating symmetric key took 2292 ms.\nsymmetricWithoutIv: Encrypting 6337940 bytes plaintext to 6337958 bytes ciphertext took 1049 ms.\nsymmetricWithoutIv: Decrypting 6337958 bytes ciphertext to 6337940 bytes plaintext took 318 ms\n...[truncated 37165 chars]...\n2275 bytes plaintext took 280 ms.\n\nasymmetricCombiWithRandomIv: asymmetricCipherTransformation=RSA_OAEPWITHSHA1ANDMGF1PADDING\nasymmetricCombiWithRandomIv: symmetricCipherTransformation=TWOFISH_CFB_NOPADDING\nasymmetricCombiWithRandomIv: Generating 7336108 random bytes plaintext took 38 ms.\nasymmetricCombiWithRandomIv: Encrypting 7336108 bytes plaintext to 7336652 bytes ciphertext took 375 ms.\nasymmetricCombiWithRandomIv: Decrypting 7336652 bytes ciphertext to 7336108 bytes plaintext took 362 ms.\n"
        }
      ],
      "duration" : 45.901,
      "id" : None,
      "name" : "org.subshare.core.crypto.EncrypterDecrypterStreamTest",
      "stderr" : "",
      "stdout" : "\nsymmetricWithoutIv: cipherTransformation=AES_CBC_PKCS5PADDING\nsymmetricWithoutIv: Generating 6337940 random bytes plaintext took 185 ms.\n10:25:20.715 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\nsymmetricWithoutIv: Creating symmetric key took 2292 ms.\nsymmetricWithoutIv: Encrypting 6337940 bytes plaintext to 6337958 bytes ciphertext took 1049 ms.\nsymmetricWithoutIv: Decrypting 6337958 bytes ciphertext to 6337940 bytes plaintext took 318 ms\n...[truncated 37165 chars]...\n2275 bytes plaintext took 280 ms.\n\nasymmetricCombiWithRandomIv: asymmetricCipherTransformation=RSA_OAEPWITHSHA1ANDMGF1PADDING\nasymmetricCombiWithRandomIv: symmetricCipherTransformation=TWOFISH_CFB_NOPADDING\nasymmetricCombiWithRandomIv: Generating 7336108 random bytes plaintext took 38 ms.\nasymmetricCombiWithRandomIv: Encrypting 7336108 bytes plaintext to 7336652 bytes ciphertext took 375 ms.\nasymmetricCombiWithRandomIv: Decrypting 7336652 bytes ciphertext to 7336108 bytes plaintext took 362 ms.\n",
      "timestamp" : "2019-08-11T08:25:18"
    },
    {
      "cases" : [
        {
          "age" : 0,
          "className" : "org.subshare.core.file.EncryptedDataFileTest",
          "duration" : 1.972,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "writeReadSimpleEncryptedDataFile",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : ""
        }
      ],
      "duration" : 1.972,
      "id" : None,
      "name" : "org.subshare.core.file.EncryptedDataFileTest",
      "stderr" : "",
      "stdout" : "",
      "timestamp" : "2019-08-11T08:25:18"
    },
    {
      "cases" : [
        {
          "age" : 0,
          "className" : "org.subshare.core.gpg.GnuPgTest",
          "duration" : 6.086,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "encryptSignAndDecryptVerify",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : ">>> pub >>>\nkeyID: 16686379b818da48\nfingerprint: E8:3E:05:6D:B9:48:9E:0E:4B:56:05:89:16:68:63:79:B8:18:DA:48\nmasterKey: true\nencryptionKey: false\nuserID: Niklas Schiffler <nick@nightlabs.de>\nuserID: Niklas Schiffler <nschiffler@nightlabs.de>\nsignature.keyID: 16686379b818da48\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.keyID: 3a7e3c9cbce48dc2\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.keyID: ead508863c3db998\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.ke\n...[truncated 26887 chars]...\newizards.co>\nsignature.keyID: d7a92a24aa97ddbd\nsignature.signatureType: POSITIVE_CERTIFICATION\n<<< pub <<<\n>>> pub >>>\nkeyID: a58da7d810b74edf\nfingerprint: 6F:EA:38:9D:83:64:EE:9E:0C:D9:9B:86:A5:8D:A7:D8:10:B7:4E:DF\nmasterKey: false\nencryptionKey: true\nsignature.keyID: d7a92a24aa97ddbd\nsignature.signatureType: SUBKEY_BINDING\n<<< pub <<<\n>>> sec >>>\nkeyID: d7a92a24aa97ddbd\nuserID: Marco หงุ่ยตระกูล-Schulze (TEST) <marco@codewizards.co>\n<<< sec <<<\n>>> sec >>>\nkeyID: a58da7d810b74edf\n<<< sec <<<\n\n"
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.gpg.GnuPgTest",
          "duration" : 0.653,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "encryptAndDecrypt",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : ">>> pub >>>\nkeyID: 16686379b818da48\nfingerprint: E8:3E:05:6D:B9:48:9E:0E:4B:56:05:89:16:68:63:79:B8:18:DA:48\nmasterKey: true\nencryptionKey: false\nuserID: Niklas Schiffler <nick@nightlabs.de>\nuserID: Niklas Schiffler <nschiffler@nightlabs.de>\nsignature.keyID: 16686379b818da48\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.keyID: 3a7e3c9cbce48dc2\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.keyID: ead508863c3db998\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.ke\n...[truncated 26887 chars]...\newizards.co>\nsignature.keyID: d7a92a24aa97ddbd\nsignature.signatureType: POSITIVE_CERTIFICATION\n<<< pub <<<\n>>> pub >>>\nkeyID: a58da7d810b74edf\nfingerprint: 6F:EA:38:9D:83:64:EE:9E:0C:D9:9B:86:A5:8D:A7:D8:10:B7:4E:DF\nmasterKey: false\nencryptionKey: true\nsignature.keyID: d7a92a24aa97ddbd\nsignature.signatureType: SUBKEY_BINDING\n<<< pub <<<\n>>> sec >>>\nkeyID: d7a92a24aa97ddbd\nuserID: Marco หงุ่ยตระกูล-Schulze (TEST) <marco@codewizards.co>\n<<< sec <<<\n>>> sec >>>\nkeyID: a58da7d810b74edf\n<<< sec <<<\n\n"
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.gpg.GnuPgTest",
          "duration" : 0.395,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "readPubringGpg",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : ">>> pub >>>\nkeyID: 16686379b818da48\nfingerprint: E8:3E:05:6D:B9:48:9E:0E:4B:56:05:89:16:68:63:79:B8:18:DA:48\nmasterKey: true\nencryptionKey: false\nuserID: Niklas Schiffler <nick@nightlabs.de>\nuserID: Niklas Schiffler <nschiffler@nightlabs.de>\nsignature.keyID: 16686379b818da48\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.keyID: 3a7e3c9cbce48dc2\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.keyID: ead508863c3db998\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.ke\n...[truncated 26887 chars]...\newizards.co>\nsignature.keyID: d7a92a24aa97ddbd\nsignature.signatureType: POSITIVE_CERTIFICATION\n<<< pub <<<\n>>> pub >>>\nkeyID: a58da7d810b74edf\nfingerprint: 6F:EA:38:9D:83:64:EE:9E:0C:D9:9B:86:A5:8D:A7:D8:10:B7:4E:DF\nmasterKey: false\nencryptionKey: true\nsignature.keyID: d7a92a24aa97ddbd\nsignature.signatureType: SUBKEY_BINDING\n<<< pub <<<\n>>> sec >>>\nkeyID: d7a92a24aa97ddbd\nuserID: Marco หงุ่ยตระกูล-Schulze (TEST) <marco@codewizards.co>\n<<< sec <<<\n>>> sec >>>\nkeyID: a58da7d810b74edf\n<<< sec <<<\n\n"
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.gpg.GnuPgTest",
          "duration" : 0.042,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "readSecringGpg",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : ">>> pub >>>\nkeyID: 16686379b818da48\nfingerprint: E8:3E:05:6D:B9:48:9E:0E:4B:56:05:89:16:68:63:79:B8:18:DA:48\nmasterKey: true\nencryptionKey: false\nuserID: Niklas Schiffler <nick@nightlabs.de>\nuserID: Niklas Schiffler <nschiffler@nightlabs.de>\nsignature.keyID: 16686379b818da48\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.keyID: 3a7e3c9cbce48dc2\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.keyID: ead508863c3db998\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.ke\n...[truncated 26887 chars]...\newizards.co>\nsignature.keyID: d7a92a24aa97ddbd\nsignature.signatureType: POSITIVE_CERTIFICATION\n<<< pub <<<\n>>> pub >>>\nkeyID: a58da7d810b74edf\nfingerprint: 6F:EA:38:9D:83:64:EE:9E:0C:D9:9B:86:A5:8D:A7:D8:10:B7:4E:DF\nmasterKey: false\nencryptionKey: true\nsignature.keyID: d7a92a24aa97ddbd\nsignature.signatureType: SUBKEY_BINDING\n<<< pub <<<\n>>> sec >>>\nkeyID: d7a92a24aa97ddbd\nuserID: Marco หงุ่ยตระกูล-Schulze (TEST) <marco@codewizards.co>\n<<< sec <<<\n>>> sec >>>\nkeyID: a58da7d810b74edf\n<<< sec <<<\n\n"
        }
      ],
      "duration" : 7.1759996,
      "id" : None,
      "name" : "org.subshare.core.gpg.GnuPgTest",
      "stderr" : "",
      "stdout" : ">>> pub >>>\nkeyID: 16686379b818da48\nfingerprint: E8:3E:05:6D:B9:48:9E:0E:4B:56:05:89:16:68:63:79:B8:18:DA:48\nmasterKey: true\nencryptionKey: false\nuserID: Niklas Schiffler <nick@nightlabs.de>\nuserID: Niklas Schiffler <nschiffler@nightlabs.de>\nsignature.keyID: 16686379b818da48\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.keyID: 3a7e3c9cbce48dc2\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.keyID: ead508863c3db998\nsignature.signatureType: POSITIVE_CERTIFICATION\nsignature.ke\n...[truncated 26887 chars]...\newizards.co>\nsignature.keyID: d7a92a24aa97ddbd\nsignature.signatureType: POSITIVE_CERTIFICATION\n<<< pub <<<\n>>> pub >>>\nkeyID: a58da7d810b74edf\nfingerprint: 6F:EA:38:9D:83:64:EE:9E:0C:D9:9B:86:A5:8D:A7:D8:10:B7:4E:DF\nmasterKey: false\nencryptionKey: true\nsignature.keyID: d7a92a24aa97ddbd\nsignature.signatureType: SUBKEY_BINDING\n<<< pub <<<\n>>> sec >>>\nkeyID: d7a92a24aa97ddbd\nuserID: Marco หงุ่ยตระกูล-Schulze (TEST) <marco@codewizards.co>\n<<< sec <<<\n>>> sec >>>\nkeyID: a58da7d810b74edf\n<<< sec <<<\n\n",
      "timestamp" : "2019-08-11T08:25:16"
    },
    {
      "cases" : [
        {
          "age" : 0,
          "className" : "org.subshare.core.io.LimitedInputStreamTest",
          "duration" : 2.382,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "randomLengthWithUnderlyingSameLength",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : ""
        }
      ],
      "duration" : 2.382,
      "id" : None,
      "name" : "org.subshare.core.io.LimitedInputStreamTest",
      "stderr" : "",
      "stdout" : "",
      "timestamp" : "2019-08-11T08:25:14"
    },
    {
      "cases" : [
        {
          "age" : 0,
          "className" : "org.subshare.core.io.MultiInputStreamTest",
          "duration" : 3.861,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "randomCombi",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : ""
        }
      ],
      "duration" : 3.861,
      "id" : None,
      "name" : "org.subshare.core.io.MultiInputStreamTest",
      "stderr" : "",
      "stdout" : "",
      "timestamp" : "2019-08-11T08:25:14"
    },
    {
      "cases" : [
        {
          "age" : 0,
          "className" : "org.subshare.core.pgp.PgpTest",
          "duration" : 6.416,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "inlineSignThenEncryptAndDecryptThenVerify",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : "10:25:17.903 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\n10:25:17.980 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n10:25:18.132 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: dirString=build/tiSRV11DhO6Kbgqn0c37hw/.gnupg\n10:25:18.147 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: result=/home/tomcat/.jenkins/workspace/org.subshare/org.subshare/org.subshare.core/build/tiSRV11DhO6Kbgqn0c37hw/.gnupg\n10:25:20.113 [Test \n...[truncated 27265 chars]...\n:54) [gradle-base-services-3.1.jar:3.1]\n\tat org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40) [gradle-base-services-3.1.jar:3.1]\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_222]\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_222]\n\tat java.lang.Thread.run(Thread.java:748) [na:1.8.0_222]\n10:25:32.518 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n"
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.pgp.PgpTest",
          "duration" : 0.108,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "signAndVerifyViaPgpSignable",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : "10:25:17.903 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\n10:25:17.980 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n10:25:18.132 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: dirString=build/tiSRV11DhO6Kbgqn0c37hw/.gnupg\n10:25:18.147 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: result=/home/tomcat/.jenkins/workspace/org.subshare/org.subshare/org.subshare.core/build/tiSRV11DhO6Kbgqn0c37hw/.gnupg\n10:25:20.113 [Test \n...[truncated 27265 chars]...\n:54) [gradle-base-services-3.1.jar:3.1]\n\tat org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40) [gradle-base-services-3.1.jar:3.1]\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_222]\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_222]\n\tat java.lang.Thread.run(Thread.java:748) [na:1.8.0_222]\n10:25:32.518 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n"
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.pgp.PgpTest",
          "duration" : 3.893,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "inlineSignAndVerify",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : "10:25:17.903 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\n10:25:17.980 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n10:25:18.132 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: dirString=build/tiSRV11DhO6Kbgqn0c37hw/.gnupg\n10:25:18.147 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: result=/home/tomcat/.jenkins/workspace/org.subshare/org.subshare/org.subshare.core/build/tiSRV11DhO6Kbgqn0c37hw/.gnupg\n10:25:20.113 [Test \n...[truncated 27265 chars]...\n:54) [gradle-base-services-3.1.jar:3.1]\n\tat org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40) [gradle-base-services-3.1.jar:3.1]\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_222]\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_222]\n\tat java.lang.Thread.run(Thread.java:748) [na:1.8.0_222]\n10:25:32.518 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n"
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.pgp.PgpTest",
          "duration" : 0.192,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "exportImportPublicKey",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : "10:25:17.903 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\n10:25:17.980 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n10:25:18.132 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: dirString=build/tiSRV11DhO6Kbgqn0c37hw/.gnupg\n10:25:18.147 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: result=/home/tomcat/.jenkins/workspace/org.subshare/org.subshare/org.subshare.core/build/tiSRV11DhO6Kbgqn0c37hw/.gnupg\n10:25:20.113 [Test \n...[truncated 27265 chars]...\n:54) [gradle-base-services-3.1.jar:3.1]\n\tat org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40) [gradle-base-services-3.1.jar:3.1]\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_222]\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_222]\n\tat java.lang.Thread.run(Thread.java:748) [na:1.8.0_222]\n10:25:32.518 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n"
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.pgp.PgpTest",
          "duration" : 2.129,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "detachedSignAndVerify",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : "10:25:17.903 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\n10:25:17.980 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n10:25:18.132 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: dirString=build/tiSRV11DhO6Kbgqn0c37hw/.gnupg\n10:25:18.147 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: result=/home/tomcat/.jenkins/workspace/org.subshare/org.subshare/org.subshare.core/build/tiSRV11DhO6Kbgqn0c37hw/.gnupg\n10:25:20.113 [Test \n...[truncated 27265 chars]...\n:54) [gradle-base-services-3.1.jar:3.1]\n\tat org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40) [gradle-base-services-3.1.jar:3.1]\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_222]\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_222]\n\tat java.lang.Thread.run(Thread.java:748) [na:1.8.0_222]\n10:25:32.518 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n"
        }
      ],
      "duration" : 12.738,
      "id" : None,
      "name" : "org.subshare.core.pgp.PgpTest",
      "stderr" : "",
      "stdout" : "10:25:17.903 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\n10:25:17.980 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n10:25:18.132 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: dirString=build/tiSRV11DhO6Kbgqn0c37hw/.gnupg\n10:25:18.147 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: result=/home/tomcat/.jenkins/workspace/org.subshare/org.subshare/org.subshare.core/build/tiSRV11DhO6Kbgqn0c37hw/.gnupg\n10:25:20.113 [Test \n...[truncated 27265 chars]...\n:54) [gradle-base-services-3.1.jar:3.1]\n\tat org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40) [gradle-base-services-3.1.jar:3.1]\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_222]\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_222]\n\tat java.lang.Thread.run(Thread.java:748) [na:1.8.0_222]\n10:25:32.518 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n",
      "timestamp" : "2019-08-11T08:25:19"
    },
    {
      "cases" : [
        {
          "age" : 0,
          "className" : "org.subshare.core.user.AddDuplicateUserRepoKeyPublicKeyToUserTest",
          "duration" : 3.454,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "addAllDifferentUserRepoKeyPublicKeysToUser",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : ""
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.user.AddDuplicateUserRepoKeyPublicKeyToUserTest",
          "duration" : 0.006,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "addAllSameUserRepoKeyPublicKeyInCollectionToUser",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : ""
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.user.AddDuplicateUserRepoKeyPublicKeyToUserTest",
          "duration" : 0.016,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "addSameUserRepoKeyPublicKeyTwiceToUser",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : ""
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.user.AddDuplicateUserRepoKeyPublicKeyToUserTest",
          "duration" : 0.003,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "addDifferentUserRepoKeyPublicKeysToUser",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : ""
        }
      ],
      "duration" : 3.479,
      "id" : None,
      "name" : "org.subshare.core.user.AddDuplicateUserRepoKeyPublicKeyToUserTest",
      "stderr" : "",
      "stdout" : "",
      "timestamp" : "2019-08-11T08:25:14"
    },
    {
      "cases" : [
        {
          "age" : 0,
          "className" : "org.subshare.core.user.UserRegistryTest",
          "duration" : 2.661,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "addUser",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : "10:25:23.514 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\n10:25:23.609 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n10:25:23.693 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: dirString=build/FuHoThTsxAFPns6p7hWfkQ/.gnupg\n10:25:23.695 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: result=/home/tomcat/.jenkins/workspace/org.subshare/org.subshare/org.subshare.core/build/FuHoThTsxAFPns6p7hWfkQ/.gnupg\n10:25:23.927 [Test \n...[truncated 13824 chars]...\ntance.\n10:25:45.117 [Test worker] DEBUG o.s.c.p.PgpRegistry - getPgpOrFail: returning existing Pgp instance.\n10:25:48.761 [Test worker] INFO  o.s.c.c.KeyFactory - Creating asymmetric key pair with defaults took 3640 ms.\n10:25:48.777 [Test worker] DEBUG o.s.c.p.PgpRegistry - getPgpOrFail: returning existing Pgp instance.\n10:25:48.895 [Test worker] DEBUG o.s.c.p.PgpRegistry - getPgpOrFail: returning existing Pgp instance.\n10:25:48.950 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n"
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.user.UserRegistryTest",
          "duration" : 8.746,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "testGpgKeyTrustLevels",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : "10:25:23.514 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\n10:25:23.609 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n10:25:23.693 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: dirString=build/FuHoThTsxAFPns6p7hWfkQ/.gnupg\n10:25:23.695 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: result=/home/tomcat/.jenkins/workspace/org.subshare/org.subshare/org.subshare.core/build/FuHoThTsxAFPns6p7hWfkQ/.gnupg\n10:25:23.927 [Test \n...[truncated 13824 chars]...\ntance.\n10:25:45.117 [Test worker] DEBUG o.s.c.p.PgpRegistry - getPgpOrFail: returning existing Pgp instance.\n10:25:48.761 [Test worker] INFO  o.s.c.c.KeyFactory - Creating asymmetric key pair with defaults took 3640 ms.\n10:25:48.777 [Test worker] DEBUG o.s.c.p.PgpRegistry - getPgpOrFail: returning existing Pgp instance.\n10:25:48.895 [Test worker] DEBUG o.s.c.p.PgpRegistry - getPgpOrFail: returning existing Pgp instance.\n10:25:48.950 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n"
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.user.UserRegistryTest",
          "duration" : 13.952,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "initUserRegistryFromGpgKeys",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : "10:25:23.514 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\n10:25:23.609 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n10:25:23.693 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: dirString=build/FuHoThTsxAFPns6p7hWfkQ/.gnupg\n10:25:23.695 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: result=/home/tomcat/.jenkins/workspace/org.subshare/org.subshare/org.subshare.core/build/FuHoThTsxAFPns6p7hWfkQ/.gnupg\n10:25:23.927 [Test \n...[truncated 13824 chars]...\ntance.\n10:25:45.117 [Test worker] DEBUG o.s.c.p.PgpRegistry - getPgpOrFail: returning existing Pgp instance.\n10:25:48.761 [Test worker] INFO  o.s.c.c.KeyFactory - Creating asymmetric key pair with defaults took 3640 ms.\n10:25:48.777 [Test worker] DEBUG o.s.c.p.PgpRegistry - getPgpOrFail: returning existing Pgp instance.\n10:25:48.895 [Test worker] DEBUG o.s.c.p.PgpRegistry - getPgpOrFail: returning existing Pgp instance.\n10:25:48.950 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n"
        }
      ],
      "duration" : 25.359001,
      "id" : None,
      "name" : "org.subshare.core.user.UserRegistryTest",
      "stderr" : "",
      "stdout" : "10:25:23.514 [Test worker] INFO  c.c.c.c.o.OioRegistry - Preferred implementation 'IoFileFactory' for fileFactory\n10:25:23.609 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n10:25:23.693 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: dirString=build/FuHoThTsxAFPns6p7hWfkQ/.gnupg\n10:25:23.695 [Test worker] DEBUG o.s.c.p.g.GnuPgDir - getFile: result=/home/tomcat/.jenkins/workspace/org.subshare/org.subshare/org.subshare.core/build/FuHoThTsxAFPns6p7hWfkQ/.gnupg\n10:25:23.927 [Test \n...[truncated 13824 chars]...\ntance.\n10:25:45.117 [Test worker] DEBUG o.s.c.p.PgpRegistry - getPgpOrFail: returning existing Pgp instance.\n10:25:48.761 [Test worker] INFO  o.s.c.c.KeyFactory - Creating asymmetric key pair with defaults took 3640 ms.\n10:25:48.777 [Test worker] DEBUG o.s.c.p.PgpRegistry - getPgpOrFail: returning existing Pgp instance.\n10:25:48.895 [Test worker] DEBUG o.s.c.p.PgpRegistry - getPgpOrFail: returning existing Pgp instance.\n10:25:48.950 [Test worker] INFO  o.s.c.p.PgpRegistry - clearCache: entered.\n",
      "timestamp" : "2019-08-11T08:25:23"
    },
    {
      "cases" : [
        {
          "age" : 0,
          "className" : "org.subshare.core.user.UserRepoKeyRingVsPublicKeysUserImplTest",
          "duration" : 2.723,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "firstAddPublicKeysThenCreateUserRepoKeyRing",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : ""
        },
        {
          "age" : 0,
          "className" : "org.subshare.core.user.UserRepoKeyRingVsPublicKeysUserImplTest",
          "duration" : 0.047,
          "errorDetails" : None,
          "errorStackTrace" : None,
          "failedSince" : 0,
          "name" : "firstCreateUserRepoKeyRingThenAddPublicKeys",
          "skipped" : False,
          "skippedMessage" : None,
          "status" : "PASSED",
          "stderr" : "",
          "stdout" : ""
        }
      ],
      "duration" : 2.77,
      "id" : None,
      "name" : "org.subshare.core.user.UserRepoKeyRingVsPublicKeysUserImplTest",
      "stderr" : "",
      "stdout" : "",
      "timestamp" : "2019-08-11T08:25:15"
    }
  ]
}