OLD | NEW |
1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 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 from recipe_engine import recipe_api | 5 from recipe_engine import recipe_api |
6 | 6 |
7 class ExampleApi(recipe_api.RecipeApi): | 7 class ExampleApi(recipe_api.RecipeApi): |
8 """ExampleApi provides support for the example/* recipes.""" | 8 """ExampleApi provides support for the example/* recipes.""" |
9 | 9 |
10 def __call__(self, name): | 10 def __call__(self, name): |
11 return self.m.step(name, ['true']) | 11 return self.m.step(name, ['true']) |
12 | 12 |
13 @recipe_api.non_step | 13 @recipe_api.non_step |
14 def explicit_non_composite_step(self): | 14 def explicit_non_composite_step(self): |
15 # normally this would count as a composite step, since it runs substeps. | 15 # normally this would count as a composite step, since it runs substeps. |
16 # However we want these steps to actually run in the parent context | 16 # However we want these steps to actually run in the parent context |
17 # (for some reason), so we mark the function as not a step. | 17 # (for some reason), so we mark the function as not a step. |
18 self("bogus") | 18 self("bogus") |
19 self("steps") | 19 self("steps") |
OLD | NEW |