Refactor APIPermission to separate out specific permission registration.

Adds a delegate to the PermissionsInfo global to do the specific registration; adds a ScopedTestingPermissionsInfo for unit tests.
Preparation for moving permissions to top-level extensions.

Also adds a base class for unittests, ExtensionTest, to deal with manifest handler / permission setup.

BUG=162530,172712

Review URL: https://chromiumcodereview.appspot.com/13370002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192252 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/extensions/extension_info_map_unittest.cc b/chrome/browser/extensions/extension_info_map_unittest.cc
index d88f32a..8c6e5457 100644
--- a/chrome/browser/extensions/extension_info_map_unittest.cc
+++ b/chrome/browser/extensions/extension_info_map_unittest.cc
@@ -9,6 +9,7 @@
 #include "chrome/common/chrome_paths.h"
 #include "chrome/common/extensions/extension.h"
 #include "chrome/common/extensions/extension_manifest_constants.h"
+#include "chrome/common/extensions/extension_unittest.h"
 #include "content/public/test/test_browser_thread.h"
 #include "testing/gtest/include/gtest/gtest.h"
 #include "third_party/WebKit/Source/Platform/chromium/public/WebString.h"
@@ -25,7 +26,7 @@
 
 namespace {
 
-class ExtensionInfoMapTest : public testing::Test {
+class ExtensionInfoMapTest : public extensions::ExtensionTest {
  public:
   ExtensionInfoMapTest()
       : ui_thread_(BrowserThread::UI, &message_loop_),