tests/testthat/test-multinom_reg.R

hpc <- hpc_data[1:150, c(2:5, 8)]

# ------------------------------------------------------------------------------
test_that('updating', {
  expect_snapshot(
    multinom_reg(mixture = 0) %>%
      set_engine("glmnet", nlambda = 10) %>%
      update(mixture = tune(), nlambda = tune())
  )
})

test_that('bad input', {
  expect_error(multinom_reg(mode = "regression"))
  expect_error(translate(multinom_reg(penalty = 0.1) %>% set_engine("wat?")))
  expect_error(multinom_reg(penalty = 0.1) %>% set_engine())
  expect_warning(translate(multinom_reg(penalty = 0.1) %>% set_engine("glmnet", x = hpc[,1:3], y = hpc$class)))
})

test_that('check_args() works', {
  skip_if_not_installed("keras")
  
  expect_snapshot(
    error = TRUE,
    {
      spec <- multinom_reg(mixture = -1) %>% 
        set_engine("keras") %>%
        set_mode("classification")
      fit(spec, class ~ ., hpc)
    }
  )
  expect_snapshot(
    error = TRUE,
    {
      spec <- multinom_reg(penalty = -1) %>% 
        set_engine("keras") %>%
        set_mode("classification")
      fit(spec, class ~ ., hpc)
    }
  )
})
topepo/parsnip documentation built on April 16, 2024, 3:23 a.m.