mail-gpg >= 0.4.3 leads to failing tests
mail-gpg 0.4.3
was released yesterday with one change:
fix bad signatures of some mails with Mail 2.7.1 by always enforcing base64 encoding for signed content
This leads to failing tests:
Failures:
1) running filters .fix_exchange_messages! accepts a valid plain-text message
Failure/Error: expect(exchange.body.to_s).to include("bla-vla")
expected "This is an OpenPGP/MIME signed message (RFC 4880 and 3156)\n----==_mimepart_5e44198c6c689_22f2b195e2...kx9I=\n=eS7W\n-----END PGP SIGNATURE-----\n\n----==_mimepart_5e44198c6c689_22f2b195e28e5b86292f--\n" to include "bla-vla"
Diff:
@@ -1,2 +1,56 @@
-bla-vla
+This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
+----==_mimepart_5e44198c6c689_22f2b195e28e5b86292f
+Content-Type: multipart/mixed;
+ boundary="--==_mimepart_5e44198c6c418_22f2b195e28e5b86286b";
+ charset=UTF-8
+Content-Transfer-Encoding: 7bit
+
+
+----==_mimepart_5e44198c6c418_22f2b195e28e5b86286b
+Content-Type: text/plain;
+ charset=UTF-8
+Content-Transfer-Encoding: base64
+
+RnJvbTogRm9vIEJsYSBCYXIgPGZvb2JhckBvdXRsb29rLmNvbT4KVG86ICJz
+Y2hsZXVkZXJAZXhhbXBsZS5vcmciIDxzY2hsZXVkZXJAZXhhbXBsZS5vcmc+
+CkNjOiAKRGF0ZTogV2VkLCAxMiBKdWwgMjAxNyAwMDowMDowMCArMDAwMApT
+aWc6IFVuc2lnbmVkCkVuYzogVW5lbmNyeXB0ZWQKLS0tLS0tLS0tLS0tLS0t
+LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
+LS0tLS0tLS0tLS0tLS0tLS0tCg==
+
+----==_mimepart_5e44198c6c418_22f2b195e28e5b86286b
+Content-Type: text/plain;
+ charset=us-ascii
+Content-Transfer-Encoding: base64
+
+YmxhLXZsYSBsdQ0KZHUNCg0K
+
+----==_mimepart_5e44198c6c418_22f2b195e28e5b86286b--
+
+----==_mimepart_5e44198c6c689_22f2b195e28e5b86292f
+Content-Type: application/pgp-signature;
+ name=signature.asc
+Content-Transfer-Encoding: 7bit
+Content-Disposition: attachment;
+ filename=signature.asc
+Content-Description: OpenPGP digital signature
+
+-----BEGIN PGP SIGNATURE-----
+
+iQIzBAABCgAdFiEEWccfs4ruIuCRx4JZ0GNQRA91m9MFAl5EGYwACgkQ0GNQRA91
+m9NILw//ZZmYU/o3FtEcD8FP7NNF0hvCEvTQAiEX49L14uqYM32iYmpob6dDAEK7
+J6XDyGCoWEWGnd9Db94wliEJILlMo7qX51P03Qfg8EWYw4O1MMaq590vJrYyf7dL
+fhokjwsRI21Lz36AiucLoFVTUdI2yRnrTKJkZdF2BIkxUT4NQEO/V3i/r+iCGlPD
+o+9CJYZwZ3gAg4bsHF/r8mEAncplctfuJwAmSbfCe4xOcr/8tDJby1fSAP6PSzUY
+xjU2cyRPO97AgUJLNBj8OItrd6umSTkF+17sqqXSji7S56dwDEHNOl1Jwl8pE/sA
+402q8WypIP+S+cVrW0hrBgXryjFMopzpCGzZV+q5DuNO4VttMF+PrncacK7NptMw
+9qqevFheyJVEgn8byM3DJegbxwHy6RKsltNS2/bvU+uyJaZGZiIGCKxBNufYlJ68
+LQrxZcjPe1yJrvcEzRwSbqU4zkZ62qE6Za7c82cQWBQPg5Qb4DBMtRaahHjYLh4F
+NvpJTNiUPmEl59jh5myhfUlJQtT6XOuQSVMp1zTOA6EK0O1PYUVOGsx4S1cFcMJA
+V0HFq6NyZlzxw53qlgSjAit3zczoRyT72OfYf3oHrNJetGUt8c+JAAH/He0Zm92P
+O6dgvvQWKth7Y5nqL/6IEMe3ZcJR9z8Isbtl69d418LLD3ikx9I=
+=eS7W
+-----END PGP SIGNATURE-----
+
+----==_mimepart_5e44198c6c689_22f2b195e28e5b86292f--
# ./spec/schleuder/integration/filters_spec.rb:74:in `block (3 levels) in <top (required)>'
# ./spec/spec_helper.rb:47:in `block (3 levels) in <top (required)>'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/generic/base.rb:16:in `cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:87:in `block (2 levels) in cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:88:in `cleaning'
# ./spec/spec_helper.rb:46:in `block (2 levels) in <top (required)>'
2) running filters .fix_exchange_messages! accepts an invalid pgp/mime Exchange message
Failure/Error: expect(exchange.body.to_s).to include("foo\n")
expected "This is an OpenPGP/MIME signed message (RFC 4880 and 3156)\n----==_mimepart_5e44198d95d57_25f2b21781...oscc=\n=0TNC\n-----END PGP SIGNATURE-----\n\n----==_mimepart_5e44198d95d57_25f2b21781a85b4206a6--\n" to include "foo\n"
Diff:
@@ -1,2 +1,55 @@
-foo\n
+This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
+----==_mimepart_5e44198d95d57_25f2b21781a85b4206a6
+Content-Type: multipart/mixed;
+ boundary="--==_mimepart_5e44198d95ac3_25f2b21781a85b4205bf";
+ charset=UTF-8
+Content-Transfer-Encoding: 7bit
+
+
+----==_mimepart_5e44198d95ac3_25f2b21781a85b4205bf
+Content-Type: text/plain;
+ charset=UTF-8
+Content-Transfer-Encoding: base64
+
+RnJvbTogc29tZW9uZUBleGFtcGxlLm9yZwpUbzogc2NobGV1ZGVyQGV4YW1w
+bGUub3JnCkNjOiAKRGF0ZTogU2F0LCAwMSBGZWIgMjAyMCAwMToxMzoxNCAr
+MDEwMApTaWc6IFVuc2lnbmVkCkVuYzogRW5jcnlwdGVkCi0tLS0tLS0tLS0t
+LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
+LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo=
+
+----==_mimepart_5e44198d95ac3_25f2b21781a85b4205bf
+Content-Type: text/plain;
+ charset=UTF-8
+Content-Transfer-Encoding: base64
+
+Zm9vCg==
+
+----==_mimepart_5e44198d95ac3_25f2b21781a85b4205bf--
+
+----==_mimepart_5e44198d95d57_25f2b21781a85b4206a6
+Content-Type: application/pgp-signature;
+ name=signature.asc
+Content-Transfer-Encoding: 7bit
+Content-Disposition: attachment;
+ filename=signature.asc
+Content-Description: OpenPGP digital signature
+
+-----BEGIN PGP SIGNATURE-----
+
+iQIzBAABCgAdFiEEWccfs4ruIuCRx4JZ0GNQRA91m9MFAl5EGY0ACgkQ0GNQRA91
+m9Nj7Q//SK66nq8vLns3ynYipX1w80azIvkajj3IkDUkle3FbWykEoQCNPTb2Evi
+CRyt16vBeqr/Alf0lTQ0wHzwUJJuNUj0BDolHY21G7hDy7SCFbAYGvL8wTYNL8as
+0FE830HgvZU29qG7ztB394jLdLxWEYlnRuGUBU4NP3zlzlM6AnxHwrugGJyg3MVv
+hiG+s/p+radhndV4euCCAcCNW0jQDgiKxMNk1CpJgi8hj0/Z3QMzqWz47DUpOXA2
+Q8mrxWrpHu6YsnXMaRQjvc7YfSURY8xESRCv8OpJ9OIZhq4zwRxSh0+B9GGqip13
+DlOWmtBnnHtQw6sEuqilahDkMrAh+MR0QKLvstB1M8eT2zEt7yr8S5tz0habMnls
+ilDAFqzhasw//mm6Eb4zhtr5JH9FujD8mCeZRemXfZjPzqeSBQMsC5OB8Iq8cpAX
+JFd3nVJ6UKhvBp2cowkFwX+zAOKRCu28uAHph7j+nEnw7TKK78Dcm1HZbp36dh1H
+jHNlmncxANjpXnLFlylLNlyEK1QCUdYNVp3ZN5+d1D47jsH3Qe+jJ94x9uRG6NFH
+yxdBZfizC8XaP/nXXJwlVdb4anw/99JJK7bFCT8mx/vxUIlRs9FLto2o77EjC3d2
+TUzDkavlErOtMBP0gxWfWorygfIfallxIjMIMI1aDwo8xi7oscc=
+=0TNC
+-----END PGP SIGNATURE-----
+
+----==_mimepart_5e44198d95d57_25f2b21781a85b4206a6--
# ./spec/schleuder/integration/filters_spec.rb:51:in `block (3 levels) in <top (required)>'
# ./spec/spec_helper.rb:47:in `block (3 levels) in <top (required)>'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/generic/base.rb:16:in `cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:87:in `block (2 levels) in cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:88:in `cleaning'
# ./spec/spec_helper.rb:46:in `block (2 levels) in <top (required)>'
3) Schleuder::Runner#run delivers a signed error message if a subscription's key is expired on a encrypted-only list
Failure/Error: expect(message.to_s).to include("You missed an email from ")
expected "Date: Wed, 12 Feb 2020 15:29:06 +0000\r\nFrom: list162@example.org\r\nSender: list162-bounce@example...O4IP\r\n-----END PGP SIGNATURE-----\r\n\r\n----==_mimepart_5e4419c29e20f_1b62afa793fe5b4964f8--\r\n" to include "You missed an email from "
Diff:
@@ -1,2 +1,51 @@
-You missed an email from
+Date: Wed, 12 Feb 2020 15:29:06 +0000
+From: list162@example.org
+Sender: list162-bounce@example.org
+To: expired@example.org
+Message-ID: <5e4419c2ac1d7_1b62afa793fe5b4965e@runner-EyYDB4La-project-493-concurrent-4.mail>
+Subject: Notice
+Mime-Version: 1.0
+Content-Type: multipart/signed;
+ boundary="--==_mimepart_5e4419c29e20f_1b62afa793fe5b4964f8";
+ micalg=pgp-sha1;
+ protocol="application/pgp-signature"
+Content-Transfer-Encoding: 7bit
+
+This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
+----==_mimepart_5e4419c29e20f_1b62afa793fe5b4964f8
+Content-Type: text/plain;
+ charset=UTF-8
+Content-Transfer-Encoding: base64
+
+WW91IG1pc3NlZCBhbiBlbWFpbCBmcm9tIGxpc3QxNjJAZXhhbXBsZS5vcmcg
+YmVjYXVzZSB5b3VyIHN1YnNjcmlwdGlvbiBpc24ndCBhc3NvY2lhdGVkIHdp
+dGggYSAodXNhYmxlKSBPcGVuUEdQIGtleS4gUGxlYXNlIGZpeCB0aGlzLgoK
+S2luZCByZWdhcmRzLApZb3VyIFNjaGxldWRlciBzeXN0ZW0uCg==
+
+----==_mimepart_5e4419c29e20f_1b62afa793fe5b4964f8
+Content-Type: application/pgp-signature;
+ name=signature.asc
+Content-Transfer-Encoding: 7bit
+Content-Disposition: attachment;
+ filename=signature.asc
+Content-Description: OpenPGP digital signature
+
+-----BEGIN PGP SIGNATURE-----
+
+iQIzBAABCgAdFiEEWccfs4ruIuCRx4JZ0GNQRA91m9MFAl5EGcIACgkQ0GNQRA91
+m9MOvw/6AmNnMTXk+iq31OqMP/YBu1zcmZnMhheyVQwe9ckwFoksu2q/s9W0sC2I
+aehJhtsP2yoR6dt3QeHxpHEE7MbDiuj3iCj7TX+dDK91k6T3oZOiDWDu9Rd1bKRI
+ZRkAPydbEecVhGNFPe+YwwgyUIIX09ZvnnSKGMTYfa8rat2iMrtbe78s02e7NYAM
+IrZXJQ9D2AuuZK6BJiGIm8YWqChwvvgBHDlFE8rnNiHJU9d7Q4GCu+fpyw8M7SDd
+Gx1U8d7ZqAU+TKxQNiv2pX/AXiJRZZDtJXpVkU+wfJUNPt4+HBDol40puDgK1Ly9
+I/Dg3TWlo8d93mUMVUkZPkoH9IPn3yjNkCGzzgbSEHH81D1qk5uK1VeDzsKEsDPe
+PLAkHUyA/i+hlhxPk4uupNJdCqG2TR05fcxVzA2U9Y3dKI5SEaXDR0VivWfQk/oq
+wHIP8BkbjFlCsFmB3/ECS2iAxjuqtOZIcds16xNkk72FYbJXDdzfSQUt+yKzThDX
+g8lbgJUTpRPsuc6NFCfJRYuBWGf5OO8pK/SSws1npva0evDEGGzIhIv8Upc8bBt5
+1EluW3xhCJxRM+DMzvAIDNmlWUloxJwkSACpiWX+jm3bbDwPWvDYeE3+gjmrzW+5
+X/yuo6nV6xsq5QBqOjhDSLiF3dHbCQe45iZjSRZ0fKwantDBK0g=
+=O4IP
+-----END PGP SIGNATURE-----
+
+----==_mimepart_5e4419c29e20f_1b62afa793fe5b4964f8--
# ./spec/schleuder/runner_spec.rb:284:in `block (3 levels) in <top (required)>'
# ./spec/spec_helper.rb:47:in `block (3 levels) in <top (required)>'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/generic/base.rb:16:in `cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:87:in `block (2 levels) in cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:88:in `cleaning'
# ./spec/spec_helper.rb:46:in `block (2 levels) in <top (required)>'
4) Schleuder::Runner#run delivers a signed error message if a subscription's key is not available on a encrypted-only list
Failure/Error: expect(message.to_s).to include("You missed an email from #{list.email} ")
expected "Date: Wed, 12 Feb 2020 15:29:07 +0000\r\nFrom: list165@example.org\r\nSender: list165-bounce@example...24Zl\r\n-----END PGP SIGNATURE-----\r\n\r\n----==_mimepart_5e4419c323374_1b62afa793fe5b4981d1--\r\n" to include "You missed an email from list165@example.org "
Diff:
@@ -1,2 +1,51 @@
-You missed an email from list165@example.org
+Date: Wed, 12 Feb 2020 15:29:07 +0000
+From: list165@example.org
+Sender: list165-bounce@example.org
+To: admin@example.org
+Message-ID: <5e4419c32e6f3_1b62afa793fe5b49823e@runner-EyYDB4La-project-493-concurrent-4.mail>
+Subject: Notice
+Mime-Version: 1.0
+Content-Type: multipart/signed;
+ boundary="--==_mimepart_5e4419c323374_1b62afa793fe5b4981d1";
+ micalg=pgp-sha1;
+ protocol="application/pgp-signature"
+Content-Transfer-Encoding: 7bit
+
+This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
+----==_mimepart_5e4419c323374_1b62afa793fe5b4981d1
+Content-Type: text/plain;
+ charset=UTF-8
+Content-Transfer-Encoding: base64
+
+WW91IG1pc3NlZCBhbiBlbWFpbCBmcm9tIGxpc3QxNjVAZXhhbXBsZS5vcmcg
+YmVjYXVzZSB5b3VyIHN1YnNjcmlwdGlvbiBpc24ndCBhc3NvY2lhdGVkIHdp
+dGggYSAodXNhYmxlKSBPcGVuUEdQIGtleS4gUGxlYXNlIGZpeCB0aGlzLgoK
+S2luZCByZWdhcmRzLApZb3VyIFNjaGxldWRlciBzeXN0ZW0uCg==
+
+----==_mimepart_5e4419c323374_1b62afa793fe5b4981d1
+Content-Type: application/pgp-signature;
+ name=signature.asc
+Content-Transfer-Encoding: 7bit
+Content-Disposition: attachment;
+ filename=signature.asc
+Content-Description: OpenPGP digital signature
+
+-----BEGIN PGP SIGNATURE-----
+
+iQIzBAABCgAdFiEEWccfs4ruIuCRx4JZ0GNQRA91m9MFAl5EGcMACgkQ0GNQRA91
+m9NYmBAAjuRpMRFMfBppIcCky5R3GEVg3z9CN9YyJAkKaLZVZ6hn9+eLEJGcwEmQ
+0zNgZPNu8XX6RpfMfFzikKkTrMFWo2wSteNdljhvjeTYxy7jRpFhmFPY8eCjoBMd
+1MJaml8WYJ6mvClD6osBTWFAtizspeQDfdb4TxbySBQpSH9ooYYMBqy7krbe8mih
+CFoB6X7o0xFYiayd4dAyuqy1TRWgOMW219BngbEvIwnsGRyanxc8jM/EcsEWQyPk
+CX8gIBqpzWJQsZmANUBLhZJl1GgX7TZ4m0vIhHtbmy0jLnjF544SUNErMnusTTL6
+aUkyMa97i8eQYUbXuwpmbaiNfbJCoeCdiSXQ9WC015xc2971SU/Bgb+UZ5spxYHA
+y/XxaDc+VZ2o0FKit7ERuyMa4LbNaowMBBtUS/BirL3k06N+TBnj5bj/v9PmmK9v
+isDpwz7AR2rVCoFmaadXmNrSGxrHWCl114sNTenW6KpzXht+k+wxSwxw+UAowo1N
+FF+SWntiHfYanGpd6yMwC10Ay/lP9g5nctuQh822HLVY3OZe1kHadFCQCk/HeIyv
+4/gGgx3EBudaY7SJfVf5YcOBqwsYTe72crTXaVH1BK3gXd0d+BTDQFh+fD4jQufW
+kZAm2aBWzJU4aQ/bZ1u6AUFlGpv2A8/245rHl1EsOAM7YPRQHS0=
+=24Zl
+-----END PGP SIGNATURE-----
+
+----==_mimepart_5e4419c323374_1b62afa793fe5b4981d1--
# ./spec/schleuder/runner_spec.rb:299:in `block (3 levels) in <top (required)>'
# ./spec/spec_helper.rb:47:in `block (3 levels) in <top (required)>'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/generic/base.rb:16:in `cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:87:in `block (2 levels) in cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:88:in `cleaning'
# ./spec/spec_helper.rb:46:in `block (2 levels) in <top (required)>'
5) Schleuder::Runner#run Quoted-Printable encoding is handled properly in cleartext emails
Failure/Error: expect(content_part.parts.last.content_transfer_encoding).to eql('quoted-printable')
expected: "quoted-printable"
got: "base64"
(compared using eql?)
# ./spec/schleuder/runner_spec.rb:356:in `block (4 levels) in <top (required)>'
# ./spec/spec_helper.rb:47:in `block (3 levels) in <top (required)>'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/generic/base.rb:16:in `cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:87:in `block (2 levels) in cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:88:in `cleaning'
# ./spec/spec_helper.rb:46:in `block (2 levels) in <top (required)>'
6) Schleuder::Runner#run Quoted-Printable encoding is handled properly in encrypted emails
Failure/Error: expect(content_part.parts.last.content_transfer_encoding).to eql('quoted-printable')
expected: "quoted-printable"
got: "base64"
(compared using eql?)
# ./spec/schleuder/runner_spec.rb:387:in `block (4 levels) in <top (required)>'
# ./spec/spec_helper.rb:47:in `block (3 levels) in <top (required)>'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/generic/base.rb:16:in `cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:87:in `block (2 levels) in cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:88:in `cleaning'
# ./spec/spec_helper.rb:46:in `block (2 levels) in <top (required)>'
7) cli #refresh_keys reports errors from refreshing keys
Failure/Error: expect(mail.to_s).to include("Refreshing all keys from the keyring of list #{list.email} resulted in this")
expected "Date: Wed, 12 Feb 2020 15:29:29 +0000\r\nFrom: list194@example.org\r\nSender: root@localhost\r\nTo: ...4ko\r\n-----END PGP SIGNATURE-----\r\n\r\n----==_mimepart_5e4419d942ad2_1b62afa793fe5b41088a8--\r\n" to include "Refreshing all keys from the keyring of list list194@example.org resulted in this"
Diff:
@@ -1,2 +1,63 @@
-Refreshing all keys from the keyring of list list194@example.org resulted in this
+Date: Wed, 12 Feb 2020 15:29:29 +0000
+From: list194@example.org
+Sender: root@localhost
+To: admin@example.org
+Message-ID: <5e4419d951758_1b62afa793fe5b410898f@runner-EyYDB4La-project-493-concurrent-4.mail>
+Subject: Keys update
+Mime-Version: 1.0
+Content-Type: multipart/signed;
+ boundary="--==_mimepart_5e4419d942ad2_1b62afa793fe5b41088a8";
+ micalg=pgp-sha1;
+ protocol="application/pgp-signature"
+Content-Transfer-Encoding: 7bit
+Errors-To: root@localhost
+List-Id: <list194.example.org>
+
+This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
+----==_mimepart_5e4419d942ad2_1b62afa793fe5b41088a8
+Content-Type: multipart/mixed;
+ boundary="--==_mimepart_5e4419d942a6d_1b62afa793fe5b41087c9";
+ charset=UTF-8
+Content-Transfer-Encoding: 7bit
+
+
+----==_mimepart_5e4419d942a6d_1b62afa793fe5b41087c9
+Content-Type: text/plain;
+ charset=UTF-8
+Content-Transfer-Encoding: base64
+
+UmVmcmVzaGluZyBhbGwga2V5cyBmcm9tIHRoZSBrZXlyaW5nIG9mIGxpc3Qg
+bGlzdDE5NEBleGFtcGxlLm9yZyByZXN1bHRlZCBpbiB0aGlzOgoKZ3BnOiBr
+ZXlzZXJ2ZXIgcmVmcmVzaCBmYWlsZWQ6IE5vIGtleXNlcnZlciBhdmFpbGFi
+bGUKCmdwZzoga2V5c2VydmVyIHJlZnJlc2ggZmFpbGVkOiBObyBrZXlzZXJ2
+ZXIgYXZhaWxhYmxlCg==
+
+----==_mimepart_5e4419d942a6d_1b62afa793fe5b41087c9--
+
+----==_mimepart_5e4419d942ad2_1b62afa793fe5b41088a8
+Content-Type: application/pgp-signature;
+ name=signature.asc
+Content-Transfer-Encoding: 7bit
+Content-Disposition: attachment;
+ filename=signature.asc
+Content-Description: OpenPGP digital signature
+
+-----BEGIN PGP SIGNATURE-----
+
+iQIzBAABCgAdFiEEWccfs4ruIuCRx4JZ0GNQRA91m9MFAl5EGdkACgkQ0GNQRA91
+m9MNeBAAyHsOpvoAV9eSf+5BlNF5WKOECxLqMDnbmQh2J8bAAcyVYQcxg3C+lJPS
+decQCGIcLofLqEdMnugAjpZfxfB0d7gWsHBgX+ENXQlBJfZXaqjRgYpUS9vYBaU7
+GB98VMP7i7i/ACg+eXS+21eoZAz2cER8tv5ELCxvPrFX66htWJicLAQypGkaMo4Q
+FMKgG+lHa8QHjdUqv40Jy5EGonIKyeRTNNofx6b77KPnjSElKCKVMgEJkLuUT7CG
+np37fGkEBaahcfnpRLEUXyf+qPykkbUpL2Y8jpbthyrYZ1/3BHnrTX9RMm4bY76X
+HxfK/uJPZeN1rXdFmxJImGTSi4EfSRjkiguibinee7Qf/f11ffzzbRtP+toehhVc
+RLwPi2rfZx6kULBVnGDDNUB423qjwkPkyrMcaR/NgIEHAbao3GKdNJJk/FGQdycr
+yudefID/efdqnrXwPk8ZGEthNxnsmtdwjqSNQR4S8leoOvVW7+wZNyTAaIzNOQOS
+Gwu+hIfIRm+hZEnBJKERfKX5HKk82oG+3IFfkuODJqy2CpgnSeyHZ5p4pksYsM/4
+XuaqHQ+DiNuWipI7CJ3GM1c4Gm2eGKtaqSRGzEYLm9m2cM0Tj2o/mUvFi1kGIVQi
+FiRUJlvm3vrSU3MnUxZtyGylDIeDrk4V6ZJPmvN2u7o64Qwv6M8=
+=Z4ko
+-----END PGP SIGNATURE-----
+
+----==_mimepart_5e4419d942ad2_1b62afa793fe5b41088a8--
# ./spec/schleuder/integration/cli_spec.rb:203:in `block (3 levels) in <top (required)>'
# ./spec/spec_helper.rb:47:in `block (3 levels) in <top (required)>'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/generic/base.rb:16:in `cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:87:in `block (2 levels) in cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:88:in `cleaning'
# ./spec/spec_helper.rb:46:in `block (2 levels) in <top (required)>'
8) user sends keyword x-resend with utf-8 body and umlauts
Failure/Error: expect(resent_message.parts[0].body.to_s).to eql(content_body.encode(resent_message.parts[0].charset))
expected: "This is a test\r\nAnd here are some umlauts:\u00C4\u00E4\u00D6\u00F6\u00DC\u00FC\u00DF"
got: "This is a test\r\nAnd here are some umlauts:\xC3\x84\xC3\xA4\xC3\x96\xC3\xB6\xC3\x9C\xC3\xBC\xC3\x9F"
(compared using eql?)
Diff:
@@ -1,3 +1,3 @@
This is a test
-And here are some umlauts:???????
+And here are some umlauts:??????????????
# ./spec/schleuder/integration/keywords_spec.rb:1905:in `block (2 levels) in <top (required)>'
# ./spec/spec_helper.rb:47:in `block (3 levels) in <top (required)>'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/generic/base.rb:16:in `cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:87:in `block (2 levels) in cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:88:in `cleaning'
# ./spec/spec_helper.rb:46:in `block (2 levels) in <top (required)>'
9) user sends keyword x-resend with iso-8859-1 body
Failure/Error: expect(resent_message.parts[0].body.to_s).to eql(content_body.encode(resent_message.parts[0].charset))
expected: "Hello again! \xA1Hola!\r\n"
got: "Hello again! \xA1Hola!\r\n"
(compared using eql?)
Diff:
@@ -1,2 +1,2 @@
-Hello again! ?Hola!
+Hello again! ?Hola!
# ./spec/schleuder/integration/keywords_spec.rb:1863:in `block (2 levels) in <top (required)>'
# ./spec/spec_helper.rb:47:in `block (3 levels) in <top (required)>'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/generic/base.rb:16:in `cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:87:in `block (2 levels) in cleaning'
# ./vendor/ruby/2.5.0/gems/database_cleaner-1.8.2/lib/database_cleaner/configuration.rb:88:in `cleaning'
# ./spec/spec_helper.rb:46:in `block (2 levels) in <top (required)>'
Finished in 2 minutes 42.5 seconds (files took 1.2 seconds to load)
428 examples, 9 failures
Failed examples:
rspec ./spec/schleuder/integration/filters_spec.rb:55 # running filters .fix_exchange_messages! accepts a valid plain-text message
rspec ./spec/schleuder/integration/filters_spec.rb:32 # running filters .fix_exchange_messages! accepts an invalid pgp/mime Exchange message
rspec ./spec/schleuder/runner_spec.rb:269 # Schleuder::Runner#run delivers a signed error message if a subscription's key is expired on a encrypted-only list
rspec ./spec/schleuder/runner_spec.rb:290 # Schleuder::Runner#run delivers a signed error message if a subscription's key is not available on a encrypted-only list
rspec ./spec/schleuder/runner_spec.rb:347 # Schleuder::Runner#run Quoted-Printable encoding is handled properly in cleartext emails
rspec ./spec/schleuder/runner_spec.rb:378 # Schleuder::Runner#run Quoted-Printable encoding is handled properly in encrypted emails
rspec ./spec/schleuder/integration/cli_spec.rb:195 # cli #refresh_keys reports errors from refreshing keys
rspec ./spec/schleuder/integration/keywords_spec.rb:1869 # user sends keyword x-resend with utf-8 body and umlauts
rspec ./spec/schleuder/integration/keywords_spec.rb:1827 # user sends keyword x-resend with iso-8859-1 body