Skip to content

Commit 9b78015

Browse files
committed
Always return() on failure
1 parent 8af3c80 commit 9b78015

25 files changed

+98
-111
lines changed

R/expect-comparison.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ expect_compare <- function(operator = c("<", "<=", ">", ">="), act, exp) {
4242
exp$lab,
4343
act$val - exp$val
4444
)
45-
fail(msg, trace_env = caller_env())
45+
return(fail(msg, trace_env = caller_env()))
4646
}
4747
pass(act$val)
4848
}

R/expect-condition.R

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ expect_error <- function(
139139
# Access error fields with `[[` rather than `$` because the
140140
# `$.Throwable` from the rJava package throws with unknown fields
141141
if (!is.null(msg)) {
142-
fail(msg, info = info, trace = act$cap[["trace"]])
142+
return(fail(msg, info = info, trace = act$cap[["trace"]]))
143143
}
144144
pass(act$val %||% act$cap)
145145
}
@@ -189,7 +189,7 @@ expect_warning <- function(
189189
cond_type = "warnings"
190190
)
191191
if (!is.null(msg)) {
192-
fail(msg, info = info)
192+
return(fail(msg, info = info))
193193
}
194194
pass(act$val)
195195
}
@@ -222,7 +222,7 @@ expect_message <- function(
222222
act <- quasi_capture(enquo(object), label, capture_messages)
223223
msg <- compare_messages(act$cap, act$lab, regexp = regexp, all = all, ...)
224224
if (!is.null(msg)) {
225-
fail(msg, info = info)
225+
return(fail(msg, info = info))
226226
}
227227
pass(act$val)
228228
}
@@ -267,7 +267,7 @@ expect_condition <- function(
267267
cond_type = "condition"
268268
)
269269
if (!is.null(msg)) {
270-
fail(msg, info = info, trace = act$cap[["trace"]])
270+
return(fail(msg, info = info, trace = act$cap[["trace"]]))
271271
}
272272
pass(act$val %||% act$cap)
273273
}
@@ -308,7 +308,7 @@ expect_condition_matching <- function(
308308
# Access error fields with `[[` rather than `$` because the
309309
# `$.Throwable` from the rJava package throws with unknown fields
310310
if (!is.null(msg)) {
311-
fail(msg, info = info, trace = act$cap[["trace"]], trace_env = trace_env)
311+
return(fail(msg, info = info, trace = act$cap[["trace"]], trace_env = trace_env))
312312
}
313313
# If a condition was expected, return it. Otherwise return the value
314314
# of the expression.

R/expect-constant.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ expect_waldo_constant <- function(act, constant, info, ...) {
7777
deparse(constant),
7878
paste0(comp, collapse = "\n\n")
7979
)
80-
fail(msg, info = info, trace_env = caller_env())
80+
return(fail(msg, info = info, trace_env = caller_env()))
8181
}
8282

8383
pass(act$val)

R/expect-equality.R

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ expect_equal <- function(
7777

7878
if (!comp$equal) {
7979
msg <- sprintf("%s not equal to %s.\n%s", act$lab, exp$lab, comp$message)
80-
fail(msg, info = info)
80+
return(fail(msg, info = info))
8181
}
8282
pass(act$val)
8383
}
@@ -113,7 +113,7 @@ expect_identical <- function(
113113

114114
if (!ident) {
115115
msg <- sprintf("%s not identical to %s.\n%s", act$lab, exp$lab, msg)
116-
fail(msg, info = info)
116+
return(fail(msg, info = info))
117117
}
118118
pass(act$val)
119119
}
@@ -137,7 +137,7 @@ expect_waldo_equal <- function(type, act, exp, info, ...) {
137137
"`expected`",
138138
paste0(comp, collapse = "\n\n")
139139
)
140-
fail(msg, info = info, trace_env = caller_env())
140+
return(fail(msg, info = info, trace_env = caller_env()))
141141
}
142142
pass(act$val)
143143
}
@@ -190,7 +190,7 @@ expect_equivalent <- function(
190190
exp$lab,
191191
comp$message
192192
)
193-
fail(msg, info = info)
193+
return(fail(msg, info = info))
194194
}
195195
pass(act$val)
196196
}
@@ -226,7 +226,7 @@ expect_reference <- function(
226226

227227
if (!is_reference(act$val, exp$val)) {
228228
msg <- sprintf("%s not a reference to %s.", act$lab, exp$lab)
229-
fail(msg, info = info)
229+
return(fail(msg, info = info))
230230
}
231231
pass(act$val)
232232
}

R/expect-inheritance.R

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ expect_type <- function(object, type) {
5858
format_class(act_type),
5959
format_class(type)
6060
)
61-
fail(msg)
61+
return(fail(msg))
6262
}
6363
pass(act$val)
6464
}
@@ -76,15 +76,15 @@ expect_s3_class <- function(object, class, exact = FALSE) {
7676
if (identical(class, NA)) {
7777
if (isS3(object)) {
7878
msg <- sprintf("%s is an S3 object", act$lab)
79-
fail(msg)
79+
return(fail(msg))
8080
}
8181
} else if (is.character(class)) {
8282
if (!isS3(act$val)) {
83-
fail(sprintf("%s is not an S3 object", act$lab))
83+
return(fail(sprintf("%s is not an S3 object", act$lab)))
8484
} else if (exact) {
8585
if (!identical(class(act$val), class)) {
8686
msg <- sprintf("%s has class %s, not %s.", act$lab, act$class, exp_lab)
87-
fail(msg)
87+
return(fail(msg))
8888
}
8989
} else {
9090
if (!inherits(act$val, class)) {
@@ -94,7 +94,7 @@ expect_s3_class <- function(object, class, exact = FALSE) {
9494
act$class,
9595
exp_lab
9696
)
97-
fail(msg)
97+
return(fail(msg))
9898
}
9999
}
100100
} else {
@@ -115,7 +115,7 @@ expect_s7_class <- function(object, class) {
115115
act <- quasi_label(enquo(object), arg = "object")
116116

117117
if (!S7::S7_inherits(object)) {
118-
fail(sprintf("%s is not an S7 object", act$lab))
118+
return(fail(sprintf("%s is not an S7 object", act$lab)))
119119
}
120120

121121
if (!S7::S7_inherits(object, class)) {
@@ -127,7 +127,7 @@ expect_s7_class <- function(object, class) {
127127
class_desc,
128128
attr(class, "name", TRUE)
129129
)
130-
fail(msg)
130+
return(fail(msg))
131131
}
132132

133133
pass(act$val)
@@ -143,11 +143,11 @@ expect_s4_class <- function(object, class) {
143143
if (identical(class, NA)) {
144144
if (!(isS4(object) == !is.na(class))) {
145145
msg <- sprintf("%s is an S4 object", act$lab)
146-
fail(msg)
146+
return(fail(msg))
147147
}
148148
} else if (is.character(class)) {
149149
if (!isS4(act$val)) {
150-
fail(sprintf("%s is not an S4 object", act$lab))
150+
return(fail(sprintf("%s is not an S4 object", act$lab)))
151151
} else {
152152
if (!methods::is(act$val, class)) {
153153
msg <- sprintf(
@@ -156,7 +156,7 @@ expect_s4_class <- function(object, class) {
156156
act$class,
157157
exp_lab
158158
)
159-
fail(msg)
159+
return(fail(msg))
160160
}
161161
}
162162
} else {
@@ -205,7 +205,7 @@ expect_is <- function(object, class, info = NULL, label = NULL) {
205205
act$class,
206206
exp_lab
207207
)
208-
fail(msg, info = info)
208+
return(fail(msg, info = info))
209209
}
210210
pass(act$val)
211211
}

R/expect-invisible.R

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ expect_invisible <- function(call, label = NULL) {
2626

2727
if (!identical(vis$visible, FALSE)) {
2828
msg <- sprintf("%s returns visibly, not invisibly.", lab)
29-
fail(msg)
29+
return(fail(msg))
3030
}
3131
pass(vis$value)
3232
}
@@ -39,7 +39,7 @@ expect_visible <- function(call, label = NULL) {
3939

4040
if (!identical(vis$visible, TRUE)) {
4141
msg <- sprintf("%s returns invisibly, not visibly.", lab)
42-
fail(msg)
42+
return(fail(msg))
4343
}
4444
pass(vis$value)
4545
}

R/expect-known.R

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ compare_file <- function(path, lines, ..., update = TRUE, info = NULL) {
104104
encodeString(path, quote = "'"),
105105
paste0(comp, collapse = "\n\n")
106106
)
107-
fail(msg, info = info, trace_env = caller_env())
107+
return(fail(msg, info = info, trace_env = caller_env()))
108108
}
109109
pass(NULL)
110110
}
@@ -183,7 +183,7 @@ expect_known_value <- function(
183183
encodeString(file, quote = "'"),
184184
comp$message
185185
)
186-
fail(msg, info = info)
186+
return(fail(msg, info = info))
187187
}
188188
}
189189

@@ -225,7 +225,7 @@ expect_known_hash <- function(object, hash = NULL) {
225225
} else {
226226
if (hash != act_hash) {
227227
msg <- sprintf("Value hashes to %s, not %s", act_hash, hash)
228-
fail(msg)
228+
return(fail(msg))
229229
}
230230
}
231231

R/expect-length.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ expect_length_impl_ <- function(act, n) {
2525

2626
if (act$n != n) {
2727
msg <- sprintf("%s has length %i, not length %i.", act$lab, act$n, n)
28-
fail(msg, trace_env = parent.frame())
28+
return(fail(msg, trace_env = parent.frame()))
2929
}
3030
pass(act$val)
3131
}

R/expect-named.R

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ expect_named <- function(
3838
if (missing(expected)) {
3939
if (identical(act$names, NULL)) {
4040
msg <- sprintf("%s does not have names.", act$lab)
41-
fail(msg)
41+
return(fail(msg))
4242
}
4343
} else {
4444
exp_names <- normalise_names(expected, ignore.order, ignore.case)
@@ -51,7 +51,7 @@ expect_named <- function(
5151
paste0("'", act$names, "'", collapse = ", "),
5252
paste0("'", exp_names, "'", collapse = ", ")
5353
)
54-
fail(msg, info = info)
54+
return(fail(msg, info = info))
5555
}
5656
}
5757
pass(act$val)

R/expect-no-condition.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ expect_no_ <- function(
112112
indent_lines(rlang::cnd_message(cnd))
113113
)
114114
message <- format_error_bullets(c(expected, i = actual))
115-
fail(message, trace_env = trace_env)
115+
return(fail(message, trace_env = trace_env))
116116
}
117117
)
118118
}

0 commit comments

Comments
 (0)