Jdlrobson has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/342154 )

Change subject: WIP: Provide debug endpoint
......................................................................

WIP: Provide debug endpoint

Change-Id: I7d48ef28db7dd2ff3201e5684623a9dc4cfd2924
---
M lib/processor.js
M routes/trending-v1.js
2 files changed, 40 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/services/trending-edits 
refs/changes/54/342154/1

diff --git a/lib/processor.js b/lib/processor.js
index 46f2753..316fe93 100644
--- a/lib/processor.js
+++ b/lib/processor.js
@@ -15,6 +15,17 @@
  * Remove page with id from the store
  *
  * @ignore
+ * @param {Number} id of page
+ * @param {Object} page
+ */
+function getPage(id) {
+    return pages.get(id);
+}
+
+/**
+ * Remove page with id from the store
+ *
+ * @ignore
  * @param {Number} id
  */
 function remove(id) {
@@ -96,7 +107,7 @@
         remove(id);
         return true;
     } else if (topic === 'mediawiki.page-move' && pages.has(id)) {
-        page = pages.get(id);
+        page = getPage(id);
         page.title = edit.page_title;
         // assumption here made that anons cannot move pages so we do not 
touch anonEdits
         page.edits -= 1;
@@ -155,6 +166,7 @@
 
 module.exports = {
     purge: purge,
+    getPage: getPage,
     getPages: getPages,
     process: process,
     reset: reset
diff --git a/routes/trending-v1.js b/routes/trending-v1.js
index 39289d1..d07923c 100644
--- a/routes/trending-v1.js
+++ b/routes/trending-v1.js
@@ -43,6 +43,33 @@
 }
 
 /**
+ * GET /feed/debug-trending-edits
+ * Debugging tools for private usage that expose the contents of the processor
+ */
+router.get('/debug-trending-edits/:title?', function(req, res) {
+    if ( req.params.title ) {
+      const page = processor.getPage(title);
+      if ( page ) {
+          res.status(200).type('application/json').end(
+            JSON.stringify(scorePages([page]))
+          );
+      } else {
+          res.status(404).type('application/json').end('Unknown page title');
+      }
+    } else {
+        const pages = processor.getPages();
+        res.status(200).type('application/json').end(
+          JSON.stringify({
+            size: pages.length,
+            titles: pages.map((page)=>{
+              return { id: page.id, title: page.title };
+            })
+          })
+        );
+    }
+});
+
+/**
  * GET /feed/trending-edits
  * Gets the body of a given page.
  */

-- 
To view, visit https://gerrit.wikimedia.org/r/342154
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I7d48ef28db7dd2ff3201e5684623a9dc4cfd2924
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/services/trending-edits
Gerrit-Branch: master
Gerrit-Owner: Jdlrobson <jrob...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to