[git] GPGME - branch, javascript-binding, updated. gpgme-1.11.1-71-g8964627

[email protected] (by Maximilian Krambach)
Newsgroups gmane.comp.encryption.gpg.cvs
Message-ID <[email protected]>
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GnuPG Made Easy".

The branch, javascript-binding has been updated
       via  8964627f6ad7c407785a9fa5cb508c7c28be0d60 (commit)
      from  67b6fa5a2948deed6a914c638f923fb9ad2eac66 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 8964627f6ad7c407785a9fa5cb508c7c28be0d60
Author: Maximilian Krambach <[email protected]>
Date:   Mon Jul 9 11:57:01 2018 +0200

    js: fix verify result reporting
    
    --
    
    * src/Signature.js: searching for overall validity in the "summary"
      property
    * BrowsertestExtension: Added two verify tests

diff --git a/lang/js/BrowserTestExtension/browsertest.html b/lang/js/BrowserTestExtension/browsertest.html
index f3d7a40..de8cd41 100644
--- a/lang/js/BrowserTestExtension/browsertest.html
+++ b/lang/js/BrowserTestExtension/browsertest.html
@@ -18,6 +18,7 @@
     <script src="tests/encryptTest.js"></script>
     <script src="tests/encryptDecryptTest.js"></script>
     <script src="tests/signTest.js"></script>
+    <script src="tests/verifyTest.js"></script>
     <script src="tests/KeyImportExport.js"></script>
 <!-- run tests -->
     <script src="runbrowsertest.js"></script>
diff --git a/lang/js/BrowserTestExtension/tests/verifyTest.js b/lang/js/BrowserTestExtension/tests/verifyTest.js
new file mode 100644
index 0000000..bf0f0c0
--- /dev/null
+++ b/lang/js/BrowserTestExtension/tests/verifyTest.js
@@ -0,0 +1,86 @@
+/* gpgme.js - Javascript integration for gpgme
+ * Copyright (C) 2018 Bundesamt für Sicherheit in der Informationstechnik
+ *
+ * This file is part of GPGME.
+ *
+ * GPGME is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * GPGME is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this program; if not, see <http://www.gnu.org/licenses/>.
+ * SPDX-License-Identifier: LGPL-2.1+
+ *
+ * Author(s):
+ *     Maximilian Krambach <[email protected]>
+ */
+
+/* global describe, it, expect, bigString, inputvalues, Gpgmejs */
+
+let verifyData = {
+    signedMessage: '-----BEGIN PGP SIGNED MESSAGE-----\n' +
+    'Hash: SHA256\n' +
+    '\n' +
+    'Matschige Münsteraner Marshmallows\n' +
+    '-----BEGIN PGP SIGNATURE-----\n' +
+    '\n' +
+    'iQEzBAEBCAAdFiEE34YHmHCyv9oBiN3shwTx6WpaVdQFAlsqWxYACgkQhwTx6Wpa\n' +
+    'VdRaTQf9Fj8agQzbE6DtonewZVGzj1KmjjpyAypnDldY21lrN8zIaQ+aKqRVkVrV\n' +
+    '5A/MeUfoHh0b/9G1Co4LOuNjGS14GRNlFvPtxeA2mCwlk7kgP2i6ekbHdEXWcG9c\n' +
+    'gSbzdJ3EgfVCFNkC/yhldXSLOJZ7oyiGEteDpi8dDSa9dIprT++sQ4kRuR8jPrIi\n' +
+    'UUY+DltG3it7PybcTFfQm53I0mtnpFsizzCmgyJAkfG5fwVL3uWwbYGofD049PSu\n' +
+    '6IEkSY74r8JbAbkCOiF/ln40RYGSwM0Ta5rrb3A3MixZNL/a1r17oljkaWz8e8VT\n' +
+    'N7NUgBHwbIQ4e3RLuUU8fF3ICCGDOw==\n' +
+    '=oGai\n' +
+    '-----END PGP SIGNATURE-----\n'
+};
+
+describe('Verify data', function () {
+    it('Successful verify message', function (done) {
+        let message = verifyData.signedMessage;
+        let prm = Gpgmejs.init();
+        prm.then(function (context) {
+            context.verify(message).then(function(result){
+                expect(result.data).to.be.a('string');
+                expect(result.all_valid).to.be.true;
+                expect(result.count).to.equal(1);
+                expect(result.signatures.good).to.be.an('array');
+                expect(result.signatures.good.length).to.equal(1);
+                expect(result.signatures.good[0].fingerprint)
+                    .to.be.a('string');
+                expect(result.signatures.good[0].valid).to.be.true;
+                done();
+            });
+        });
+    });
+
+    it('Encrypt-Sign-Verify random message', function (done) {
+        let message = bigString(2000);
+        let fpr = inputvalues.encrypt.good.fingerprint;
+        let prm = Gpgmejs.init();
+        prm.then(function (context) {
+            context.encrypt(message, fpr).then(function(message_enc){
+                context.sign(message_enc.data, fpr).then(function(message_encsign){
+                    context.verify(message_encsign.data).then(function(result){
+                        expect(result.data).to.equal(message_enc.data);
+                        expect(result.data).to.be.a('string');
+                        expect(result.all_valid).to.be.true;
+                        expect(result.count).to.equal(1);
+                        expect(result.signatures.good).to.be.an('array');
+                        expect(result.signatures.good.length).to.equal(1);
+                        expect(result.signatures.good[0].fingerprint)
+                            .to.equal(fpr);
+                        expect(result.signatures.good[0].valid).to.be.true;
+                        done();
+                    });
+                });
+            });
+        });
+    });
+});
\ No newline at end of file
diff --git a/lang/js/src/Signature.js b/lang/js/src/Signature.js
index a07fc4d..c3c511a 100644
--- a/lang/js/src/Signature.js
+++ b/lang/js/src/Signature.js
@@ -67,7 +67,6 @@ export function createSignature(sigObject){
             }
         }
     }
-    console.log('sig created');
     return new GPGME_Signature(sigObject);
 }
 
@@ -114,7 +113,7 @@ class GPGME_Signature {
      * additional information
      */
     get valid() {
-        if (this._rawSigObject.valid === true){
+        if (this._rawSigObject.summary.valid === true){
             return true;
         } else {
             return false;

-----------------------------------------------------------------------

Summary of changes:
 lang/js/BrowserTestExtension/browsertest.html    |  1 +
 lang/js/BrowserTestExtension/tests/verifyTest.js | 86 ++++++++++++++++++++++++
 lang/js/src/Signature.js                         |  3 +-
 3 files changed, 88 insertions(+), 2 deletions(-)
 create mode 100644 lang/js/BrowserTestExtension/tests/verifyTest.js


hooks/post-receive
-- 
GnuPG Made Easy
http://git.gnupg.org


_______________________________________________
Gnupg-commits mailing list
[email protected]
http://lists.gnupg.org/mailman/listinfo/gnupg-commits
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.