Chromium Code Reviews

Unified Diff: recipes/example/nested.py

Issue 2814873002: Revert of Enable strict coverage for step module (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
« no previous file with comments | « recipes/example/defer.expected/one_fail.json ('k') | recipes/example/nested.expected/basic.json » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: recipes/example/nested.py
diff --git a/recipes/example/nested.py b/recipes/example/nested.py
new file mode 100644
index 0000000000000000000000000000000000000000..c16844aca179c895b31e80ea776565d5b358d1f4
--- /dev/null
+++ b/recipes/example/nested.py
@@ -0,0 +1,41 @@
+# Copyright 2015 The LUCI Authors. All rights reserved.
+# Use of this source code is governed under the Apache License, Version 2.0
+# that can be found in the LICENSE file.
+
+
+DEPS = [
+ 'step',
+]
+
+
+def RunSteps(api):
+ # Nest all steps below this.
+ with api.step.nest('complicated thing'):
+ with api.step.nest('first part'):
+ api.step('wait a bit', ['sleep', '1'])
+
+ # Prefix the name without indenting.
+ with api.step.context({'name': 'attempt number'}):
+ step_result = api.step('one', ['echo', 'herpy'])
+ assert step_result.step['name'] == 'complicated thing.attempt number.one'
+ api.step('two', ['echo', 'derpy'])
+
+ # Outer nested step's status should not inherit from inner.
+ with api.step.nest('inherit status') as nest_step:
+ with api.step.nest('inner step') as other_nest_step:
+ other_nest_step.presentation.status = api.step.EXCEPTION
+ assert nest_step.presentation.status == api.step.SUCCESS
+
+ # Change outer status after nesting is complete.
+ with api.step.nest('versatile status') as nest_step:
+ with api.step.nest('inner step'):
+ with api.step.nest('even deeper'):
+ pass
+ nest_step.presentation.status = api.step.FAILURE
+ assert nest_step.presentation.status == api.step.FAILURE
+
+ api.step('simple thing', ['sleep', '1'])
+
+
+def GenTests(api):
+ yield api.test('basic')
« no previous file with comments | « recipes/example/defer.expected/one_fail.json ('k') | recipes/example/nested.expected/basic.json » ('j') | no next file with comments »

Powered by Google App Engine