This repository has been archived by the owner on Apr 11, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
/
test.yml
executable file
·104 lines (91 loc) · 2.4 KB
/
test.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#!/usr/bin/env pyrate
#
# Copyright (C) 2015 BMW Car IT GmbH
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
- env:
GLOBAL_FOO: /opt/backup
- teststep:
name: global variable
command: 'echo "Basedir is: {GLOBAL_FOO}"'
stdout:
- contains: "Basedir is: /opt/backup"
- contains: "Basedir is: {GLOBAL_FOO}"
- teststep:
name: foostep
command: echo shared step with parameters {PARAM1} and {PARAM2}
exit: SUCCESS
stdout:
- contains: '{PARAM1}'
- contains: '{PARAM2}'
# in this example this test step gets called with a param bar,
# so lets check for it
- contains: bar
- teststep:
name: recursive_variables
message: check recursive variable {var}
command: "echo {var}"
stdout:
# {var} should resolve to /opt/backup/foo
- contains: /opt/backup/foo
# also the check should resolve correctly
- contains: "^{var}$"
- testcase:
name: first
fatal: true
steps:
- foostep:
PARAM1: foo
PARAM2: bar
- foostep:
PARAM1: bar
PARAM2: bar
- teststep:
name: step1
command: |
#!/bin/bash
echo sleep
sleep 20
echo "afterfoo sleep" 1>&2
exit: -9
fatal: true
timeout: 1000
stdout: ^sleep$
stderr:
- notcontains: after
- teststep:
name: step2
command: echo barfoo 1>&2
exit: 0
stderr: '^(bar|after)foo'
stdout: ''
- testcase:
name: second
steps:
- global variable
- teststep:
name: step1 of case second
command: echo bar && false
exit: 1
stdout:
- notcontains: 'foo'
# this matches the whole string
- contains: '^bar$'
- notcontains: 'bl[ua]bb'
- notcontains: 'bl[ua]bb'
- testcase:
name: recursive variables
steps:
- recursive_variables:
var: "{GLOBAL_FOO}/foo"