extensions: Register 'app' and 'webstore' bindings only if they are available.
[chromium-blink-merge.git] / gin / test / v8_test.h
blobe62aa570eed1cb7c79a41e8f94438b7acbf1cbfe
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef GIN_TEST_V8_TEST_H_
6 #define GIN_TEST_V8_TEST_H_
8 #include "base/basictypes.h"
9 #include "base/compiler_specific.h"
10 #include "base/memory/scoped_ptr.h"
11 #include "testing/gtest/include/gtest/gtest.h"
12 #include "v8/include/v8.h"
14 namespace gin {
16 class IsolateHolder;
18 // V8Test is a simple harness for testing interactions with V8. V8Test doesn't
19 // have any dependencies on Gin's module system.
20 class V8Test : public testing::Test {
21 public:
22 V8Test();
23 virtual ~V8Test();
25 virtual void SetUp() OVERRIDE;
26 virtual void TearDown() OVERRIDE;
28 protected:
29 scoped_ptr<IsolateHolder> instance_;
30 v8::Persistent<v8::Context> context_;
32 private:
33 DISALLOW_COPY_AND_ASSIGN(V8Test);
36 } // namespace gin
38 #endif // GIN_TEST_V8_TEST_H_