js: make method parameters objects
[gpgme.git] / lang / js / BrowserTestExtension / tests / KeyInfos.js
1 /* gpgme.js - Javascript integration for gpgme
2  * Copyright (C) 2018 Bundesamt für Sicherheit in der Informationstechnik
3  *
4  * This file is part of GPGME.
5  *
6  * GPGME is free software; you can redistribute it and/or modify it
7  * under the terms of the GNU Lesser General Public License as
8  * published by the Free Software Foundation; either version 2.1 of
9  * the License, or (at your option) any later version.
10  *
11  * GPGME is distributed in the hope that it will be useful, but
12  * WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this program; if not, see <http://www.gnu.org/licenses/>.
18  * SPDX-License-Identifier: LGPL-2.1+
19  *
20  * Author(s):
21  *     Maximilian Krambach <mkrambach@intevation.de>
22  */
23
24 /* global describe, it, expect, before, Gpgmejs */
25 /* global inputvalues*/
26
27 describe('Key information', function () {
28     let context = null;
29     before(function (done){
30         const prm = Gpgmejs.init();
31         prm.then(function (gpgmejs){
32             context = gpgmejs;
33             done();
34         });
35     });
36
37     it('A fingerprint is consistently returned upper case hex', function (done){
38         const mixedCase = inputvalues.encrypt.good.fingerprint_mixedcase;
39         context.Keyring.getKeys({ pattern: mixedCase }).then(function (result){
40             expect(result).to.be.an('array');
41             expect(result.length).to.equal(1);
42             expect(result[0].fingerprint).to.equal(mixedCase.toUpperCase());
43             done();
44         });
45     });
46
47     it('A userId keeps their encoding', function (done){
48         context.Keyring.importKey(inputvalues.publicKeyNonAscii.key, true)
49             .then(function (result){
50                 expect(result.Keys[0]).to.be.an('object');
51                 const user = result.Keys[0].key.get('userids')[0];
52                 expect(user.get('name')).to.equal(
53                     inputvalues.publicKeyNonAscii.userid);
54                 done();
55             });
56     });
57 });