OLD | NEW |
1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 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 import os | 5 import os |
6 | 6 |
7 from recipe_engine import recipe_test_api | 7 from recipe_engine import recipe_test_api |
8 | 8 |
9 | 9 |
10 # We want to be able to really read a file during a recipe test. Of course, | 10 # We want to be able to really read a file during a recipe test. Of course, |
(...skipping 13 matching lines...) Expand all Loading... |
24 '..', | 24 '..', |
25 '..', | 25 '..', |
26 '..', | 26 '..', |
27 '..', | 27 '..', |
28 '..', | 28 '..', |
29 )) | 29 )) |
30 BUILD = os.path.join(_ROOT, 'build') | 30 BUILD = os.path.join(_ROOT, 'build') |
31 BUILD_INTERNAL = os.path.join(_ROOT, 'build_internal') | 31 BUILD_INTERNAL = os.path.join(_ROOT, 'build_internal') |
32 | 32 |
33 class FileTestApi(recipe_test_api.RecipeTestApi): | 33 class FileTestApi(recipe_test_api.RecipeTestApi): |
34 def read_in_build(self, relpath): | |
35 """Read a file in chrome/trunk/tools/build. | |
36 | |
37 Args: | |
38 relpath: A path inside chrome/trunk/tools/build. | |
39 """ | |
40 # Prevent a user from using .. to escape the build repository. | |
41 assert '..' not in os.sep.split(relpath), ( | |
42 'You can\'t use .. in read_in_build.' | |
43 ) | |
44 with open(os.path.join(BUILD, relpath)) as f: | |
45 return f.read() | |
46 | |
47 def read_in_build_internal(self, relpath): # pragma: no cover | |
48 """Read a file in chrome-internal/trunk/tools/build. | |
49 | |
50 Args: | |
51 relpath: A path inside chrome-internal/trunk/tools/build. | |
52 """ | |
53 # Prevent a user from using .. to escape the build_internal repository. | |
54 assert '..' not in os.sep.split(relpath), ( | |
55 'You can\'t use .. in read_in_build.' | |
56 ) | |
57 with open(os.path.join(BUILD_INTERNAL, relpath)) as f: | |
58 return f.read() | |
59 | |
60 def listdir(self, files): | 34 def listdir(self, files): |
61 def listdir_callback(): | 35 def listdir_callback(): |
62 return self.m.json.output(files) | 36 return self.m.json.output(files) |
63 return listdir_callback | 37 return listdir_callback |
OLD | NEW |