~dricottone/my-utils

ref: a45a21860817f3e7822235476351c31aa5929150 my-utils/core/test/whiched.bats -rw-r--r-- 4.6 KiB
a45a2186Dominic Ricottone Rewrote tests with bats 2 years ago
                                                                                
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
#!/usr/bin/env bats
bats_require_minimum_version 1.5.0

@test "whiched usage" {
  run --separate-stderr whiched
  [ "$status" -eq 1 ]
  [ "$output" = "" ]
  [ "$stderr" = "Usage: whiched [OPTIONS] PROGRAM" ]
}

@test "whiched usage - quiet" {
  run --separate-stderr whiched --quiet
  [ "$status" -eq 1 ]
  [ "$output" = "" ]
  [ "$stderr" = "" ]
}

@test "whiched usage - quiet short" {
  run --separate-stderr whiched -q
  [ "$status" -eq 1 ]
  [ "$output" = "" ]
  [ "$stderr" = "" ]
}

@test "whiched version" {
  run --separate-stderr whiched --version
  [ "$status" -eq 0 ]
  [ "$output" = "whiched 1.2" ]
  [ "$stderr" = "" ]
}

@test "whiched version - quiet" {
  run --separate-stderr whiched --version --quiet
  [ "$status" -eq 0 ]
  [ "$output" = "whiched 1.2" ]
  [ "$stderr" = "" ]
}

@test "whiched version - quiet short" {
  run --separate-stderr whiched --version -q
  [ "$status" -eq 0 ]
  [ "$output" = "whiched 1.2" ]
  [ "$stderr" = "" ]
}

@test "whiched version short" {
  run --separate-stderr whiched -v
  [ "$status" -eq 0 ]
  [ "$output" = "whiched 1.2" ]
  [ "$stderr" = "" ]
}

@test "whiched version short - quiet" {
  run --separate-stderr whiched -v --quiet
  [ "$status" -eq 0 ]
  [ "$output" = "whiched 1.2" ]
  [ "$stderr" = "" ]
}

@test "whiched version short - quiet short" {
  run --separate-stderr whiched -v --quiet
  [ "$status" -eq 0 ]
  [ "$output" = "whiched 1.2" ]
  [ "$stderr" = "" ]
}

@test "whiched help" {
  run --separate-stderr whiched --help
  [ "$status" -eq 0 ]
  [ "${lines[0]}" = "Open a program with your editor" ]
  [ "${lines[1]}" = "Usage: whiched [OPTIONS] PROGRAM" ]
  [ "${lines[2]}" = "Options:" ]
  [ "${lines[3]}" = " -h, --help     print this message" ]
  [ "${lines[4]}" = " -q, --quiet    suppress error messages" ]
  [ "${lines[5]}" = " -v, --version  print version number and exit" ]
  [ "$stderr"  = "" ]
}

@test "whiched help - quiet" {
  run --separate-stderr whiched --help --quiet
  [ "$status" -eq 0 ]
  [ "${lines[0]}" = "Open a program with your editor" ]
  [ "${lines[1]}" = "Usage: whiched [OPTIONS] PROGRAM" ]
  [ "${lines[2]}" = "Options:" ]
  [ "${lines[3]}" = " -h, --help     print this message" ]
  [ "${lines[4]}" = " -q, --quiet    suppress error messages" ]
  [ "${lines[5]}" = " -v, --version  print version number and exit" ]
  [ "$stderr"  = "" ]
}

@test "whiched help - quiet short" {
  run --separate-stderr whiched --help -q
  [ "$status" -eq 0 ]
  [ "${lines[0]}" = "Open a program with your editor" ]
  [ "${lines[1]}" = "Usage: whiched [OPTIONS] PROGRAM" ]
  [ "${lines[2]}" = "Options:" ]
  [ "${lines[3]}" = " -h, --help     print this message" ]
  [ "${lines[4]}" = " -q, --quiet    suppress error messages" ]
  [ "${lines[5]}" = " -v, --version  print version number and exit" ]
  [ "$stderr"  = "" ]
}

@test "whiched help short" {
  run --separate-stderr whiched -h
  [ "$status" -eq 0 ]
  [ "${lines[0]}" = "Open a program with your editor" ]
  [ "${lines[1]}" = "Usage: whiched [OPTIONS] PROGRAM" ]
  [ "${lines[2]}" = "Options:" ]
  [ "${lines[3]}" = " -h, --help     print this message" ]
  [ "${lines[4]}" = " -q, --quiet    suppress error messages" ]
  [ "${lines[5]}" = " -v, --version  print version number and exit" ]
  [ "$stderr"  = "" ]
}

@test "whiched help short - quiet" {
  run --separate-stderr whiched -h --quiet
  [ "$status" -eq 0 ]
  [ "${lines[0]}" = "Open a program with your editor" ]
  [ "${lines[1]}" = "Usage: whiched [OPTIONS] PROGRAM" ]
  [ "${lines[2]}" = "Options:" ]
  [ "${lines[3]}" = " -h, --help     print this message" ]
  [ "${lines[4]}" = " -q, --quiet    suppress error messages" ]
  [ "${lines[5]}" = " -v, --version  print version number and exit" ]
  [ "$stderr"  = "" ]
}

@test "whiched help short - quiet short" {
  run --separate-stderr whiched --help -q
  [ "$status" -eq 0 ]
  [ "${lines[0]}" = "Open a program with your editor" ]
  [ "${lines[1]}" = "Usage: whiched [OPTIONS] PROGRAM" ]
  [ "${lines[2]}" = "Options:" ]
  [ "${lines[3]}" = " -h, --help     print this message" ]
  [ "${lines[4]}" = " -q, --quiet    suppress error messages" ]
  [ "${lines[5]}" = " -v, --version  print version number and exit" ]
  [ "$stderr"  = "" ]
}

@test "whiched no such program" {
  run --separate-stderr whiched foobarbaz
  [ "$status" -eq 1 ]
  [ "$output"  = "" ]
  [ "$stderr"  = "whiched: No such program 'foobarbaz'" ]
}

@test "whiched no such program - quiet" {
  run --separate-stderr whiched --quiet foobarbaz
  [ "$status" -eq 1 ]
  [ "$output"  = "" ]
  [ "$stderr"  = "" ]
}

@test "whiched no such program - quiet short" {
  run --separate-stderr whiched -q foobarbaz
  [ "$status" -eq 1 ]
  [ "$output"  = "" ]
  [ "$stderr"  = "" ]
}