Index: tools/gn/test_with_scope.h |
diff --git a/tools/gn/test_with_scope.h b/tools/gn/test_with_scope.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..7d512c4d1312bd6e16fc8bf53593a2fa42013286 |
--- /dev/null |
+++ b/tools/gn/test_with_scope.h |
@@ -0,0 +1,34 @@ |
+// Copyright (c) 2013 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. |
+ |
+#ifndef TOOLS_GN_TEST_WITH_SCOPE_H_ |
+#define TOOLS_GN_TEST_WITH_SCOPE_H_ |
+ |
+#include "base/basictypes.h" |
+#include "tools/gn/build_settings.h" |
+#include "tools/gn/scope.h" |
+#include "tools/gn/settings.h" |
+#include "tools/gn/toolchain.h" |
+ |
+// A helper class for setting up a Scope that a test can use. It makes a |
+// toolchain and sets up all the build state. |
+class TestWithScope { |
+ public: |
+ TestWithScope(); |
+ ~TestWithScope(); |
+ |
+ BuildSettings* build_settings() { return &build_settings_; } |
+ Settings* settings() { return &settings_; } |
+ Scope* scope() { return &scope_; } |
+ |
+ private: |
+ BuildSettings build_settings_; |
+ Toolchain toolchain_; |
+ Settings settings_; |
+ Scope scope_; |
+ |
+ DISALLOW_COPY_AND_ASSIGN(TestWithScope); |
+}; |
+ |
+#endif // TOOLS_GN_TEST_WITH_SCOPE_H_ |