Implement a TestRunner API to set permissions from LayoutTests.

Permissions can be set using setPermission() and they are automatically
reset between each test.

BUG=475141

Review URL: https://codereview.chromium.org/1078673002

Cr-Commit-Position: refs/heads/master@{#326014}
diff --git a/content/shell/renderer/test_runner/test_runner.h b/content/shell/renderer/test_runner/test_runner.h
index a76ef6c4..94d83ec 100644
--- a/content/shell/renderer/test_runner/test_runner.h
+++ b/content/shell/renderer/test_runner/test_runner.h
@@ -534,6 +534,13 @@
   // Set the mock geofencing position while running a layout test.
   void SetGeofencingMockPosition(double latitude, double longitude);
 
+  // Sets the permission's |name| to |value| for a given {origin, embedder}
+  // tuple.
+  void SetPermission(const std::string& name,
+                     const std::string& value,
+                     const GURL& origin,
+                     const GURL& embedding_origin);
+
   // Calls setlocale(LC_ALL, ...) for a specified locale.
   // Resets between tests.
   void SetPOSIXLocale(const std::string& locale);