Skip to content

Commit e392aaf

Browse files
committed
Updated tests
1 parent 2c98ce9 commit e392aaf

File tree

2 files changed

+579
-8
lines changed

2 files changed

+579
-8
lines changed

tests/testthat/test_logistic_reg.R

Lines changed: 254 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
library(testthat)
22
library(parsnip)
3-
3+
library(recipes)
44

55
test_that('primary arguments', {
66
basic <- logistic_reg()
@@ -23,7 +23,7 @@ test_that('primary arguments', {
2323
x = as.matrix(x),
2424
y = y,
2525
family = "binomial"
26-
)
26+
)
2727
)
2828
)
2929
expect_equal(basic_stan$method$fit,
@@ -62,7 +62,7 @@ test_that('primary arguments', {
6262
)
6363
)
6464
)
65-
65+
6666
mixture_v <- logistic_reg(mixture = varying())
6767
mixture_v_glmnet <- finalize(mixture_v, engine = "glmnet")
6868
expect_equal(mixture_v_glmnet$method$fit,
@@ -116,7 +116,7 @@ test_that('engine arguments', {
116116
)
117117
)
118118
)
119-
119+
120120
})
121121

122122

@@ -155,4 +155,254 @@ test_that('bad input', {
155155
expect_warning(finalize(logistic_reg(engine_args = list(formula = y ~ x)), engine = "glm"))
156156
})
157157

158+
###################################################################
159+
160+
data("lending_club")
161+
lending_club <- head(lending_club, 200)
162+
lc_form <- as.formula(Class ~ log(funded_amnt) + int_rate)
163+
num_pred <- c("funded_amnt", "annual_inc", "num_il_tl")
164+
lc_bad_form <- as.formula(funded_amnt ~ term)
165+
lc_basic <- logistic_reg()
166+
ctrl <- list(verbosity = 1, catch = FALSE)
167+
caught_ctrl <- list(verbosity = 1, catch = TRUE)
168+
quiet_ctrl <- list(verbosity = 0, catch = TRUE)
169+
lc_rec <- recipe(Class ~ funded_amnt + annual_inc + num_il_tl,
170+
data = lending_club)
171+
bad_rec <-
172+
recipe(total_bal_il ~ funded_amnt + annual_inc + num_il_tl,
173+
data = lending_club)
174+
175+
176+
test_that('glm execution', {
177+
skip_on_cran()
178+
179+
expect_error(
180+
res <- fit(
181+
lc_basic,
182+
engine = "glm",
183+
.control = ctrl,
184+
lc_form,
185+
data = lending_club
186+
),
187+
regexp = NA
188+
)
189+
expect_error(
190+
res <- fit(
191+
lc_basic,
192+
engine = "glm",
193+
.control = ctrl,
194+
x = lending_club[, num_pred],
195+
y = lending_club$Class
196+
),
197+
regexp = NA
198+
)
199+
expect_error(
200+
res <- fit(
201+
lc_basic,
202+
engine = "glm",
203+
.control = ctrl,
204+
lc_rec,
205+
data = lending_club
206+
),
207+
regexp = NA
208+
)
209+
expect_error(
210+
res <- fit(
211+
lc_basic,
212+
engine = "glm",
213+
.control = ctrl,
214+
lc_bad_form,
215+
data = lending_club
216+
)
217+
)
218+
219+
glm_form_catch <- fit(
220+
lc_basic,
221+
engine = "glm",
222+
.control = caught_ctrl,
223+
lc_bad_form,
224+
data = lending_club
225+
)
226+
expect_true(inherits(glm_form_catch, "try-error"))
227+
228+
# fails
229+
# glm_xy_catch <- fit(
230+
# lc_basic,
231+
# engine = "glm",
232+
# .control = caught_ctrl,
233+
# x = lending_club[, num_pred],
234+
# y = lending_club$total_bal_il
235+
# )
236+
# expect_true(inherits(glm_xy_catch, "try-error"))
237+
238+
glm_rec_catch <- fit(
239+
lc_basic,
240+
engine = "glm",
241+
.control = caught_ctrl,
242+
bad_rec,
243+
data = lending_club
244+
)
245+
expect_true(inherits(glm_rec_catch, "try-error"))
246+
})
247+
248+
test_that('glmnet execution', {
249+
skip_on_cran()
250+
251+
expect_error(
252+
fit(
253+
lc_basic,
254+
engine = "glmnet",
255+
.control = ctrl,
256+
lc_form,
257+
data = lending_club
258+
),
259+
regexp = NA
260+
)
261+
262+
# expect_error(
263+
# fit(
264+
# lc_basic,
265+
# engine = "glmnet",
266+
# .control = ctrl,
267+
# x = lending_club[, num_pred],
268+
# y = lending_club$Class
269+
# ),
270+
# regexp = NA
271+
# )
272+
273+
# expect_error(
274+
# fit(
275+
# lc_basic,
276+
# engine = "glmnet",
277+
# .control = ctrl,
278+
# lc_rec,
279+
# data = lending_club
280+
# ),
281+
# regexp = NA
282+
# )
283+
284+
expect_error(
285+
fit(
286+
lc_basic,
287+
engine = "glm",
288+
.control = ctrl,
289+
lc_bad_form,
290+
data = lending_club
291+
)
292+
)
293+
294+
glmnet_form_catch <- fit(
295+
lc_basic,
296+
engine = "glmnet",
297+
.control = caught_ctrl,
298+
lc_bad_form,
299+
data = lending_club
300+
)
301+
expect_true(inherits(glmnet_form_catch, "try-error"))
302+
303+
glmnet_xy_catch <- fit(
304+
lc_basic,
305+
engine = "glmnet",
306+
.control = caught_ctrl,
307+
x = lending_club[, num_pred],
308+
y = lending_club$total_bal_il
309+
)
310+
expect_true(inherits(glmnet_xy_catch, "try-error"))
311+
312+
glmnet_rec_catch <- fit(
313+
lc_basic,
314+
engine = "glmnet",
315+
.control = caught_ctrl,
316+
bad_rec,
317+
data = lending_club
318+
)
319+
expect_true(inherits(glmnet_rec_catch, "try-error"))
320+
})
321+
322+
323+
test_that('stan_glm execution', {
324+
skip_on_cran()
325+
lc_basic_stan <- logistic_reg(engine_args = list(seed = 1333))
326+
327+
expect_error(
328+
res <- fit(
329+
lc_basic_stan,
330+
engine = "stan_glm",
331+
.control = ctrl,
332+
lc_form,
333+
data = lending_club
334+
),
335+
regexp = NA
336+
)
337+
338+
expect_error(
339+
res <- fit(
340+
lc_basic,
341+
engine = "stan_glm",
342+
.control = ctrl,
343+
x = lending_club[, num_pred],
344+
y = lending_club$Class
345+
),
346+
regexp = NA
347+
)
348+
349+
expect_error(
350+
res <- fit(
351+
lc_basic,
352+
engine = "stan_glm",
353+
.control = ctrl,
354+
lc_rec,
355+
data = lending_club
356+
),
357+
regexp = NA
358+
)
359+
360+
expect_silent(
361+
res <- fit(
362+
lc_basic,
363+
engine = "stan_glm",
364+
.control = quiet_ctrl,
365+
lc_rec,
366+
data = lending_club
367+
)
368+
)
369+
370+
expect_error(
371+
res <- fit(
372+
lc_basic,
373+
engine = "stan_glm",
374+
.control = ctrl,
375+
lc_bad_form,
376+
data = lending_club
377+
)
378+
)
379+
380+
stan_form_catch <- fit(
381+
lc_basic,
382+
engine = "stan_glm",
383+
.control = caught_ctrl,
384+
lc_bad_form,
385+
data = lending_club
386+
)
387+
expect_true(inherits(stan_form_catch, "try-error"))
388+
389+
# fails
390+
# stan_xy_catch <- fit(
391+
# lc_basic,
392+
# engine = "stan_glm",
393+
# .control = caught_ctrl,
394+
# x = lending_club[, num_pred],
395+
# y = lending_club$total_bal_il
396+
# )
397+
# expect_true(inherits(stan_xy_catch, "try-error"))
398+
399+
stan_rec_catch <- fit(
400+
lc_basic,
401+
engine = "stan_glm",
402+
.control = caught_ctrl,
403+
bad_rec,
404+
data = lending_club
405+
)
406+
expect_true(inherits(stan_rec_catch, "try-error"))
407+
})
158408

0 commit comments

Comments
 (0)