11library(testthat )
22library(parsnip )
3- 
3+ library( recipes ) 
44
55test_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