diff --git a/package-lock.json b/package-lock.json index c62beff..0bdcb7b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8791,6 +8791,11 @@ "resolved": "https://registry.npmjs.org/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz", "integrity": "sha1-buMFc6A6GmDWcKYu8zwQzxr9vdQ=" }, + "lodash.clonewith": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonewith/-/lodash.clonewith-4.5.0.tgz", + "integrity": "sha1-0UwSAz2r0XKJ97mrUiBlvfAf9GA=" + }, "lodash.compact": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/lodash.compact/-/lodash.compact-3.0.1.tgz", @@ -8897,6 +8902,11 @@ "resolved": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-3.0.2.tgz", "integrity": "sha1-PI+41bW/S/kK4G4U8qUwpO2TXh0=" }, + "lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=" + }, "lodash.isstring": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", diff --git a/src/timestamp.js b/src/timestamp.js index 312eb97..af601ad 100644 --- a/src/timestamp.js +++ b/src/timestamp.js @@ -15,6 +15,10 @@ Timestamp.fromMillis = function(ms) { return new Timestamp(sec, ns); }; +Timestamp.now = function() { + return Timestamp.fromDate(new Date()); +}; + Timestamp.prototype.toDate = function () { var millis = this.seconds * 1000 + this.nanoseconds / (1000 * 1000); return new Date(millis); diff --git a/test/unit/timestamp.js b/test/unit/timestamp.js index 3e0ea5b..20b6f2f 100644 --- a/test/unit/timestamp.js +++ b/test/unit/timestamp.js @@ -20,6 +20,13 @@ describe('Timestamp', function () { expect(timestamp.nanoseconds).to.equal(123000000); }); }); + describe('now', function () { + it('should create a current Timestamp', function () { + var now = new Date(); + var timestamp = Timestamp.now(); + expect(timestamp.toDate().getTime()).to.equal(now.getTime()); + }); + }); describe('#toDate', function () { it('should convert to date', function () { var ts = new Timestamp(1234567890, 123456789);