This repository has been archived by the owner on Mar 1, 2019. It is now read-only.
forked from cucumber/aruba
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathexit_statuses.feature
136 lines (126 loc) · 3.56 KB
/
exit_statuses.feature
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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
Feature: Check exit status of commands
Use the `the exit status should be \d`-step to check the exit status of the
last command which was executed.
Background:
Given I use a fixture named "cli-app"
Scenario: Test for exit status of 0
Given an executable named "bin/aruba-test-cli" with:
"""
#!/bin/bash
exit 0
"""
And a file named "features/exit_status.feature" with:
"""
Feature: Exit status
Scenario: Run command
When I run `cli`
Then the exit status should be 0
"""
When I run `cucumber`
Then the features should all pass
Scenario: Test for exit status 1
Given an executable named "bin/aruba-test-cli" with:
"""
#!/bin/bash
exit 1
"""
And a file named "features/exit_status.feature" with:
"""
Feature: Failing program
Scenario: Run command
When I run `cli`
Then the exit status should be 1
"""
When I run `cucumber`
Then the features should all pass
Scenario: Test for non-zero exit status
Given an executable named "bin/aruba-test-cli" with:
"""
#!/bin/bash
exit 1
"""
And a file named "features/exit_status.feature" with:
"""
Feature: Failing program
Scenario: Run command
When I run `cli`
Then the exit status should not be 0
"""
When I run `cucumber`
Then the features should all pass
Scenario: Successfully run something
Given an executable named "bin/aruba-test-cli" with:
"""
#!/bin/bash
exit 0
"""
And a file named "features/exit_status.feature" with:
"""
Feature: Failing program
Scenario: Run command
When I successfully run `cli`
"""
When I run `cucumber`
Then the features should all pass
Scenario: Fail to run something successfully
Given an executable named "bin/aruba-test-cli" with:
"""
#!/bin/bash
exit 1
"""
And a file named "features/exit_status.feature" with:
"""
Feature: Failing program
Scenario: Run command
When I successfully run `cli`
"""
When I run `cucumber`
Then the features should not all pass
Scenario: Overwrite the default exit timeout via step
Given an executable named "bin/aruba-test-cli" with:
"""
#!/bin/bash
sleep 1
"""
And a file named "features/exit_status.feature" with:
"""
Feature: Failing program
Scenario: Run command
Given the default aruba exit timeout is 2 seconds
When I successfully run `cli`
"""
When I run `cucumber`
Then the features should all pass
Scenario: Successfully run something longer then the default time
Given an executable named "bin/aruba-test-cli" with:
"""
#!/bin/bash
sleep 1
"""
And a file named "features/exit_status.feature" with:
"""
Feature: Failing program
Scenario: Run command
Given the default aruba exit timeout is 0 seconds
When I successfully run `cli` for up to 2 seconds
"""
When I run `cucumber`
Then the features should all pass
Scenario: Unsuccessfully run something that takes too long
Given an executable named "bin/aruba-test-cli" with:
"""
#!/bin/bash
sleep 2
"""
And a file named "features/exit_status.feature" with:
"""
Feature: Failing program
Scenario: Run command
Given the default aruba exit timeout is 0 seconds
When I successfully run `cli` for up to 1 seconds
"""
When I run `cucumber`
Then the features should not all pass with:
"""
expected "cli" to have finished in time
"""