furrr_test_that("imap functions work with unnamed input", { expect_identical(future_imap(1:2, ~.y), list(1L, 2L)) expect_identical(future_imap_chr(1:2, ~ as.character(.y)), c("1", "2")) expect_identical(future_imap_int(1:2, ~.y), c(1L, 2L)) expect_identical(future_imap_dbl(1:2, ~.y), c(1, 2)) expect_identical(future_imap_lgl(1:2, ~ identical(.y, 1L)), c(TRUE, FALSE)) expect_identical(future_imap_vec(1:2, ~ identical(.y, 1L)), c(TRUE, FALSE)) expect_identical( future_imap_dfr(1:2, ~ data.frame(x = .y)), data.frame(x = c(1L, 2L)) ) expect_identical( future_imap_dfc(1:2, ~ vctrs::new_data_frame(set_names(list(1), .y))), vctrs::new_data_frame(list(`1` = 1, `2` = 1)) ) }) furrr_test_that("imap functions work with named input", { x <- set_names(1:2, c("x", "y")) expect_identical(future_imap(x, ~.y), list(x = "x", y = "y")) expect_identical(future_imap_chr(x, ~ as.character(.y)), c(x = "x", y = "y")) expect_identical( future_imap_int(x, ~ if (.y == "x") 1L else 2L), c(x = 1L, y = 2L) ) expect_identical( future_imap_dbl(x, ~ if (.y == "x") 1 else 2), c(x = 1, y = 2) ) expect_identical( future_imap_lgl(x, ~ if (.y == "x") TRUE else FALSE), c(x = TRUE, y = FALSE) ) expect_identical( future_imap_vec(x, ~ if (.y == "x") TRUE else FALSE), c(x = TRUE, y = FALSE) ) expect_identical( future_imap_dfr(x, ~ data.frame(x = .y)), data.frame(x = c("x", "y")) ) expect_identical( future_imap_dfc(x, ~ vctrs::new_data_frame(set_names(list(1), .y))), vctrs::new_data_frame(list(x = 1, y = 1)) ) })