Isolate extensions_browsertests

R=maruel@chromium.org, yoz@chromium.org
TBR=jam@chromium.org
BUG=98637

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

Cr-Commit-Position: refs/heads/master@{#312993}
diff --git a/extensions/extensions_browsertests.isolate b/extensions/extensions_browsertests.isolate
new file mode 100644
index 0000000..c5da8dc
--- /dev/null
+++ b/extensions/extensions_browsertests.isolate
@@ -0,0 +1,62 @@
+# Copyright 2015 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+{
+  'conditions': [
+    ['OS=="linux" or OS=="mac" or OS=="win"', {
+      'variables': {
+        'files': [
+          '../net/data/',
+          '../net/tools/testserver/',
+          '../testing/test_env.py',
+          '../third_party/pyftpdlib/',
+          '../third_party/pywebsocket/',
+          '../third_party/tlslite/',
+          '<(PRODUCT_DIR)/extensions_browsertests<(EXECUTABLE_SUFFIX)',
+          '<(PRODUCT_DIR)/extensions_shell_and_test.pak',
+          'test/data/',
+        ],
+      },
+    }],
+    ['OS=="linux"', {
+      'variables': {
+        'command': [
+          '../testing/xvfb.py',
+          '<(PRODUCT_DIR)',
+          '<(PRODUCT_DIR)/extensions_browsertests<(EXECUTABLE_SUFFIX)',
+          '--brave-new-test-launcher',
+          '--test-launcher-bot-mode',
+          '--asan=<(asan)',
+          '--lsan=<(lsan)',
+        ],
+        'files': [
+          '../testing/xvfb.py',
+          '<(PRODUCT_DIR)/libosmesa.so',
+        ],
+      },
+    }],
+    ['OS=="linux" and use_ozone==0', {
+      'variables': {
+        'files': [
+          '<(PRODUCT_DIR)/xdisplaycheck<(EXECUTABLE_SUFFIX)',
+        ],
+      },
+    }],
+    ['OS=="mac" or OS=="win"', {
+      'variables': {
+        'command': [
+          '../testing/test_env.py',
+          '<(PRODUCT_DIR)/extensions_browsertests<(EXECUTABLE_SUFFIX)',
+          '--brave-new-test-launcher',
+          '--test-launcher-bot-mode',
+          '--asan=<(asan)',
+          '--lsan=<(lsan)',
+        ],
+      },
+    }],
+  ],
+  'includes': [
+    '../base/base.isolate',
+    '../gin/v8.isolate',
+  ],
+}
diff --git a/extensions/extensions_tests.gyp b/extensions/extensions_tests.gyp
index aa5ad0e..0f47938 100644
--- a/extensions/extensions_tests.gyp
+++ b/extensions/extensions_tests.gyp
@@ -230,4 +230,23 @@
       ]
     },
   ],
+  'conditions': [
+    ['test_isolation_mode != "noop"', {
+      'targets': [
+        {
+          'target_name': 'extensions_browsertests_run',
+          'type': 'none',
+          'dependencies': [
+            'extensions_browsertests',
+          ],
+          'includes': [
+            '../build/isolate.gypi',
+          ],
+          'sources': [
+            'extensions_browsertests.isolate',
+          ],
+        },
+      ],
+    }],
+  ],
 }
diff --git a/testing/buildbot/chromium.chromiumos.json b/testing/buildbot/chromium.chromiumos.json
index 4ed436c..8f106b7 100644
--- a/testing/buildbot/chromium.chromiumos.json
+++ b/testing/buildbot/chromium.chromiumos.json
@@ -88,7 +88,12 @@
       "nacl_loader_unittests",
       "app_shell_unittests",
       "chromevox_tests",
-      "extensions_browsertests",
+      {
+        "test": "extensions_browsertests",
+        "swarming": {
+          "can_use_on_swarming_builders": true
+        }
+      },
       "skia_unittests"
     ]
   },
@@ -117,7 +122,12 @@
       "device_unittests",
       "display_unittests",
       "events_unittests",
-      "extensions_browsertests",
+      {
+        "test": "extensions_browsertests",
+        "swarming": {
+          "can_use_on_swarming_builders": true
+        }
+      },
       "extensions_unittests",
       "gcm_unit_tests",
       "google_apis_unittests",
@@ -247,7 +257,12 @@
           "shards": 2
         }
       },
-      "extensions_browsertests",
+      {
+        "test": "extensions_browsertests",
+        "swarming": {
+          "can_use_on_swarming_builders": true
+        }
+      },
       "gcm_unit_tests",
       "skia_unittests",
       {
diff --git a/testing/buildbot/chromium.linux.json b/testing/buildbot/chromium.linux.json
index 1efe19b7..a0aa115f5 100644
--- a/testing/buildbot/chromium.linux.json
+++ b/testing/buildbot/chromium.linux.json
@@ -61,7 +61,12 @@
           "can_use_on_swarming_builders": true
         }
       },
-      "extensions_browsertests",
+      {
+        "test": "extensions_browsertests",
+        "swarming": {
+          "can_use_on_swarming_builders": true
+        }
+      },
       "extensions_unittests",
       "gcm_unit_tests",
       {
@@ -229,7 +234,12 @@
           "can_use_on_swarming_builders": true
         }
       },
-      "extensions_browsertests",
+      {
+        "test": "extensions_browsertests",
+        "swarming": {
+          "can_use_on_swarming_builders": true
+        }
+      },
       "extensions_unittests",
       "gcm_unit_tests",
       {
@@ -377,7 +387,12 @@
           "can_use_on_swarming_builders": true
         }
       },
-      "extensions_browsertests",
+      {
+        "test": "extensions_browsertests",
+        "swarming": {
+          "can_use_on_swarming_builders": true
+        }
+      },
       "extensions_unittests",
       "gcm_unit_tests",
       {
diff --git a/testing/buildbot/chromium.webkit.json b/testing/buildbot/chromium.webkit.json
index d34d31e..17cc5e9 100644
--- a/testing/buildbot/chromium.webkit.json
+++ b/testing/buildbot/chromium.webkit.json
@@ -85,7 +85,12 @@
       "nacl_loader_unittests",
       "app_shell_unittests",
       "chromevox_tests",
-      "extensions_browsertests",
+      {
+        "test": "extensions_browsertests",
+        "swarming": {
+          "can_use_on_swarming_builders": true
+        }
+      },
       "skia_unittests"
     ]
   },
@@ -171,7 +176,12 @@
           "shards": 2
         }
       },
-      "extensions_browsertests",
+      {
+        "test": "extensions_browsertests",
+        "swarming": {
+          "can_use_on_swarming_builders": true
+        }
+      },
       "gcm_unit_tests",
       "skia_unittests",
       {
diff --git a/testing/buildbot/chromium.win.json b/testing/buildbot/chromium.win.json
index c6c87b53..95134e6 100644
--- a/testing/buildbot/chromium.win.json
+++ b/testing/buildbot/chromium.win.json
@@ -49,7 +49,12 @@
       },
       "crypto_unittests",
       "events_unittests",
-      "extensions_browsertests",
+      {
+        "test": "extensions_browsertests",
+        "swarming": {
+          "can_use_on_swarming_builders": true
+        }
+      },
       "extensions_unittests",
       "gcm_unit_tests",
       "gfx_unittests",
@@ -173,7 +178,12 @@
         }
       },
       "crypto_unittests",
-      "extensions_browsertests",
+      {
+        "test": "extensions_browsertests",
+        "swarming": {
+          "can_use_on_swarming_builders": true
+        }
+      },
       "extensions_unittests",
       "events_unittests",
       "gcm_unit_tests",
@@ -311,7 +321,12 @@
       "crypto_unittests",
       "device_unittests",
       "events_unittests",
-      "extensions_browsertests",
+      {
+        "test": "extensions_browsertests",
+        "swarming": {
+          "can_use_on_swarming_builders": true
+        }
+      },
       "extensions_unittests",
       "gcm_unit_tests",
       "gfx_unittests",
@@ -454,7 +469,12 @@
       "crypto_unittests",
       "device_unittests",
       "events_unittests",
-      "extensions_browsertests",
+      {
+        "test": "extensions_browsertests",
+        "swarming": {
+          "can_use_on_swarming_builders": true
+        }
+      },
       "extensions_unittests",
       "gcm_unit_tests",
       "gfx_unittests",
@@ -594,7 +614,12 @@
       },
       "crypto_unittests",
       "events_unittests",
-      "extensions_browsertests",
+      {
+        "test": "extensions_browsertests",
+        "swarming": {
+          "can_use_on_swarming_builders": true
+        }
+      },
       "extensions_unittests",
       "gcm_unit_tests",
       {
diff --git a/testing/buildbot/chromium_trybot.json b/testing/buildbot/chromium_trybot.json
index df5a156..b73741f 100644
--- a/testing/buildbot/chromium_trybot.json
+++ b/testing/buildbot/chromium_trybot.json
@@ -234,7 +234,10 @@
     },
     {
       "test": "extensions_browsertests",
-      "platforms": ["linux", "win"]
+      "platforms": ["linux", "win"],
+      "swarming": {
+        "can_use_on_swarming_builders": true
+      }
     },
     {
       "test": "app_shell_unittests",