Browse Source

added androidTests

JNI-44
Edouard Tisserant 6 years ago
parent
commit
a8f1a80f07
31 changed files with 1320 additions and 0 deletions
  1. +4
    -0
      .hgignore
  2. +31
    -0
      androidTests/app/assets/6FF00E97_pub.asc
  3. +58
    -0
      androidTests/app/assets/6FF00E97_sec.asc
  4. +31
    -0
      androidTests/app/assets/70DCF575_pub.asc
  5. +58
    -0
      androidTests/app/assets/70DCF575_sec.asc
  6. +31
    -0
      androidTests/app/assets/C9C2EE39_pub.asc
  7. +58
    -0
      androidTests/app/assets/C9C2EE39_sec.asc
  8. +36
    -0
      androidTests/app/assets/msg.asc
  9. +20
    -0
      androidTests/app/assets/msg1.asc
  10. +605
    -0
      androidTests/app/assets/msg2.asc
  11. +17
    -0
      androidTests/app/assets/msg3.asc
  12. +64
    -0
      androidTests/app/assets/pgp_mime_msg.txt
  13. +11
    -0
      androidTests/app/assets/signature.asc
  14. +10
    -0
      androidTests/app/assets/t1.txt
  15. BIN
      androidTests/app/assets/t1.txt.gpg
  16. +1
    -0
      androidTests/app/assets/t2.txt
  17. +31
    -0
      androidTests/app/build.gradle
  18. +21
    -0
      androidTests/app/src/main/AndroidManifest.xml
  19. +169
    -0
      androidTests/app/src/main/java/com/pep/k9/MainActivity.java
  20. +11
    -0
      androidTests/app/src/main/res/layout/activity_main.xml
  21. +6
    -0
      androidTests/app/src/main/res/menu/menu_main.xml
  22. BIN
      androidTests/app/src/main/res/mipmap-hdpi/ic_launcher.png
  23. BIN
      androidTests/app/src/main/res/mipmap-mdpi/ic_launcher.png
  24. BIN
      androidTests/app/src/main/res/mipmap-xhdpi/ic_launcher.png
  25. BIN
      androidTests/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
  26. +6
    -0
      androidTests/app/src/main/res/values-w820dp/dimens.xml
  27. +5
    -0
      androidTests/app/src/main/res/values/dimens.xml
  28. +6
    -0
      androidTests/app/src/main/res/values/strings.xml
  29. +8
    -0
      androidTests/app/src/main/res/values/styles.xml
  30. +19
    -0
      androidTests/build.gradle
  31. +3
    -0
      androidTests/settings.gradle

+ 4
- 0
.hgignore View File

@ -38,6 +38,10 @@ android/local.properties
android/gradle.properties
android/pEpJNIAdapter.iml
androidTests/.gradle
androidTests/local.properties
androidTests/gradle.properties
syntax: regexp
android/external/[^.]*

+ 31
- 0
androidTests/app/assets/6FF00E97_pub.asc View File

@ -0,0 +1,31 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1
mQENBFV4PbEBCADTmjGDsoti/VPoZ3w2oCjLBNq1jWIGMkbiUgCGUQjVsNrSZ80U
7RmA3Pcu3hhiVQNBGA32vL6NPhSJPanVd77s6XVZg+Gq7llbGGkuIxSkJvVrWzYc
kjMsAInlJ8Ll0kHHbgATOlO5OtQ21bLCfWZPSq74HEVzQAPtCGYFvOgpCktKTjms
GXe9ysiYN8CEWMVNbDqXmvFhi4UifpITeQBVM7dtlBw5SoeLZpsHIlKF5i5WPkNw
7nuMag/+lRpOqvPumhOmqybWHuAR/Dq0pOOPh6BzZ4OzOBL96aWUe1dcnIZeBEm8
oRxYC3nN95YsjtrLK4BQZTYDTzeh8FIccsLdABEBAAG0RHBFcCBUZXN0IEFsaWNl
ICh0ZXN0IGtleSBkb24ndCB1c2UpIDxwZXAudGVzdC5hbGljZUBwZXAtcHJvamVj
dC5vcmc+iQE4BBMBAgAiBQJVeD2xAhsDBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIX
gAAKCRCpQR0Xb/AOl5JjCADEBoordVBCmphG6EY+u5yjj/xeQN4Kc1Rl06Ii6m18
4hnF/osxnTicr+A6Hpwf8whXULuSwXvfuOsVOQdIc2e+1zrecTqyNUWuRs3T7uZ2
5dvROg1XZuajMPf3wh5lX2rPRhOt3UNXJjQfc1MSYXpmT+PoqFXBzMqJUo2DYcw6
MSZekoWkIzFXG2s2YNwILwPnLnMesFtzU6mn9qhfoFsQA6aku8AbG+SNehNZvGuu
UiBmu+4UYNoc/RJa7vNWECv9qZQsT820CuoOZS9MFV7nQlgkGoPerlGXil0vkOG1
gsuQD8QkuaTQpn1vYvRcC0P27qLfrqlPv2Ih2hoIV9tJuQENBFV4PbEBCADQwKB9
7t2B2nweprfpbH8QgLCzJYaAMrpcaUaJqm+J3C9eaepRXTXGtst1zaLbooG2b3QH
fDzI2CEYMxO5ynmmSBOe06VKw/PagBzK5ur/eOycl0ZPFSXdlDj30BQPvRdJvLS4
OTMdoKoGpsZDY4hOYj67oHo3TFtrLJCvZruPARkI/pXiOX9FqH4wquNNaYW1qwk/
Wq3k/gOMwp0xjvc01MbadaiiVquJk6jjPrd2wP4FYxIADAllzMpwFAJSWvgCfmqV
bukYOnaCp3QRQXQkc78TdqGXbD5uwJzkxxiEsMmiGT+7RDLIKwXheKmmGXSwgi8m
+EndUiqMTvOdjyUBABEBAAGJAR8EGAECAAkFAlV4PbECGwwACgkQqUEdF2/wDpeQ
VQgArnfQ7uvG0po/CPepbrdytI2n63U5dm/MFMsvXpZYVYLO/mROc+akZCPwS0yx
tSMKK+tYM9leQx58r89c+K1GeZoko7xziwmZbt5zEITiJp5L6gg7k6CczskPMx07
gY8ooscBC3cFJhz1A0o73BKPR7J0iupaNmI3sTd1/RNQm6573kGGwc4m2bcQttvN
5ox8yimn2QnK3D+6A+Mmzi3Rd11tF+tAWJIsfaEgDJZn9mOdUkV2ckoSk1K5Pptp
XSsKLOL+e2WuxSMIr8AVeRqkbYYK6UzX6qIgQIrMOuaXqtRaNxNccnzIS1YtdtYE
RSnTaBotNp/FF2wfI7BNFP6r0A==
=wSWl
-----END PGP PUBLIC KEY BLOCK-----

+ 58
- 0
androidTests/app/assets/6FF00E97_sec.asc View File

@ -0,0 +1,58 @@
-----BEGIN PGP PRIVATE KEY BLOCK-----
Version: GnuPG v1
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
S1YtdtYERSnTaBotNp/FF2wfI7BNFP6r0A==
=kV7k
-----END PGP PRIVATE KEY BLOCK-----

+ 31
- 0
androidTests/app/assets/70DCF575_pub.asc View File

@ -0,0 +1,31 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1
mQENBFV4PvYBCADR7kaFLsLFDuGE11u3q2K6eTspAkczU1ahPnSXaVGOIbCQGuL6
MiDET4vXAY/y1picqJ8OuIe2k0S8eDRIYIHF8arhgTkZQny6Cfy7nheWNnxSZBIo
K/8Zqa9dbNBWwHp2l7LOqM3hS8a0O1mQQrrMlV55qnXWJQFaI3P/nlaGUfe+5DuD
tDom8xJicE8an5nhbsyKyNxlYVePVsQVFiLHMVoNZ6eyfyb/nTBdAdQ0KLZM0vDC
8df/VTevytf/PgunziqD67HuDx8Uxyeht5REIrcBEyrgtnvTkVjZJ2MpbXcY2kam
36OH8T4JoBkxlqjU6UiiqV+k04QzAvmp2/anABEBAAG0Q3BFcCBUZXN0IEpvaG4g
KHRlc3Qga2V5LCBkb24ndCB1c2UpIDxwZXAudGVzdC5qb2huQHBlcC1wcm9qZWN0
Lm9yZz6JATgEEwECACIFAlV4PvYCGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheA
AAoJEBNc1tFw3PV1rQsIAIGxmMHjAQqsZB7CQAdEdWxM+YkGZPAOqMYZrVaf+wiI
kMP25B9JaSYRccYbI+k+Vg19l5vqVv/ixgDLntZWJFt3LakKkTY3R8ghhKImlVVo
gj6ASho0rUoHLpCLuo0t+N+DGTjBOi1tu90U9L3poPsgYOij6pw226M6zXsvsk4h
Uuljq9ZysKbjGEoqahOLf7p7gjrtCceOQfqnXKNE9QlpQtw/pnwTa97gVR4l7DaK
UEXzASobjEywfCoMH9SaoVL5M/FsIkMSasg6H+J4U8YdxE5x2BRbTQe+90/RlVg5
bNCK9nMKBMBr0KeeJn9JZRykwKOgV5vZl0lQ5BEKEia5AQ0EVXg+9gEIAMEvDo98
6hv9pk4YKLLRhZVyp3KiDQ2ymjdl8v/kh2f3s2roNhF5o2pTfq51oTCIex0Wiyri
7o/1V21e3wYS14uRzF86a5cvmOdR/w1+NuW7hoW9RWBEaC7O4N/TtU7AAQmav8mA
CJBHwdoE98BKmJNAG3SOh/kSdh5HZrL5Yrx4tX7dkJOXI2Jql0IS4R37dmAX5K+9
MqIFDJf0I73iiBGr0v6mbOCEonBznF/6H905Ci2uPZ38DHixN2cyToZg7CkTfC7K
8xmHFv1lcRzlTMyNC0xOlirYPPlhnGslyiyTJqHVyrH/Z788x6wV9ifPnDZfGmRk
C2V8HTBRQhdIuREAEQEAAYkBHwQYAQIACQUCVXg+9gIbDAAKCRATXNbRcNz1dUKv
B/46nvjKNTtPJXidArkPP8rY57kEVWg8spkqBWIeV3AGMzh9qVfRRv4Pfl9IgHaO
vXkoKip9D4zvgpB566gIiE3B3Y4vEzToiBxqVo5L5gzmbG6J1cQdHz6rmKSHPf4z
rNQbCxaGXIJ697mlfKIiIBrV67sH3Xm2l6ECp8PiQGImLFaBI2SbuLSHSz1nC910
ln8AhSYAYlxYBdateo3IZwAZSQibCF/xChvnDcDjZa9GWo3iMlSPAoKXacbrdenj
F/X9yyoeTtTNTuNDGr9Sms72wU+SAYErLDcik1pRhNDmLXEjQC7eBT9WFemkfOVj
mDKjonb9yAz6knxC5kRE5ChX
=csku
-----END PGP PUBLIC KEY BLOCK-----

+ 58
- 0
androidTests/app/assets/70DCF575_sec.asc View File

@ -0,0 +1,58 @@
-----BEGIN PGP PRIVATE KEY BLOCK-----
Version: GnuPG v1
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
FemkfOVjmDKjonb9yAz6knxC5kRE5ChX
=7r/5
-----END PGP PRIVATE KEY BLOCK-----

+ 31
- 0
androidTests/app/assets/C9C2EE39_pub.asc View File

@ -0,0 +1,31 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1
mQENBFV4Pl8BCACuukQLwsHftH5jkVsSL7COFhamNsEE8lZ8MG1f1Rx5ztPuZTna
YXyWODgpj2Bxz0TcP+Q17GbLKse7TWD1k9i1RzLWz8ZSCLYq2TtjLWPleVuGGWeq
Y3tTWHC/nFbivolNPA0mL2038TGdBolPaZiPZ4P8wuQVYNfDqi4utcezGDNS8OHh
EPhfyKKoSM79HLoUPc6xsfimxPMrylI/i8bFvfDYz5vmydefvAxNhqjLH3Gmhj1p
nInsraEiyh7Y2zAxCfr6hD9nky7WixBinKFFhQpcUu1o+Ie6UGwLVbTyRMOcRsob
yahqA/m2HfDRj1Y+n8HHqsQkB2BtmMYXla3jABEBAAG0QXBFcCBUZXN0IEJvYiAo
dGVzdCBrZXksIGRvbid0IHVzZSkgPHBlcC50ZXN0LmJvYkBwZXAtcHJvamVjdC5v
cmc+iQE4BBMBAgAiBQJVeD5fAhsDBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAK
CRBZv/SIycLuOaR5CACj3E6ykNqjGS5PzghYfLJso6j954QzLwOozTzU/3/HWH4l
C3Jmfr0pGI51KZ6Xevrp3N9SxRqruJCFRtwNeH3ujIgDh/UHCUEsP/+d74SOenIB
YGUKE1OJmh8/LQdkNSc6JNdzJjDWdKeh6cAMFvWju/Nqtl/l0FGspQU9dmCMtzkK
gmwoKZW56aEVZ2lTxqNEo1aQ+lLrNueBq0/Q5kAVEzUG7Ufm19wXjWenEMeeElX3
UAGudLJuckx7uD8W/yBwqrRAbaCSeZf6RVBLz96ekjWrVfMnmjkPuQPPt5cs98Rx
QTpxk7b6xLaWXymhA6cYU+FAW4DpbjfJjMWIFDcKuQENBFV4Pl8BCADKQ2SV6gjR
5N69xVdiCaefjwobrXR1niuBHBNTXMJwPk2xv+e7fY28RK1BzODYCzBhpltvRoCc
Ji9S7Rqyz81nbxnw/1TaKtn6dDDhZPVHjN3vasDueM6xTEfEihNc0Owf4wz9SBju
redUVkdTxU7FxSgVP10dOxhdtkjWjGW1DF6WlYA8BAIEdbpoheJHz3NFkhPQ8Dlz
o7Ioe2t7vrTztcBX11o2e+FPOq1SmhEr78wbROAyCVAXK+8qDh4zDq8iAMZK/KnZ
rm6pP00+iBRcb+JQgn3Gn+hU0lgE3YB9kBJLeWaHxEPNnnNNvW/BMl53ctf8Ip+p
zpA1K/S23KU7ABEBAAGJAR8EGAECAAkFAlV4Pl8CGwwACgkQWb/0iMnC7jlqbwf/
dP4sXDRiR5uVMh5WhOn1S8MnHZhLWAQ6fI9/KxggCPhgY6zAgszPMutzBsQlV4P6
QX30d99IMJrzGYYxjN7Z6fF7us9u103+GTzGQH7/47JG0eSTSaKQvqEaN1+6M/OB
ZKcwNW6xHa+lhIS5nJGV3Oey/RFQwucBujQbtyjDN3aGshwqzhJXFBlF3RqFzLxu
AJmeOVedaKvdPjRhgFuxhkicUhVp27qXQCpDpkUkj9hb75yCE6pAzopO6s65yHsn
FyehwgyMrfpTPlPM86B1LH4IEwSaOrEJSdHnnFD8nnSIjRyfra3dsI/RVNmYX8Ek
MGICzoR4lWcYFShJQM6QQg==
=ugiE
-----END PGP PUBLIC KEY BLOCK-----

+ 58
- 0
androidTests/app/assets/C9C2EE39_sec.asc View File

@ -0,0 +1,58 @@
-----BEGIN PGP PRIVATE KEY BLOCK-----
Version: GnuPG v1
lQOYBFV4Pl8BCACuukQLwsHftH5jkVsSL7COFhamNsEE8lZ8MG1f1Rx5ztPuZTna
YXyWODgpj2Bxz0TcP+Q17GbLKse7TWD1k9i1RzLWz8ZSCLYq2TtjLWPleVuGGWeq
Y3tTWHC/nFbivolNPA0mL2038TGdBolPaZiPZ4P8wuQVYNfDqi4utcezGDNS8OHh
EPhfyKKoSM79HLoUPc6xsfimxPMrylI/i8bFvfDYz5vmydefvAxNhqjLH3Gmhj1p
nInsraEiyh7Y2zAxCfr6hD9nky7WixBinKFFhQpcUu1o+Ie6UGwLVbTyRMOcRsob
yahqA/m2HfDRj1Y+n8HHqsQkB2BtmMYXla3jABEBAAEAB/wKqiU2GVr1zJ5iqGZ7
hS9zDk3imXjAuwpK7GlfAVk9snSRpycK7IrxeX8s3J30qsOxGv5sYvOUcGK35kCs
eV78RyfthmM8WMcs28ATgE7WtkhyUAGmTwnuq9+Ldz9MYEUHUrEaXnTkBocFmd0I
Qx5qZLvHHtDtRx4HfAJZz0/5kj8KyKYB5cYsvRoLYdCWuxeIbJu5FYtHHBywNFnZ
Qt8STaQqZPD0gPh3ahzY8KYJFZbSFpGfaH0AX5dkFpUJdyad4R2c9ZOmnaK3W0Ba
cdQSdi66iiT0UG7f6ECR9HfI+nVfshOVLZA90p+LqLW51S7iBeFAoZyYfKuNrE9b
pV3VBADNf9Ec2CJ3jo2LrTrkN1HkcjmwdosFQWaDaXtRmV/GidWAyTS+JzaxnS1A
Y9klOqJktVNegrrkk+Xo6jHxkneGucDSsxpIVIcqTa2LGrt1E1eHNYwuEPIyHvl3
gPmfLCuetu+qp97+EOJBklSJi4ljPcAo7i+WI4Nsni6Q6eF7XQQA2aqRpIBmDdFY
9x3uAMDO3mSqIiEJWPiFZHs/qKGezJUgl4hrsjuiUWiD1gcPSS0zJRcZZ7GLYb9r
1uJOnzOtTLexEnAa0VJ9Svci+jtRX6HVETAnYqn9AQ/0sYvmTmWKge7q7BJHGnyv
YbyXmCwGyV8/cvSS8Mmh8iMYWg6mej8D/jN0ymPP9jGeuFav6Va/T8j+Fdl0zTVT
MkFPizlxJEev6PA9QKvAWo4iqRA3SIdqjrZpPcpwhalV5cK4KfHlh8/GagjU9kFS
JvUarmLZqoDqKT6cHb2OzcNBeCsuKGthraT1G+8NpXIgNr6a+5upo83pbL4RarPn
3u2JgSX0RPKDP8y0QXBFcCBUZXN0IEJvYiAodGVzdCBrZXksIGRvbid0IHVzZSkg
PHBlcC50ZXN0LmJvYkBwZXAtcHJvamVjdC5vcmc+iQE4BBMBAgAiBQJVeD5fAhsD
BgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRBZv/SIycLuOaR5CACj3E6ykNqj
GS5PzghYfLJso6j954QzLwOozTzU/3/HWH4lC3Jmfr0pGI51KZ6Xevrp3N9SxRqr
uJCFRtwNeH3ujIgDh/UHCUEsP/+d74SOenIBYGUKE1OJmh8/LQdkNSc6JNdzJjDW
dKeh6cAMFvWju/Nqtl/l0FGspQU9dmCMtzkKgmwoKZW56aEVZ2lTxqNEo1aQ+lLr
NueBq0/Q5kAVEzUG7Ufm19wXjWenEMeeElX3UAGudLJuckx7uD8W/yBwqrRAbaCS
eZf6RVBLz96ekjWrVfMnmjkPuQPPt5cs98RxQTpxk7b6xLaWXymhA6cYU+FAW4Dp
bjfJjMWIFDcKnQOYBFV4Pl8BCADKQ2SV6gjR5N69xVdiCaefjwobrXR1niuBHBNT
XMJwPk2xv+e7fY28RK1BzODYCzBhpltvRoCcJi9S7Rqyz81nbxnw/1TaKtn6dDDh
ZPVHjN3vasDueM6xTEfEihNc0Owf4wz9SBjuredUVkdTxU7FxSgVP10dOxhdtkjW
jGW1DF6WlYA8BAIEdbpoheJHz3NFkhPQ8Dlzo7Ioe2t7vrTztcBX11o2e+FPOq1S
mhEr78wbROAyCVAXK+8qDh4zDq8iAMZK/KnZrm6pP00+iBRcb+JQgn3Gn+hU0lgE
3YB9kBJLeWaHxEPNnnNNvW/BMl53ctf8Ip+pzpA1K/S23KU7ABEBAAEAB/0UO5/y
aSoUXl8zv5ZpWGA8E1x7qU3MPZQfgwtMhwEXplEyVelHSvIkjQAsjridPqf1KhAy
dkHY8kRAo4xMqoHjIMIzu+76hgKDzcoH+gfumOD97qwPDub/kGBg1j5v8KGg4knD
L8pNXKMWlNeSFzDf6BmFipmfb3EVYBiIMceIz97c4BGvs29TC2wIKmJBRbWu9eS7
vqkBj8rEGi+pEnzTFvcZTMkoU6Uj/HifpvQ7BcOzUQ/1tiGQMEPv8oPMWmKudqBw
53e7RoYCZmTzuzI5fNvNcNT1EcUQmAfkgT6zvQuY63DAdECVx2f0p7MlgGA9ncQb
IVVdBtJXfwsAFmthBADXmavPPgiC8nU1q8e2pB0pmS3/uflPdmh+xKs0MxylDgSO
H9Ar7g9duxsrjxxHzlkTb0Am2XeWww3fBO762VH9VCAPH3FRoHGNCnY6Ix0MyikW
g4Gs66QXHMTNweOa9zk+cZS6N0H6dDis6x+9M1FCeJzy3gXaq+vfV5LfGeXMYQQA
8CnyHE7rjoqGNPnTWetuYgo6yhYJudbhO0uDewR5MdP1gwpTUmYl5RD41LSwTSGp
VSbjtct5dQg2ZhjUWxXcx1OC+aMafmDPi6S32mwbgfNtfTCIygM8CPDjdWbFu1ba
KbPA9Lc/SHgpg0vbdiZ4PWOqsqnig834r+3VfLX/dxsEANAWGGJRNTHmIwoC4HsV
+KiyApbBRw2TCHxJjlzFY2OFpe8RuGKE7HpKiSYjarGxP0RlESrbie0nbJ8FooIH
gY2ipO3khgK4MK1Xua405mNVzge9oNJPgWEtLabubimVnTwjU6O7m79Xl+R9BYb1
GVZm7f/WMDL7BsNVvhMVjdgiOOOJAR8EGAECAAkFAlV4Pl8CGwwACgkQWb/0iMnC
7jlqbwf/dP4sXDRiR5uVMh5WhOn1S8MnHZhLWAQ6fI9/KxggCPhgY6zAgszPMutz
BsQlV4P6QX30d99IMJrzGYYxjN7Z6fF7us9u103+GTzGQH7/47JG0eSTSaKQvqEa
N1+6M/OBZKcwNW6xHa+lhIS5nJGV3Oey/RFQwucBujQbtyjDN3aGshwqzhJXFBlF
3RqFzLxuAJmeOVedaKvdPjRhgFuxhkicUhVp27qXQCpDpkUkj9hb75yCE6pAzopO
6s65yHsnFyehwgyMrfpTPlPM86B1LH4IEwSaOrEJSdHnnFD8nnSIjRyfra3dsI/R
VNmYX8EkMGICzoR4lWcYFShJQM6QQg==
=rBox
-----END PGP PRIVATE KEY BLOCK-----

+ 36
- 0
androidTests/app/assets/msg.asc View File

@ -0,0 +1,36 @@
-----BEGIN PGP MESSAGE-----
Version: GnuPG v1
hQEMA1oCBdlzCD9NAQf+NM15QA1chVbHLibULsUvJRvvlDlkYFC39pqOhHda41nw
+il9vvsHYYyY6igm5Hffv6TkvbONyCcimH14Qmh4N8RFJgw6qbh5k4HxRRKLd4on
fmXTBiN3X+exz0yEuQIqD5cZBfAUx1OKIPQlB+AcAxfx9uHfR8nWTrLkZrk7hZKG
P4ABgkhXEOxIMw/xliYb5NKg7ImY3IWV6FAk5mtklc9xmbW2GLG5R8NPHdbj9wgZ
wmEFcz3xnIU66ZimUzvVj2tIYGNpbRo9YGfbvAdf+1KDEZvrZO7ZdEYJwJTjnxCw
bqmk7NvOmuI9xlpyr/LEjAI+dUEkp1cfL9VU0bvtUIUBDAOYPRmfc6cbjgEH/Rxt
vK/fHPA/nOyJJlzEoeIA72sA292aeM/wOrlzn0CgJjC3DzVFX1R0Rr9xJRQrHAt7
prFBQM2MbXMYM4m81tQSndye6pyvR3KFVveVSs0dO4pGHJnyL6GnFbHKFiyI3w9Q
WdfGzbz2MoNV4IIXFc6sTN85nf3n56h/ZiYFYjFt2FISoG0XL8s8YcQayCBeNT06
WVTLzsrRMPFlZLjSQDrNdArdQN6AMERW7j5sWJens5xszq4egVpFAWpCs2tAgtKt
W9u9/coJ2k0EEVLkEQuafy52Ht5Tq3VHoYsqOAAcDLD7XSeX5PB1dw/9atHAePiG
RZC5bXMRe8HuDbzMF5jS6QFi2DL5sD8cGMCnHBs00hCT+JAOG4fuGJBZdx5R1JWr
7TKRTxoWSiezB8VfKpRC9haDc7q2xkaJ7bsTlljIJWJEbA71ZusVBeOTgsYBfXjh
8IdQBCIQXim7VliOfYn8hHd+5XdUY/TAmk1Niw6Zpxw8LvnVdHjji3CkPRLG91uM
cL0zl7LddKGWZ75QgrBGCMMT0ZXsOMqKw2e9QprX/JFj+W6drHIQ75F/Xl8i8168
+04nXdypQrHpi21D6DaKE0p/3RpYeDTlou8ttwDGZmsPbHOSdwgIkonESMTgByOV
0l0fu3tgVTqKakpwGD06iQXLDPp375NrSnlpB/sL3YL9rU6xI2Q9/qdrMdBuw1gR
0yHTVP/Q7utprycy+FGL6m0nAg63cKlbJcf6WCNLiHTaDf6a9GlC6t7kGrS6TeNQ
5KiKK7oHgua7e6psHhdqx5o8qzjWQ92KK3mdqUxsla9e0Kgcxypiw/cGFnRf7GzZ
68RL1pJp0p9cfqxyZ1zz81EGcXEqtezVDPdFCqLedfYlq4DqR+PQURyaCK8FvB1g
84sddc784GzxfnsYm8UvrKfaBkiSD+nw/cIzFJH7bassw7tRiwt8TyqE8HRfl0wh
NP0hpkid4BIIJGa9GtCHwGh1JO/iARxRGuUn4+mbYDdjWOTR/R9os5XuzPIO3im0
wM5t1l/aHV1vgmZby2PZjc+C4+PL7Ei6odVAakbm+6Wqr9ccDbl1kS1vPKVo/j7i
avP1gw3OjyCRo6Jp09dsOZxtpyi0w3+IHmvg2qrjqZJvoofBYKapWTo7q6Y8VX66
97ZF1ainjVViIS5Di5cAkv6opOxQ0Y3gkuvVZvkO20L60/xU2iq0lfPUYKebZTfM
WlnHFfczz3qEV4t5gkwj1D4DvWHNUtbW7Ijxi602HxLMR/qIZSz03tNMOuvht021
RsY+9HwLrnRz/loA2dcMZE1SeqmJKqpnxSu5sna0E9Rr+kscyTCRERZOAiRLO2Yb
8rJZltyq9yjjEzkXKqYnzl9C5i+wH06HK5UK9egZJpjfb1DxSMsTuJ8l4uvd3rVj
63QYjqMxQbPwCew6vNOpsVJ8r0VlRjCjKVBGe/Dt0MrFili+HDIsmoMyWR5tcH9y
OTMDD0uBhXVA5rTIAzHYpx1rghp/9i4hoJa7ZzgkJMAEexpK7TwkEjijMdSsvgFV
6KTzmuhXr9NKsXNu35YAmQ==
=/Ljx
-----END PGP MESSAGE-----

+ 20
- 0
androidTests/app/assets/msg1.asc View File

@ -0,0 +1,20 @@
Subject: my =?utf-8?Q?s=C3=BCbject?=
From: Volker Birk <vb@dingens.org>
To: Patricia =?utf-8?Q?B=C3=A4dnar?= <trischa@dingens.org>
X-pEp-Version: 1.0
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="54fdd7c7_6b8b4567_1505"
--54fdd7c7_6b8b4567_1505
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline
my m=C3=A8ssage to yo=C3=BC
--54fdd7c7_6b8b4567_1505
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline
<html><body><p>my message to you</p></body></html>
--54fdd7c7_6b8b4567_1505--

+ 605
- 0
androidTests/app/assets/msg2.asc View File

@ -0,0 +1,605 @@
Return-Path: <vb@dingens.org>
X-Original-To: vb@dingens.org
Delivered-To: vb@dingens.org
Received: from localhost (localhost [127.0.0.1])
by dragon.pibit.ch (Postfix) with ESMTP id AFEEF171C059
for <vb@dingens.org>; Sat, 28 Mar 2015 10:07:34 +0100 (CET)
Received: from dragon.pibit.ch ([127.0.0.1])
by localhost (dragon.pibit.ch [127.0.0.1]) (amavisd-new, port 10024)
with ESMTP id LIqI5IZE3-af for <vb@dingens.org>;
Sat, 28 Mar 2015 10:07:32 +0100 (CET)
Received: from localhost (161.238.195.178.dynamic.wline.res.cust.swisscom.ch [178.195.238.161])
by dragon.pibit.ch (Postfix) with ESMTPSA id 4742A171C055
for <vb@dingens.org>; Sat, 28 Mar 2015 10:07:32 +0100 (CET)
Date: Sat, 28 Mar 2015 10:07:31 +0100
From: Volker Birk <vb@dingens.org>
To: Volker Birk <vb@dingens.org>
Subject: Dingens
Message-ID: <20150328090731.GI44028@dingens.org>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="cEobB2knsyc5ebfU"
Content-Disposition: inline
X-PGP-Key: http://fdik.org/vb.key
--cEobB2knsyc5ebfU
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
VB.
--
Volker Birk
Oberer Graben 4, 8400 Winterthur, Schweiz
mailto:vb@dingens.org http://fdik.org
--cEobB2knsyc5ebfU
Content-Type: application/pdf
Content-Disposition: attachment; filename="pep_Dokument_Titel.pdf"
Content-Transfer-Encoding: base64
JVBERi0xLjQNJeLjz9MNCjYgMCBvYmoNPDwvTGluZWFyaXplZCAxL0wgMzAzNTQvTyA4L0Ug
MjcyNjEvTiAxL1QgMzAxMjAvSCBbIDU3NiAxNTldPj4NZW5kb2JqDSAgICAgICAgICAgICAg
ICAgICAgIA14cmVmDTYgMTQNMDAwMDAwMDAxNiAwMDAwMCBuDQowMDAwMDAwNzM1IDAwMDAw
IG4NCjAwMDAwMDA4NDggMDAwMDAgbg0KMDAwMDAwMTE3NiAwMDAwMCBuDQowMDAwMDA0NjUz
IDAwMDAwIG4NCjAwMDAwMDgwNzkgMDAwMDAgbg0KMDAwMDAxMTQzOCAwMDAwMCBuDQowMDAw
MDEzNzY0IDAwMDAwIG4NCjAwMDAwMTcyNDkgMDAwMDAgbg0KMDAwMDAyMDQ3NyAwMDAwMCBu
DQowMDAwMDIzNzc5IDAwMDAwIG4NCjAwMDAwMjcwMzcgMDAwMDAgbg0KMDAwMDAyNzE1MCAw
MDAwMCBuDQowMDAwMDAwNTc2IDAwMDAwIG4NCnRyYWlsZXINPDwvU2l6ZSAyMC9Sb290IDcg
MCBSL0luZm8gNSAwIFIvSURbPEM4MjAyNjM5QTk2NzQwODJCNDI1MjY5OEY2RDg5M0I4PjxB
Qzg4QjY2Qzk4MDA0RjgzOUQzRTVEQzI2MDg2NUNDMT5dL1ByZXYgMzAxMTI+Pg1zdGFydHhy
ZWYNMA0lJUVPRg0gICAgICAgICAgICAgICAgICAgICAgICANMTkgMCBvYmoNPDwvRmlsdGVy
L0ZsYXRlRGVjb2RlL0kgOTUvTCA3OS9MZW5ndGggNzYvUyAzNj4+c3RyZWFtDQpo3mJgYOBm
YGDayAAE6boMmICFgQOJxw3FDAz5DDy8c9XO22zoqtU7dKf8yAYmqBJGBobMe0AaxLcHYlYG
hhIfiDjDVoAAAwAUHgw/DWVuZHN0cmVhbQ1lbmRvYmoNNyAwIG9iag08PC9NZXRhZGF0YSA0
IDAgUi9QYWdlTGFiZWxzIDEgMCBSL1BhZ2VzIDMgMCBSL1R5cGUvQ2F0YWxvZy9WaWV3ZXJQ
cmVmZXJlbmNlczw8L0RpcmVjdGlvbi9MMlI+Pj4+DWVuZG9iag04IDAgb2JqDTw8L0FydEJv
eFswLjAgMC4wIDU5NS4yNzYgODQxLjg5XS9CbGVlZEJveFswLjAgMC4wIDU5NS4yNzYgODQx
Ljg5XS9Db250ZW50c1s5IDAgUiAxMCAwIFIgMTEgMCBSIDEyIDAgUiAxMyAwIFIgMTQgMCBS
IDE1IDAgUiAxNiAwIFJdL0Nyb3BCb3hbMC4wIDAuMCA1OTUuMjc2IDg0MS44OV0vTWVkaWFC
b3hbMC4wIDAuMCA1OTUuMjc2IDg0MS44OV0vUGFyZW50IDMgMCBSL1Jlc291cmNlczw8L0V4
dEdTdGF0ZTw8L0dTMCAxNyAwIFIvR1MxIDE4IDAgUj4+Pj4vUm90YXRlIDAvVHJpbUJveFsw
LjAgMC4wIDU5NS4yNzYgODQxLjg5XS9UeXBlL1BhZ2U+Pg1lbmRvYmoNOSAwIG9iag08PC9G
aWx0ZXIvRmxhdGVEZWNvZGUvTGVuZ3RoIDM0MDg+PnN0cmVhbQ0KSIm0V02O5roN3H+n8AXa
kSiJkk6QRZBF8BY5wCAvA0x3gJfcH0hVUbI90/OSTYIG+nPZ+qHIYpFK5+j5SGcp8+CvuR3f
Xn/44y/p+Pu/Xunwnk8v9WizndbbkefZaj3++Td+m/nMfRwffM7p9JZ/Pq6kM8+qca3O0338
ZNyvr9/wPa0vfoyazzH55a/HP16/0Tr85WPa2Yvno890tm75+PKhefyfz9rK8ZbONNthOJoT
2KhHxZrHlxdQa0c7Ha/wPKcffk6fxxuOibXGmW1wHDaZ48ChWsWC7Uy5HzmfHRa9Daw1iYZr
LJ5KsetzLmcdTXMT5uYKeztWTlmD2znhcZiQGz762bCInbMuZBNn4bh4hl01V30qMHbZRZhL
Pt7qmZvtZZMsbY5hgI3r+znwnTZMr7R8GVHP0vvxNs88hixu8OgbTM7GX8PsITzSPmJr/JJj
XXwpaQjTCVi4z3xBTGgRCfoEhyhYV5Na4lnwzm5jGJJBy71VMDCBiTjmhAtTuMIMLxH4s2eS
jTjnTH/LwYAwGmew0YUKQggHpG7LkT6vF+/Ls4ptSX29qLk9X8B7hheG9y7vWZrcYSaXd6qD
DYhrF6cwsXvhDq3LFYgA44FBCEDtdSPxalk3QBXMa5MLmTjQyRqkFHz05VXl0X5OuKPhuZHC
Zaxn+iWe4M0JgmBvnr6cI3M82AqH9ly0kmOXt44R48AAEmHKWbGlwpwZCqSwaFiDXAUBmuIS
R4H18M7bfZSJEN8vtArjCOwiLr0X1Gu+SJdSvCmmcYVmMnDCYDjthAcgLN+lQLx5v9+YM/X5
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
GY9H46TohNh4tCKAlVtF5w1H4MfYuKcyoZI9W43JYK3XdtyRbD4G3I9b8xGe3gPqq1+9h08s
ubXavumvT9kBpyIyAgNr2zrhGQmk4bjAqiVHPb9vRalrXjfQ8snFdEdxf7VfuqOPtc7WHeUy
I3UHsPd16Y6ym9fWHaUsb9kB0DYv2WFgScoOoVe5yc6BITs7cI4ae9tu/L9I8jYDZSRvM9u5
kriFNK5X/eDs5JqsAKtna8TNg/bFwtIgUNQy4GJRHKgePYi8HdWjYkaaqzXjUIUF0LEDf08g
L3+/8iPAGa1ZAClg/vkgd7wE9iu4dYj/80vgfDZe+RGgK+0ZCXvH4fApcJvBkuRmuDHgdrE3
I7LZG/XHr5J/3FIaHLHgEHt+B7qt4Pus3S8cuXLBVVfac2Izd0nE3NR82vUE3F4o/aKUIolt
6Nmin5ZWU3+isXeAawwJ7H3iUnzAk+gHibEClW8NI96vPJgWePogstzAM9LdCdPjnCvESFTm
hasJDkvl6+0P/t6/BRgA6y9qdQ1lbmRzdHJlYW0NZW5kb2JqDTE3IDAgb2JqDTw8L0FJUyBm
YWxzZS9CTS9Ob3JtYWwvQ0EgMS4wL09QIGZhbHNlL09QTSAxL1NBIHRydWUvU01hc2svTm9u
ZS9UeXBlL0V4dEdTdGF0ZS9jYSAxLjAvb3AgZmFsc2U+Pg1lbmRvYmoNMTggMCBvYmoNPDwv
QUlTIGZhbHNlL0JNL05vcm1hbC9DQSAxLjAvT1AgdHJ1ZS9PUE0gMS9TQSB0cnVlL1NNYXNr
L05vbmUvVHlwZS9FeHRHU3RhdGUvY2EgMS4wL29wIHRydWU+Pg1lbmRvYmoNMSAwIG9iag08
PC9OdW1zWzAgMiAwIFJdPj4NZW5kb2JqDTIgMCBvYmoNPDwvUy9EL1N0IDk+Pg1lbmRvYmoN
MyAwIG9iag08PC9Db3VudCAxL0tpZHNbOCAwIFJdL1R5cGUvUGFnZXM+Pg1lbmRvYmoNNCAw
IG9iag08PC9MZW5ndGggMjQ4MC9TdWJ0eXBlL1hNTC9UeXBlL01ldGFkYXRhPj5zdHJlYW0N
Cjw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+
Cjx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhN
UCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAg
Ij4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIy
LXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIK
ICAgICAgICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIgog
ICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21t
LyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEu
MC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6
Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAg
IHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAg
ICAgeG1sbnM6cGRmPSJodHRwOi8vbnMuYWRvYmUuY29tL3BkZi8xLjMvIj4KICAgICAgICAg
PHhtcDpDcmVhdGVEYXRlPjIwMTQtMDgtMTBUMjE6NTA6MjMrMDI6MDA8L3htcDpDcmVhdGVE
YXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE0LTA4LTEwVDIxOjUwOjIzKzAy
OjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNC0w
OC0xMFQyMTo1MDoyMyswMjowMDwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXA6Q3Jl
YXRvclRvb2w+QWRvYmUgSW5EZXNpZ24gQ0MgKE1hY2ludG9zaCk8L3htcDpDcmVhdG9yVG9v
bD4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+dXVpZDpkN2UxNWU4NC0yMjA0LWZhNGQt
YTNjMi0xODc0YjhkYTI4NDg8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpP
cmlnaW5hbERvY3VtZW50SUQ+eG1wLmRpZDplYjk4OTk1Yy00ZmZlLTRjOWMtOTNjNy1iZGQ4
ZDU0Y2U3MDk8L3htcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkRv
Y3VtZW50SUQ+eG1wLmlkOjZjMmQ1ODhjLWJhMmItNGJkOS1hMWYxLTAxMDRkOTA1MmMyODwv
eG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOlJlbmRpdGlvbkNsYXNzPnByb29m
OnBkZjwveG1wTU06UmVuZGl0aW9uQ2xhc3M+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5Pgog
ICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VU
eXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y29udmVy
dGVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpwYXJhbWV0ZXJz
PmZyb20gYXBwbGljYXRpb24veC1pbmRlc2lnbiB0byBhcHBsaWNhdGlvbi9wZGY8L3N0RXZ0
OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFk
b2JlIEluRGVzaWduIENDIChNYWNpbnRvc2gpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAg
ICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAg
ICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTA4LTEwVDIxOjUwOjIzKzAyOjAwPC9zdEV2
dDp3aGVuPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgPC9yZGY6U2Vx
PgogICAgICAgICA8L3htcE1NOkhpc3Rvcnk+CiAgICAgICAgIDx4bXBNTTpEZXJpdmVkRnJv
bSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgIDxzdFJlZjppbnN0YW5j
ZUlEPnhtcC5paWQ6Mjg0NzZlZDgtM2VlYi00ZTlhLWI4NDMtNzJhYTU4MGFjYTVhPC9zdFJl
ZjppbnN0YW5jZUlEPgogICAgICAgICAgICA8c3RSZWY6ZG9jdW1lbnRJRD54bXAuZGlkOmVi
OTg5OTVjLTRmZmUtNGM5Yy05M2M3LWJkZDhkNTRjZTcwOTwvc3RSZWY6ZG9jdW1lbnRJRD4K
ICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOmViOTg5OTVj
LTRmZmUtNGM5Yy05M2M3LWJkZDhkNTRjZTcwOTwvc3RSZWY6b3JpZ2luYWxEb2N1bWVudElE
PgogICAgICAgICAgICA8c3RSZWY6cmVuZGl0aW9uQ2xhc3M+ZGVmYXVsdDwvc3RSZWY6cmVu
ZGl0aW9uQ2xhc3M+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxk
Yzpmb3JtYXQ+YXBwbGljYXRpb24vcGRmPC9kYzpmb3JtYXQ+CiAgICAgICAgIDxwZGY6UHJv
ZHVjZXI+QWRvYmUgUERGIExpYnJhcnkgMTAuMC4xPC9wZGY6UHJvZHVjZXI+CiAgICAgICAg
IDxwZGY6VHJhcHBlZD5GYWxzZTwvcGRmOlRyYXBwZWQ+CiAgICAgIDwvcmRmOkRlc2NyaXB0
aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgo8P3hwYWNrZXQgZW5kPSJyIj8+DWVu
ZHN0cmVhbQ1lbmRvYmoNNSAwIG9iag08PC9DcmVhdGlvbkRhdGUoRDoyMDE0MDgxMDIxNTAy
MyswMicwMCcpL0NyZWF0b3IoQWRvYmUgSW5EZXNpZ24gQ0MgXChNYWNpbnRvc2hcKSkvTW9k
RGF0ZShEOjIwMTQwODEwMjE1MDIzKzAyJzAwJykvUHJvZHVjZXIoQWRvYmUgUERGIExpYnJh
cnkgMTAuMC4xKS9UcmFwcGVkL0ZhbHNlPj4NZW5kb2JqDXhyZWYNMCA2DTAwMDAwMDAwMDAg
NjU1MzUgZg0KMDAwMDAyNzI2MSAwMDAwMCBuDQowMDAwMDI3Mjk1IDAwMDAwIG4NCjAwMDAw
MjczMjQgMDAwMDAgbg0KMDAwMDAyNzM3NSAwMDAwMCBuDQowMDAwMDI5OTMxIDAwMDAwIG4N
CnRyYWlsZXINPDwvU2l6ZSA2L0lEWzxDODIwMjYzOUE5Njc0MDgyQjQyNTI2OThGNkQ4OTNC
OD48QUM4OEI2NkM5ODAwNEY4MzlEM0U1REMyNjA4NjVDQzE+XT4+DXN0YXJ0eHJlZg0xMTYN
JSVFT0YN
--cEobB2knsyc5ebfU--

+ 17
- 0
androidTests/app/assets/msg3.asc View File

@ -0,0 +1,17 @@
From: =?ISO-8859-1?Q?=22Eifler@dontpanic.ulm.ccc.de
To: mail@ccc.de
MIME-Version: 1.0
Subject: =?ISO-8859-1?Q?elektronische_=DCbermittlung_von_Steuerdaten?=
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
Status: RO
Content-Length: 1136
Lines: 29
ab dem 1.1.2005 ist es verbindlich vorgeschrieben, dass die monatlichen
Steueranmeldungen an das Finanzamt bzgl. Lohnsteuer und Umsatzsteuer
elektronisch, d.h. in aller Regel über das Internet, übermitteln werden
müssen. Ein Ausweichen auf die Papierform ist nur in Ausnahmefällen
zulässig.
Gruß und macht weiter

+ 64
- 0
androidTests/app/assets/pgp_mime_msg.txt View File

@ -0,0 +1,64 @@
From: Outlook Test <outlooktest@dingens.org>
To: Volker Birk <vb@dingens.org>
Subject: pEp
MIME-Version: 1.0
Content-Type: multipart/encrypted; boundary="74b0dc5119495cff2ae8944a625558ec";
protocol="application/pgp-encrypted"
--74b0dc5119495cff2ae8944a625558ec
Content-Type: application/pgp-encrypted
Version: 1
--74b0dc5119495cff2ae8944a625558ec
Content-Type: application/octet-stream
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; filename="msg.asc"
-----BEGIN PGP MESSAGE-----
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
=SlpO
-----END PGP MESSAGE-----
--74b0dc5119495cff2ae8944a625558ec--

+ 11
- 0
androidTests/app/assets/signature.asc View File

@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQEcBAABAgAGBQJVeFSyAAoJEFm/9IjJwu45iQ8IAKRtGx+AcQZV7ZwGIIGRRRFS
Ac6D50AKrbORg4vaAen8qa3ULU74rJvsMmMNSCSReLlYv31qgTkk5LEXDNvKPwG4
sGhjGxQCQogn0iocLgyUb6QMLQGwcmnT3lvyC9iUB+nr5GyKWwKfaxgvTIZquPNB
31ymL1Z8rP8X4rVJK3cJzgAPUOQ52yMIJ2UQqQ3F6PccgejNq0kS8Q4B5kO5UIcC
9tUVW8PHEgS8ldT9edIYxvNgJnmimqhb+znlXJoSv2WsniuNVMUJlKOgbeTQ1ej4
Oy1tHog4b9ZvOtyGytuyerCKbSaDJCi2SizGI9gYFu7HqbVWAkehgfnxE51MiNk=
=9xNW
-----END PGP SIGNATURE-----

+ 10
- 0
androidTests/app/assets/t1.txt View File

@ -0,0 +1,10 @@
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Ohne Anhang.
--=20
Volker Birk, Oberer Graben 4, CH-8400 Winterthur, Schweiz,
Erde, Solar-System, Orion Arm, Milchstrasse, Lokale Gruppe,
Virgo-Superhaufen, Coma-Virgo-Filament. mailto:dingens@bumens.org
http://fdik.org D-IRCNet fdik!vb@dragon.pibit.ch

BIN
androidTests/app/assets/t1.txt.gpg View File


+ 1
- 0
androidTests/app/assets/t2.txt View File

@ -0,0 +1 @@
Something else

+ 31
- 0
androidTests/app/build.gradle View File

@ -0,0 +1,31 @@
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.0"
defaultConfig {
applicationId "com.pep.k9"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
sourceSets {
main {
assets.srcDirs = ['assets']
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:23.0.0'
compile project(':pEpJNIAdapter')
}

+ 21
- 0
androidTests/app/src/main/AndroidManifest.xml View File

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.pep.k9" >
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>

+ 169
- 0
androidTests/app/src/main/java/com/pep/k9/MainActivity.java View File

@ -0,0 +1,169 @@
package com.pep.k9;
import android.content.Context;
import android.content.res.AssetManager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import org.pEp.jniadapter.*;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Vector;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Context c = getApplicationContext();
Log.d("PEPTEST", "Helper Setup");
AndroidHelper.setup(c);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action b§§ar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
try {
testPEp();
}
catch (Exception ex) {
Log.e("PEPTEST", "##################### TEST Exception ####################",ex);
}
return true;
}
return super.onOptionsItemSelected(item);
}
private String LoadAssetAsString(String fname) throws IOException {
AssetManager assetManager = getAssets();
InputStream input;
input = assetManager.open(fname);
int size = input.available();
byte[] buffer = new byte[size];
input.read(buffer);
input.close();
// byte buffer into a string
return new String(buffer);
}
public void testPEp() throws pEpException, IOException {
Engine e;
// load
e = new Engine();
Log.d("PEPTEST", "Test loaded");
// trustwords
Identity vb = new Identity();
vb.fpr = "DB4713183660A12ABAFA7714EBE90D44146F62F4";
String t = e.trustwords(vb);
System.out.print("Trustwords: ");
Log.d("PEPTEST", t);
// Our test user :
// pEp Test Alice (test key don't use) <pep.test.alice@pep-project.org>
// 6FF00E97
// A9411D176FF00E97
e.importKey(LoadAssetAsString("6FF00E97_sec.asc"));
Identity alice = new Identity();
alice.username = "Alice Test";
alice.address = "pep.test.alice@pep-project.org";
alice.user_id = "111";
alice.me = true;
alice.fpr = "4ABE3AAF59AC32CFE4F86500A9411D176FF00E97";
e.myself(alice);
//
// Other peers :
// pEp Test Bob (test key, don't use) <pep.test.bob@pep-project.org> 
// C9C2EE39
// 59BFF488C9C2EE39
e.importKey(LoadAssetAsString("C9C2EE39_pub.asc"));
Identity bob = new Identity();
bob.username = "bob Test";
bob.address = "pep.test.bob@pep-project.org";
bob.user_id = "112";
bob.fpr = "BFCDB7F301DEEEBBF947F29659BFF488C9C2EE39";
e.updateIdentity(bob);
//
// pEp Test John (test key, don't use) <pep.test.john@pep-project.org>
// 70DCF575
// 135CD6D170DCF575
e.importKey(LoadAssetAsString("70DCF575_pub.asc"));
Identity john = new Identity();
john.username = "john Test";
john.address = "pep.test.john@pep-project.org";
john.user_id = "113";
john.fpr = "AA2E4BEB93E5FE33DEFD8BE1135CD6D170DCF575";
e.updateIdentity(john);
// message
Message msg = new Message();
msg.setFrom(alice);
Vector<Identity> to = new Vector<Identity>();
to.add(bob);
to.add(john);
msg.setTo(to);
msg.setShortmsg("hello, world");
msg.setLongmsg("this is a test");
msg.setDir(Message.Direction.Outgoing);
Log.d("PEPTEST", e.outgoing_message_color(msg).toString());
Message enc = null;
enc = e.encrypt_message(msg, null);
if(enc != null) {
Log.d("PEPTEST", "encrypted OK");
Log.d("PEPTEST", enc.getLongmsg());
Vector<Blob> attachments = enc.getAttachments();
Log.d("PEPTEST", e.toUTF16(attachments.get(1).data));
Engine.decrypt_message_Return result = null;
result = e.decrypt_message(enc);
Log.d("PEPTEST", "decrypted");
Log.d("PEPTEST", result.dst.getShortmsg());
Log.d("PEPTEST", result.dst.getLongmsg());
} else {
Log.d("PEPTEST", "NOT encrypted !!!");
}
}
}

+ 11
- 0
androidTests/app/src/main/res/layout/activity_main.xml View File

@ -0,0 +1,11 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
<TextView android:text="@string/hello_world" android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</RelativeLayout>

+ 6
- 0
androidTests/app/src/main/res/menu/menu_main.xml View File

@ -0,0 +1,6 @@
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" tools:context=".MainActivity">
<item android:id="@+id/action_settings" android:title="@string/action_settings"
android:orderInCategory="100" app:showAsAction="never" />
</menu>

BIN
androidTests/app/src/main/res/mipmap-hdpi/ic_launcher.png View File

Before After
Width: 72  |  Height: 72  |  Size: 3.3 KiB

BIN
androidTests/app/src/main/res/mipmap-mdpi/ic_launcher.png View File

Before After
Width: 48  |  Height: 48  |  Size: 2.2 KiB

BIN
androidTests/app/src/main/res/mipmap-xhdpi/ic_launcher.png View File

Before After
Width: 96  |  Height: 96  |  Size: 4.7 KiB

BIN
androidTests/app/src/main/res/mipmap-xxhdpi/ic_launcher.png View File

Before After
Width: 144  |  Height: 144  |  Size: 7.5 KiB

+ 6
- 0
androidTests/app/src/main/res/values-w820dp/dimens.xml View File

@ -0,0 +1,6 @@
<resources>
<!-- Example customization of dimensions originally defined in res/values/dimens.xml
(such as screen margins) for screens with more than 820dp of available width. This
would include 7" and 10" devices in landscape (~960dp and ~1280dp respectively). -->
<dimen name="activity_horizontal_margin">64dp</dimen>
</resources>

+ 5
- 0
androidTests/app/src/main/res/values/dimens.xml View File

@ -0,0 +1,5 @@
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
</resources>

+ 6
- 0
androidTests/app/src/main/res/values/strings.xml View File

@ -0,0 +1,6 @@
<resources>
<string name="app_name">pEp Android Test</string>
<string name="hello_world">Hello world!</string>
<string name="action_settings">Settings</string>
</resources>

+ 8
- 0
androidTests/app/src/main/res/values/styles.xml View File

@ -0,0 +1,8 @@
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
</style>
</resources>

+ 19
- 0
androidTests/build.gradle View File

@ -0,0 +1,19 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.3.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}

+ 3
- 0
androidTests/settings.gradle View File

@ -0,0 +1,3 @@
include ':app'
include ':pEpJNIAdapter'
project(':pEpJNIAdapter').projectDir = file("../android")

Loading…
Cancel
Save