| 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 slave 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, |
| 11 # we want to prevent recipe authors from reading files that only exist on | 11 # we want to prevent recipe authors from reading files that only exist on |
| 12 # their own local disk (e.g. any file in some other repository), so that a | 12 # their own local disk (e.g. any file in some other repository), so that a |
| 13 # test only reads files that are guaranteed to be available wherever the test | 13 # test only reads files that are guaranteed to be available wherever the test |
| 14 # is run (and by whomever runs it). | 14 # is run (and by whomever runs it). |
| 15 # Therefore we only allow a real file to be read when it's in the same repo | 15 # Therefore we only allow a real file to be read when it's in the same repo |
| 16 # as the recipe. | 16 # as the recipe. |
| 17 # In order to enforce this, we accept a relative path and join it to the | 17 # In order to enforce this, we accept a relative path and join it to the |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 54 assert '..' not in os.sep.split(relpath), ( | 54 assert '..' not in os.sep.split(relpath), ( |
| 55 'You can\'t use .. in read_in_build.' | 55 'You can\'t use .. in read_in_build.' |
| 56 ) | 56 ) |
| 57 with open(os.path.join(BUILD_INTERNAL, relpath)) as f: | 57 with open(os.path.join(BUILD_INTERNAL, relpath)) as f: |
| 58 return f.read() | 58 return f.read() |
| 59 | 59 |
| 60 def listdir(self, files): | 60 def listdir(self, files): |
| 61 def listdir_callback(): | 61 def listdir_callback(): |
| 62 return self.m.json.output(files) | 62 return self.m.json.output(files) |
| 63 return listdir_callback | 63 return listdir_callback |
| OLD | NEW |