From 27692b4dfce6f9d57a4bb1328f5b71fcabde333a Mon Sep 17 00:00:00 2001
From: lilia <liliakai@gmail.com>
Date: Wed, 14 Jun 2017 10:40:21 -0700
Subject: [PATCH] Normalize whitespace in storage tests

// FREEBIE
---
 test/storage_test.js | 556 +++++++++++++++++++++----------------------
 1 file changed, 276 insertions(+), 280 deletions(-)

diff --git a/test/storage_test.js b/test/storage_test.js
index 642b40659..e45663708 100644
--- a/test/storage_test.js
+++ b/test/storage_test.js
@@ -1,357 +1,353 @@
-/*
- * vim: ts=4:sw=4:expandtab
- */
-
 'use strict';
 
 describe("SignalProtocolStore", function() {
-    before(function(done) {
-        storage.put('registrationId', 1337);
-        storage.put('identityKey', identityKey);
-        storage.fetch().then(done, done);
+  before(function(done) {
+    storage.put('registrationId', 1337);
+    storage.put('identityKey', identityKey);
+    storage.fetch().then(done, done);
+  });
+  var store = textsecure.storage.protocol;
+  var identifier = '+5558675309';
+  var identityKey = {
+    pubKey: libsignal.crypto.getRandomBytes(33),
+  privKey: libsignal.crypto.getRandomBytes(32),
+  };
+  var testKey = {
+    pubKey: libsignal.crypto.getRandomBytes(33),
+  privKey: libsignal.crypto.getRandomBytes(32),
+  };
+  describe('getLocalRegistrationId', function() {
+    it('retrieves my registration id', function(done) {
+      store.getLocalRegistrationId().then(function(reg) {
+        assert.strictEqual(reg, 1337);
+      }).then(done, done);
+    });
+  });
+  describe('getIdentityKeyPair', function() {
+    it('retrieves my identity key', function(done) {
+      store.getIdentityKeyPair().then(function(key) {
+        assertEqualArrayBuffers(key.pubKey, identityKey.pubKey);
+        assertEqualArrayBuffers(key.privKey, identityKey.privKey);
+      }).then(done,done);
+    });
+  });
+  describe('saveIdentity', function() {
+    var IdentityKeyRecord = Backbone.Model.extend({
+      database: Whisper.Database,
+        storeName: 'identityKeys'
     });
-    var store = textsecure.storage.protocol;
-    var identifier = '+5558675309';
-    var identityKey = {
-        pubKey: libsignal.crypto.getRandomBytes(33),
-        privKey: libsignal.crypto.getRandomBytes(32),
-    };
-    var testKey = {
-        pubKey: libsignal.crypto.getRandomBytes(33),
-        privKey: libsignal.crypto.getRandomBytes(32),
-    };
-    describe('getLocalRegistrationId', function() {
-        it('retrieves my registration id', function(done) {
-            store.getLocalRegistrationId().then(function(reg) {
-                assert.strictEqual(reg, 1337);
-            }).then(done, done);
+    var record = new IdentityKeyRecord({id: identifier});
+
+    it('stores identity keys', function(done) {
+      store.saveIdentity(identifier, testKey.pubKey).then(function() {
+        return store.loadIdentityKey(identifier).then(function(key) {
+          assertEqualArrayBuffers(key, testKey.pubKey);
         });
+      }).then(done,done);
     });
-    describe('getIdentityKeyPair', function() {
-        it('retrieves my identity key', function(done) {
-            store.getIdentityKeyPair().then(function(key) {
-                assertEqualArrayBuffers(key.pubKey, identityKey.pubKey);
-                assertEqualArrayBuffers(key.privKey, identityKey.privKey);
-            }).then(done,done);
+    it('allows key changes', function(done) {
+      var newIdentity = libsignal.crypto.getRandomBytes(33);
+      store.saveIdentity(identifier, testKey.pubKey).then(function() {
+        store.saveIdentity(identifier, newIdentity).then(function() {
+          done();
         });
+      }).catch(done);
     });
-    describe('saveIdentity', function() {
-      var IdentityKeyRecord = Backbone.Model.extend({
-        database: Whisper.Database,
-        storeName: 'identityKeys'
-      });
-      var record = new IdentityKeyRecord({id: identifier});
 
-      it('stores identity keys', function(done) {
+    describe('When there is no existing key (first use)', function() {
+      before(function(done) {
+        store.removeIdentityKey(identifier).then(function() {
           store.saveIdentity(identifier, testKey.pubKey).then(function() {
-              return store.loadIdentityKey(identifier).then(function(key) {
-                  assertEqualArrayBuffers(key, testKey.pubKey);
-              });
-          }).then(done,done);
+            record.fetch().then(function() { done(); });
+          });
+        });
       });
-      it('allows key changes', function(done) {
-          var newIdentity = libsignal.crypto.getRandomBytes(33);
-          store.saveIdentity(identifier, testKey.pubKey).then(function() {
-              store.saveIdentity(identifier, newIdentity).then(function() {
-                  done();
-              });
-          }).catch(done);
+      it('marks the key firstUse', function() {
+        assert(record.get('firstUse'));
       });
-
-      describe('When there is no existing key (first use)', function() {
-        before(function(done) {
-          store.removeIdentityKey(identifier).then(function() {
-            store.saveIdentity(identifier, testKey.pubKey).then(function() {
-              record.fetch().then(function() { done(); });
-            });
+      it('sets the timestamp', function() {
+        assert(record.get('timestamp'));
+      });
+    });
+    describe('When there is a different existing key (non first use)', function() {
+      var newIdentity = libsignal.crypto.getRandomBytes(33);
+      var oldTimestamp = Date.now();
+      before(function(done) {
+        record.save({
+          publicKey           : testKey.pubKey,
+          firstUse            : true,
+          timestamp           : oldTimestamp,
+          nonblockingApproval : false,
+        }).then(function() {
+          store.saveIdentity(identifier, newIdentity).then(function() {
+            record.fetch().then(function() { done(); });
           });
         });
-        it('marks the key firstUse', function() {
-          assert(record.get('firstUse'));
-        });
-        it('sets the timestamp', function() {
-          assert(record.get('timestamp'));
-        });
       });
-      describe('When there is a different existing key (non first use)', function() {
-        var newIdentity = libsignal.crypto.getRandomBytes(33);
-        var oldTimestamp = Date.now();
+      it('marks the key not firstUse', function() {
+        assert(!record.get('firstUse'));
+      });
+      it('updates the timestamp', function() {
+        assert.notEqual(record.get('timestamp'), oldTimestamp);
+      });
+    });
+    describe('When the key has not changed', function() {
+      var oldTimestamp = Date.now();
+      before(function(done) {
+        record.save({
+          publicKey           : testKey.pubKey,
+          timestamp           : oldTimestamp,
+          nonblockingApproval : false,
+        }).then(function() { done(); });
+      });
+      describe('If it is marked firstUse', function() {
         before(function(done) {
-          record.save({
-              publicKey           : testKey.pubKey,
-              firstUse            : true,
-              timestamp           : oldTimestamp,
-              nonblockingApproval : false,
-          }).then(function() {
-            store.saveIdentity(identifier, newIdentity).then(function() {
-              record.fetch().then(function() { done(); });
+          record.save({ firstUse: true }).then(function() { done(); });
+        });
+        it('nothing changes', function(done) {
+          store.saveIdentity(identifier, testKey.pubKey, true).then(function() {
+            record.fetch().then(function() {
+              assert(!record.get('nonblockingApproval'));
+              assert.strictEqual(record.get('timestamp'), oldTimestamp);
+              done();
             });
           });
         });
-        it('marks the key not firstUse', function() {
-          assert(!record.get('firstUse'));
-        });
-        it('updates the timestamp', function() {
-          assert.notEqual(record.get('timestamp'), oldTimestamp);
-        });
       });
-      describe('When the key has not changed', function() {
-        var oldTimestamp = Date.now();
+      describe('If it is not marked firstUse', function() {
         before(function(done) {
-          record.save({
-              publicKey           : testKey.pubKey,
-              timestamp           : oldTimestamp,
-              nonblockingApproval : false,
-          }).then(function() { done(); });
+          record.save({ firstUse: false }).then(function() { done(); });
         });
-        describe('If it is marked firstUse', function() {
-          before(function(done) {
-            record.save({ firstUse: true }).then(function() { done(); });
-          });
-          it('nothing changes', function(done) {
+        describe('If nonblocking approval is required', function() {
+          it('updates non-blocking approval', function(done) {
             store.saveIdentity(identifier, testKey.pubKey, true).then(function() {
               record.fetch().then(function() {
-                assert(!record.get('nonblockingApproval'));
+                assert(record.get('nonblockingApproval'));
                 assert.strictEqual(record.get('timestamp'), oldTimestamp);
+                assert.strictEqual(record.get('firstUse'), false);
                 done();
               });
             });
           });
         });
-        describe('If it is not marked firstUse', function() {
-          before(function(done) {
-            record.save({ firstUse: false }).then(function() { done(); });
-          });
-          describe('If nonblocking approval is required', function() {
-            it('updates non-blocking approval', function(done) {
-              store.saveIdentity(identifier, testKey.pubKey, true).then(function() {
-                record.fetch().then(function() {
-                  assert(record.get('nonblockingApproval'));
-                  assert.strictEqual(record.get('timestamp'), oldTimestamp);
-                  assert.strictEqual(record.get('firstUse'), false);
-                  done();
-                });
-              });
-            });
-          });
+      });
+    });
+  });
+  describe('isTrustedIdentity', function() {
+    describe('When invalid direction is given', function(done) {
+      it('should fail', function(done) {
+        store.isTrustedIdentity(identifier, testKey.pubKey).then(function() {
+          done(new Error('isTrustedIdentity should have failed'));
+        }).catch(function(e) {
+          done();
         });
       });
     });
-    describe('isTrustedIdentity', function() {
-      describe('When invalid direction is given', function(done) {
-        it('should fail', function(done) {
-          store.isTrustedIdentity(identifier, testKey.pubKey).then(function() {
-            done(new Error('isTrustedIdentity should have failed'));
-          }).catch(function(e) {
+    describe('When direction is RECEIVING', function() {
+      it('always returns true', function(done) {
+        var newIdentity = libsignal.crypto.getRandomBytes(33);
+        store.saveIdentity(identifier, testKey.pubKey).then(function() {
+          store.isTrustedIdentity(identifier, newIdentity, store.Direction.RECEIVING).then(function(trusted) {
+            if (trusted) {
+              done();
+            } else {
+              done(new Error('isTrusted returned false when receiving'));
+            }
+          }).catch(done);
+        });
+      });
+    });
+    describe('When direction is SENDING', function() {
+      describe('When there is no existing key (first use)', function() {
+        before(function(done) {
+          store.removeIdentityKey(identifier).then(function() {
             done();
           });
         });
-      });
-      describe('When direction is RECEIVING', function() {
-        it('always returns true', function(done) {
-            var newIdentity = libsignal.crypto.getRandomBytes(33);
-            store.saveIdentity(identifier, testKey.pubKey).then(function() {
-                store.isTrustedIdentity(identifier, newIdentity, store.Direction.RECEIVING).then(function(trusted) {
-                    if (trusted) {
-                        done();
-                    } else {
-                        done(new Error('isTrusted returned false when receiving'));
-                    }
-                }).catch(done);
-            });
+        it('returns true', function(done) {
+          var newIdentity = libsignal.crypto.getRandomBytes(33);
+          store.isTrustedIdentity(identifier, newIdentity, store.Direction.SENDING).then(function(trusted) {
+            if (trusted) {
+              done();
+            } else {
+              done(new Error('isTrusted returned false on first use'));
+            }
+          }).catch(done);
         });
       });
-      describe('When direction is SENDING', function() {
-        describe('When there is no existing key (first use)', function() {
-          before(function(done) {
-            store.removeIdentityKey(identifier).then(function() {
-              done();
-            });
+      describe('When there is an existing key', function() {
+        before(function(done) {
+          store.saveIdentity(identifier, testKey.pubKey).then(function() {
+            done();
           });
-          it('returns true', function(done) {
+        });
+        describe('When the existing key is different', function() {
+          it('returns false', function(done) {
             var newIdentity = libsignal.crypto.getRandomBytes(33);
             store.isTrustedIdentity(identifier, newIdentity, store.Direction.SENDING).then(function(trusted) {
-                if (trusted) {
-                    done();
-                } else {
-                    done(new Error('isTrusted returned false on first use'));
-                }
+              if (trusted) {
+                done(new Error('isTrusted returned true on untrusted key'));
+              } else {
+                done();
+              }
             }).catch(done);
           });
         });
-        describe('When there is an existing key', function() {
+        describe('When the existing key matches the new key', function() {
+          var newIdentity = libsignal.crypto.getRandomBytes(33);
           before(function(done) {
-            store.saveIdentity(identifier, testKey.pubKey).then(function() {
+            store.saveIdentity(identifier, newIdentity).then(function() {
               done();
             });
           });
-          describe('When the existing key is different', function() {
-            it('returns false', function(done) {
-              var newIdentity = libsignal.crypto.getRandomBytes(33);
-              store.isTrustedIdentity(identifier, newIdentity, store.Direction.SENDING).then(function(trusted) {
-                  if (trusted) {
-                      done(new Error('isTrusted returned true on untrusted key'));
-                  } else {
-                      done();
-                  }
-              }).catch(done);
-            });
+          it('returns false if blocking approval is required', function(done) {
+            storage.put('safety-numbers-approval', true);
+            store.isTrustedIdentity(identifier, newIdentity, store.Direction.SENDING).then(function(trusted) {
+              if (trusted) {
+                done(new Error('isTrusted returned true on untrusted key'));
+              } else {
+                done();
+              }
+            }).catch(done);
           });
-          describe('When the existing key matches the new key', function() {
-            var newIdentity = libsignal.crypto.getRandomBytes(33);
-            before(function(done) {
-              store.saveIdentity(identifier, newIdentity).then(function() {
+          it('returns false if keys match but nonblocking approval is required', function(done) {
+            storage.put('safety-numbers-approval', false);
+            store.isTrustedIdentity(identifier, newIdentity, store.Direction.SENDING).then(function(trusted) {
+              if (trusted) {
+                done(new Error('isTrusted returned true on untrusted key'));
+              } else {
                 done();
-              });
-            });
-            it('returns false if blocking approval is required', function(done) {
-              storage.put('safety-numbers-approval', true);
-              store.isTrustedIdentity(identifier, newIdentity, store.Direction.SENDING).then(function(trusted) {
-                if (trusted) {
-                    done(new Error('isTrusted returned true on untrusted key'));
-                } else {
-                    done();
-                }
-              }).catch(done);
-            });
-            it('returns false if keys match but nonblocking approval is required', function(done) {
-              storage.put('safety-numbers-approval', false);
+              }
+            }).catch(done);
+          });
+          it('returns true if neither blocking nor nonblocking approval is required', function(done) {
+            storage.put('safety-numbers-approval', false);
+            store.saveIdentity(identifier, newIdentity, true).then(function() {
               store.isTrustedIdentity(identifier, newIdentity, store.Direction.SENDING).then(function(trusted) {
                 if (trusted) {
-                    done(new Error('isTrusted returned true on untrusted key'));
+                  done();
                 } else {
-                    done();
+                  done(new Error('isTrusted returned false on an approved key'));
                 }
               }).catch(done);
             });
-            it('returns true if neither blocking nor nonblocking approval is required', function(done) {
-                storage.put('safety-numbers-approval', false);
-                store.saveIdentity(identifier, newIdentity, true).then(function() {
-                    store.isTrustedIdentity(identifier, newIdentity, store.Direction.SENDING).then(function(trusted) {
-                      if (trusted) {
-                          done();
-                      } else {
-                          done(new Error('isTrusted returned false on an approved key'));
-                      }
-                    }).catch(done);
-                });
-              });
-            });
           });
         });
+      });
     });
-    describe('storePreKey', function() {
-        it('stores prekeys', function(done) {
-            store.storePreKey(1, testKey).then(function() {
-                return store.loadPreKey(1).then(function(key) {
-                    assertEqualArrayBuffers(key.pubKey, testKey.pubKey);
-                    assertEqualArrayBuffers(key.privKey, testKey.privKey);
-                });
-            }).then(done,done);
+  });
+  describe('storePreKey', function() {
+    it('stores prekeys', function(done) {
+      store.storePreKey(1, testKey).then(function() {
+        return store.loadPreKey(1).then(function(key) {
+          assertEqualArrayBuffers(key.pubKey, testKey.pubKey);
+          assertEqualArrayBuffers(key.privKey, testKey.privKey);
         });
+      }).then(done,done);
     });
-    describe('removePreKey', function() {
-        before(function(done) {
-            store.storePreKey(2, testKey).then(done);
-        });
-        it('deletes prekeys', function(done) {
-            store.removePreKey(2, testKey).then(function() {
-                return store.loadPreKey(2).then(function(key) {
-                    assert.isUndefined(key);
-                });
-            }).then(done,done);
-        });
+  });
+  describe('removePreKey', function() {
+    before(function(done) {
+      store.storePreKey(2, testKey).then(done);
     });
-    describe('storeSignedPreKey', function() {
-        it('stores signed prekeys', function(done) {
-            store.storeSignedPreKey(3, testKey).then(function() {
-                return store.loadSignedPreKey(3).then(function(key) {
-                    assertEqualArrayBuffers(key.pubKey, testKey.pubKey);
-                    assertEqualArrayBuffers(key.privKey, testKey.privKey);
-                });
-            }).then(done,done);
+    it('deletes prekeys', function(done) {
+      store.removePreKey(2, testKey).then(function() {
+        return store.loadPreKey(2).then(function(key) {
+          assert.isUndefined(key);
         });
+      }).then(done,done);
     });
-    describe('removeSignedPreKey', function() {
-        before(function(done) {
-            store.storeSignedPreKey(4, testKey).then(done);
+  });
+  describe('storeSignedPreKey', function() {
+    it('stores signed prekeys', function(done) {
+      store.storeSignedPreKey(3, testKey).then(function() {
+        return store.loadSignedPreKey(3).then(function(key) {
+          assertEqualArrayBuffers(key.pubKey, testKey.pubKey);
+          assertEqualArrayBuffers(key.privKey, testKey.privKey);
         });
-        it('deletes signed prekeys', function(done) {
-            store.removeSignedPreKey(4, testKey).then(function() {
-                return store.loadSignedPreKey(4).then(function(key) {
-                    assert.isUndefined(key);
-                });
-            }).then(done,done);
+      }).then(done,done);
+    });
+  });
+  describe('removeSignedPreKey', function() {
+    before(function(done) {
+      store.storeSignedPreKey(4, testKey).then(done);
+    });
+    it('deletes signed prekeys', function(done) {
+      store.removeSignedPreKey(4, testKey).then(function() {
+        return store.loadSignedPreKey(4).then(function(key) {
+          assert.isUndefined(key);
         });
+      }).then(done,done);
     });
-    describe('storeSession', function() {
-        it('stores sessions', function(done) {
-            var testRecord = "an opaque string";
-            store.storeSession(identifier + '.1', testRecord).then(function() {
-                return store.loadSession(identifier + '.1').then(function(record) {
-                    assert.deepEqual(record, testRecord);
-                });
-            }).then(done,done);
+  });
+  describe('storeSession', function() {
+    it('stores sessions', function(done) {
+      var testRecord = "an opaque string";
+      store.storeSession(identifier + '.1', testRecord).then(function() {
+        return store.loadSession(identifier + '.1').then(function(record) {
+          assert.deepEqual(record, testRecord);
         });
+      }).then(done,done);
     });
-    describe('removeAllSessions', function() {
-        it('removes all sessions for a number', function(done) {
-            var testRecord = "an opaque string";
-            var devices = [1, 2, 3].map(function(deviceId) {
-                return [identifier, deviceId].join('.');
-            });
-            var promise = Promise.resolve();
-            devices.forEach(function(encodedNumber) {
-                promise = promise.then(function() {
-                    return store.storeSession(encodedNumber, testRecord + encodedNumber);
-                });
-            });
-            promise.then(function() {
-                return store.removeAllSessions(identifier).then(function(record) {
-                    return Promise.all(devices.map(store.loadSession.bind(store))).then(function(records) {
-                        for (var i in records) {
-                            assert.isUndefined(records[i]);
-                        };
-                    });
-                });
-            }).then(done,done);
+  });
+  describe('removeAllSessions', function() {
+    it('removes all sessions for a number', function(done) {
+      var testRecord = "an opaque string";
+      var devices = [1, 2, 3].map(function(deviceId) {
+        return [identifier, deviceId].join('.');
+      });
+      var promise = Promise.resolve();
+      devices.forEach(function(encodedNumber) {
+        promise = promise.then(function() {
+          return store.storeSession(encodedNumber, testRecord + encodedNumber);
         });
+      });
+      promise.then(function() {
+        return store.removeAllSessions(identifier).then(function(record) {
+          return Promise.all(devices.map(store.loadSession.bind(store))).then(function(records) {
+            for (var i in records) {
+              assert.isUndefined(records[i]);
+            };
+          });
+        });
+      }).then(done,done);
     });
-    describe('clearSessionStore', function() {
-        it ('clears the session store', function(done) {
-            var testRecord = "an opaque string";
-            store.storeSession(identifier + '.1', testRecord).then(function() {
-                return store.clearSessionStore().then(function() {
-                    return store.loadSession(identifier + '.1').then(function(record) {
-                        assert.isUndefined(record);
-                    });
-                });
-            }).then(done,done);
-
+  });
+  describe('clearSessionStore', function() {
+    it ('clears the session store', function(done) {
+      var testRecord = "an opaque string";
+      store.storeSession(identifier + '.1', testRecord).then(function() {
+        return store.clearSessionStore().then(function() {
+          return store.loadSession(identifier + '.1').then(function(record) {
+            assert.isUndefined(record);
+          });
         });
+      }).then(done,done);
+
     });
-    describe('getDeviceIds', function() {
-        it('returns deviceIds for a number', function(done) {
-            var testRecord = "an opaque string";
-            var devices = [1, 2, 3].map(function(deviceId) {
-                return [identifier, deviceId].join('.');
-            });
-            var promise = Promise.resolve();
-            devices.forEach(function(encodedNumber) {
-                promise = promise.then(function() {
-                    return store.storeSession(encodedNumber, testRecord + encodedNumber);
-                });
-            });
-            promise.then(function() {
-                return store.getDeviceIds(identifier).then(function(deviceIds) {
-                    assert.sameMembers(deviceIds, [1, 2, 3]);
-                });
-            }).then(done,done);
+  });
+  describe('getDeviceIds', function() {
+    it('returns deviceIds for a number', function(done) {
+      var testRecord = "an opaque string";
+      var devices = [1, 2, 3].map(function(deviceId) {
+        return [identifier, deviceId].join('.');
+      });
+      var promise = Promise.resolve();
+      devices.forEach(function(encodedNumber) {
+        promise = promise.then(function() {
+          return store.storeSession(encodedNumber, testRecord + encodedNumber);
         });
-        it('returns empty array for a number with no device ids', function(done) {
-            return store.getDeviceIds('foo').then(function(deviceIds) {
-                assert.sameMembers(deviceIds,[]);
-            }).then(done,done);
+      });
+      promise.then(function() {
+        return store.getDeviceIds(identifier).then(function(deviceIds) {
+          assert.sameMembers(deviceIds, [1, 2, 3]);
         });
+      }).then(done,done);
+    });
+    it('returns empty array for a number with no device ids', function(done) {
+      return store.getDeviceIds('foo').then(function(deviceIds) {
+        assert.sameMembers(deviceIds,[]);
+      }).then(done,done);
     });
+  });
 });