fix topic update integration test, topicGetByUrl now optionally applies defaults
[websub-hub] / src / db / base.js
index 3346f92d421ac7d65932a6e21df5cddc2ddf635d..c5ea237c7e1f33c71abfd23f0e4b3136af507f9c 100644 (file)
@@ -173,6 +173,8 @@ class Database {
     this._ensureTypes(data, ['content'], ['string', 'buffer']);
     this._ensureTypes(data, ['contentHash'], ['string']);
     this._ensureTypes(data, ['contentType'], ['string', 'null', 'undefined']);
+    this._ensureTypes(data, ['eTag'], ['string', 'null', 'undefined']);
+    this._ensureTypes(data, ['lastModified'], ['string', 'null', 'undefined']);
   }
 
 
@@ -548,8 +550,9 @@ class Database {
    * Get topic data, without content.
    * @param {*} dbCtx 
    * @param {String} topicUrl
+   * @param {Boolean} applyDefaults
    */
-  async topicGetByUrl(dbCtx, topicUrl) {
+  async topicGetByUrl(dbCtx, topicUrl, applyDefaults = true) {
     this._notImplemented('topicGetByUrl', arguments);
   }
 
@@ -614,6 +617,8 @@ class Database {
    * @param {String} data.content
    * @param {String} data.contentHash
    * @param {String=} data.contentType
+   * @param {String=} data.eTag
+   * @param {String=} data.lastModified
    */
   async topicSetContent(dbCtx, data) {
     this._notImplemented('topicSetContent', arguments);