OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "cc/test/paths.h" | 5 #include "cc/test/paths.h" |
6 | 6 |
7 #include "base/file_path.h" | 7 #include "base/file_path.h" |
8 #include "base/file_util.h" | 8 #include "base/file_util.h" |
9 #include "base/path_service.h" | 9 #include "base/path_service.h" |
10 | 10 |
11 namespace cc { | 11 namespace cc { |
12 | 12 |
13 bool PathProvider(int key, FilePath* result) { | 13 bool PathProvider(int key, base::FilePath* result) { |
14 FilePath cur; | 14 base::FilePath cur; |
15 switch (key) { | 15 switch (key) { |
16 // The following are only valid in the development environment, and | 16 // The following are only valid in the development environment, and |
17 // will fail if executed from an installed executable (because the | 17 // will fail if executed from an installed executable (because the |
18 // generated path won't exist). | 18 // generated path won't exist). |
19 case DIR_TEST_DATA: | 19 case DIR_TEST_DATA: |
20 if (!PathService::Get(base::DIR_SOURCE_ROOT, &cur)) | 20 if (!PathService::Get(base::DIR_SOURCE_ROOT, &cur)) |
21 return false; | 21 return false; |
22 cur = cur.Append(FILE_PATH_LITERAL("cc")); | 22 cur = cur.Append(FILE_PATH_LITERAL("cc")); |
23 cur = cur.Append(FILE_PATH_LITERAL("test")); | 23 cur = cur.Append(FILE_PATH_LITERAL("test")); |
24 cur = cur.Append(FILE_PATH_LITERAL("data")); | 24 cur = cur.Append(FILE_PATH_LITERAL("data")); |
25 if (!file_util::PathExists(cur)) // we don't want to create this | 25 if (!file_util::PathExists(cur)) // we don't want to create this |
26 return false; | 26 return false; |
27 break; | 27 break; |
28 default: | 28 default: |
29 return false; | 29 return false; |
30 } | 30 } |
31 | 31 |
32 *result = cur; | 32 *result = cur; |
33 return true; | 33 return true; |
34 } | 34 } |
35 | 35 |
36 // This cannot be done as a static initializer sadly since Visual Studio will | 36 // This cannot be done as a static initializer sadly since Visual Studio will |
37 // eliminate this object file if there is no direct entry point into it. | 37 // eliminate this object file if there is no direct entry point into it. |
38 void RegisterPathProvider() { | 38 void RegisterPathProvider() { |
39 PathService::RegisterProvider(PathProvider, PATH_START, PATH_END); | 39 PathService::RegisterProvider(PathProvider, PATH_START, PATH_END); |
40 } | 40 } |
41 | 41 |
42 } // namespace cc | 42 } // namespace cc |
OLD | NEW |