DEV: use REPORT_REQUESTS=1 to find all requests

DEV: use REPORT_REQUESTS=1 to find all requests

We can use this to profile our pretender and ensure nothing is superfluous and nothing is missing

diff --git a/lib/tasks/qunit.rake b/lib/tasks/qunit.rake
index a233c56..2c4e965 100644
--- a/lib/tasks/qunit.rake
+++ b/lib/tasks/qunit.rake
@@ -24,6 +24,8 @@ task "qunit:test", [:timeout, :qunit_path] do |_, args|
     abort "Yarn is not installed. Download from https://yarnpkg.com/lang/en/docs/install/"
   end
 
+  report_requests = ENV['REPORT_REQUESTS'] == "1"
+
   system("yarn install --dev")
 
   # ensure we have this port available
@@ -63,10 +65,12 @@ task "qunit:test", [:timeout, :qunit_path] do |_, args|
       options[arg] = ENV[arg.upcase] if ENV[arg.upcase].present?
     end
 
-    if options.present?
-      cmd += "?#{options.to_query.gsub('+', '%20').gsub("&", '\\\&')}"
+    if report_requests
+      options['report_requests'] = '1'
     end
 
+    cmd += "?#{options.to_query.gsub('+', '%20').gsub("&", '\\\&')}"
+
     if args[:timeout].present?
       cmd += " #{args[:timeout]}"
     end
diff --git a/test/javascripts/test_helper.js b/test/javascripts/test_helper.js
index 77598e4..0f2fd5e 100644
--- a/test/javascripts/test_helper.js
+++ b/test/javascripts/test_helper.js
@@ -117,7 +117,17 @@ QUnit.testStart(function(ctx) {
     return body;
   };
 
+  if (QUnit.config.logAllRequests) {
+    server.handledRequest = function(verb, path, request) {
+      console.log("REQ: " + verb + " " + path);
+    };
+  }
+
   server.unhandledRequest = function(verb, path) {
+    if (QUnit.config.logAllRequests) {
+      console.log("REQ: " + verb + " " + path + " missing");
+    }
+
     const error =
       "Unhandled request in test environment: " + path + " (" + verb + ")";
     window.console.error(error);
diff --git a/test/run-qunit.js b/test/run-qunit.js
index 57a0676..905745b 100644
--- a/test/run-qunit.js
+++ b/test/run-qunit.js
@@ -112,6 +112,13 @@ async function runAllTests() {
     await Runtime.evaluate({
       expression: `(${qunit_script})()`
     });
+
+    if (args[0].indexOf("report_requests=1") > -1) {
+      await Runtime.evaluate({
+        expression: "QUnit.config.logAllRequests = true"
+      });
+    }
+
     const timeout = parseInt(args[1] || 300000, 10);
     var start = Date.now();
 

GitHub sha: 8a50ab45