Use async/await in addMockContact instead of nested promises

pull/6/head
sachaaaaa 7 years ago
parent 42e941531f
commit 38e6272dc6

@ -62,53 +62,41 @@
}) })
); );
}, },
addMockContact(doSave) { async addMockContact(doSave) {
if (doSave === undefined) { if (doSave === undefined) {
doSave = true; doSave = true;
} }
libsignal.KeyHelper.generateIdentityKeyPair().then(keyPair => { const keyPair = await libsignal.KeyHelper.generateIdentityKeyPair();
const pubKey = StringView.arrayBufferToHex(keyPair.pubKey); const pubKey = StringView.arrayBufferToHex(keyPair.pubKey);
const privKey = StringView.arrayBufferToHex(keyPair.privKey); const privKey = StringView.arrayBufferToHex(keyPair.privKey);
log.info('contact pubkey ' + pubKey); log.info('contact pubkey ' + pubKey);
log.info('contact privkey ' + privKey); log.info('contact privkey ' + privKey);
const signedKeyId = Math.floor((Math.random() * 1000) + 1); const signedKeyId = Math.floor((Math.random() * 1000) + 1);
const promises = [
libsignal.KeyHelper.generateSignedPreKey(keyPair, signedKeyId) const signedPreKey = await libsignal.KeyHelper.generateSignedPreKey(keyPair, signedKeyId);
.then((signedPreKey) => {
const contactSignedPreKey = { const contactSignedPreKey = {
publicKey: signedPreKey.keyPair.pubKey, publicKey: signedPreKey.keyPair.pubKey,
signature: signedPreKey.signature, signature: signedPreKey.signature,
keyId: signedPreKey.keyId keyId: signedPreKey.keyId
}; };
if (doSave) { if (doSave) {
return textsecure.storage.protocol.storeContactSignedPreKey(pubKey, contactSignedPreKey); await textsecure.storage.protocol.storeContactSignedPreKey(pubKey, contactSignedPreKey);
} }
else { else {
log.info('signed prekey: ' + StringView.arrayBufferToHex(contactSignedPreKey.publicKey)); log.info('signed prekey: ' + StringView.arrayBufferToHex(contactSignedPreKey.publicKey));
log.info('signature: ' + StringView.arrayBufferToHex(contactSignedPreKey.signature)); log.info('signature: ' + StringView.arrayBufferToHex(contactSignedPreKey.signature));
return Promise.resolve();
} }
}),
];
for (let keyId = 0; keyId < 10; keyId += 1) { for (let keyId = 0; keyId < 10; keyId += 1) {
promises.push( const preKey = await libsignal.KeyHelper.generatePreKey(keyId);
libsignal.KeyHelper.generatePreKey(keyId)
.then((preKey) => {
if (doSave) { if (doSave) {
return textsecure.storage.protocol.storeContactPreKey(pubKey, { publicKey: preKey.keyPair.pubKey, keyId: keyId }); await textsecure.storage.protocol.storeContactPreKey(pubKey, { publicKey: preKey.keyPair.pubKey, keyId: keyId });
} }
else { else {
log.info('signed prekey: ' + StringView.arrayBufferToHex(preKey.keyPair.pubKey)); log.info('signed prekey: ' + StringView.arrayBufferToHex(preKey.keyPair.pubKey));
return Promise.resolve();
} }
}),
)
} }
return Promise.all(promises).then(
log.info("Added mock contact") log.info("Added mock contact")
);
});
}, },
registerSecondDevice(setProvisioningUrl, confirmNumber, progressCallback) { registerSecondDevice(setProvisioningUrl, confirmNumber, progressCallback) {
const createAccount = this.createAccount.bind(this); const createAccount = this.createAccount.bind(this);

Loading…
Cancel
Save