tests/testthat/test-international-Flanders.R

# Tests commented out until Flanders atlas is operational

# # set verbose to off
# galah_config(verbose = FALSE, run_checks = FALSE)
# 
# test_that("swapping to atlas = Flanders works", {
#   expect_message(galah_config(atlas = "Flanders"))
# })
# 
# test_that("show_all(fields) works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- show_all(fields) |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_gt(nrow(x), 1)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
#   # also that fields match those returned by default_columns()
#   y <- default_columns() # internal function called by `galah_select()`
#   expect_true(all(y %in% x$id))
# })
# 
# test_that("show_all(licences) works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- show_all(licences) |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_gt(nrow(x), 1)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("show_all(collections) works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- show_all(collections, limit = 10) |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_lte(nrow(x), 10)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("show_all(datasets) works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- show_all(datasets, limit = 10) |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_lte(nrow(x), 10)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("show_all(providers) works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- show_all(providers, limit = 10) |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_lte(nrow(x), 10)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("show_all(reasons) works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- show_all(reasons) |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_gt(nrow(x), 1)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("show_all(assertions) works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- show_all(assertions) |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_gt(nrow(x), 1)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("show_all(profiles) works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- show_all(profiles) |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_gt(nrow(x), 1)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("show_all(lists) works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- show_all(lists, limit = 10) |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_lte(nrow(x), 10)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("search_all(fields) works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- search_all(fields, "year") |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_gte(nrow(x), 1)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("search_all(taxa) works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- search_all(taxa, "Mammalia") |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_gte(nrow(x), 1)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("search_all(taxa) works using data.frames for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- search_all(taxa, 
#                   data.frame(kingdom = "Animalia", 
#                              phylum = "Chordata")) |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_gte(nrow(x), 1)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("search_all(identifiers) works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- search_all(identifiers, "359") |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_gte(nrow(x), 1)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("show_values works for fields for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- search_all(fields, "basisOfRecord") |> 
#     show_values() |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_gte(nrow(x), 1)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("show_values works for profiles for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- search_all(profiles, "LA") |> 
#     show_values() |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_gte(nrow(x), 1)
#   expect_true(inherits(x, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("atlas_counts works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- atlas_counts() |>
#     pull(count) |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_gt(x, 0)
# })
# 
# test_that("atlas_counts works with type = 'species' for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- atlas_counts(type = "species") |>
#     pull(count) |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_gt(x, 0)
# })
# 
# test_that("atlas_counts works with galah_identify for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   result <- galah_call() |>
#     identify("Mammalia") |>
#     count() |>
#     collect() |>
#     try(silent = TRUE)
#   skip_if(inherits(result, "try-error"), message = "API not available")
#   expect_gt(result$count, 1)
#   result2 <- galah_call() |>
#     filter(class == "Mammalia") |>
#     count() |>
#     collect() |>
#     try(silent = TRUE)
#   skip_if(inherits(result2, "try-error"), message = "API not available")
#   expect_lt(
#     sqrt((result2$count - result$count)^2) / result$count, 
#     0.1) # i.e. <1% margin of error
# })
# 
# test_that("atlas_counts works with apply_profile for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   without_profile <- galah_call() |>
#     count() |>
#     collect()
#   with_profile <- galah_call() |>
#     apply_profile(LA) |>
#     count() |>
#     collect()
#   expect_gt(with_profile$count, 0)
#   expect_equal(class(without_profile), class(with_profile))
#   expect_lt(with_profile$count, without_profile$count)
# })
# 
# test_that("atlas_counts works with group_by for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   result <- galah_call() |>
#     filter(year >= 2000) |>
#     group_by(basis_of_record) |>
#     count() |>
#     collect() |>
#     try(silent = TRUE)
#   skip_if(inherits(result, "try-error"), message = "API not available")
#   expect_gt(nrow(result), 1)
#   expect_equal(names(result), c("basis_of_record", "count"))
#   })
# 
# test_that("atlas_counts works with apply_profile for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   without_profile <- galah_call() |>
#     count() |>
#     collect()
#   with_profile <- galah_call() |>
#     apply_profile(LA) |>
#     count() |>
#     collect()
#   expect_gt(with_profile$count, 0)
#   expect_equal(class(without_profile), class(with_profile))
#   expect_lt(with_profile$count, without_profile$count)
# })
# 
# test_that("atlas_species works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   galah_config(
#     atlas = "Flanders",
#     email = "test@ala.org.au",
#     send_email = FALSE)
#   spp <- galah_call() |>
#     galah_identify("Carnivora") |>
#     atlas_species() |>
#     try(silent = TRUE)
#   skip_if(inherits(spp, "try-error"), message = "API not available")
#   expect_gt(nrow(spp), 20)
#   expect_equal(ncol(spp), 11)
#   expect_s3_class(spp, c("tbl_df", "tbl", "data.frame"))
# })
# 
# test_that("galah_select works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   x <- galah_select()
#   y <- galah_select(basisOfRecord)
#   expect_equal(length(x), 2)
#   expect_equal(x$summary, "group = basic")
#   expect_equal(x$group, "basic")
#   expect_true(inherits(x, c("list"))) 
#   expect_equal(length(y), 3)
#   expect_equal(y$summary, "basisOfRecord")
#   expect_equal(y$group, character(0))
#   expect_true(inherits(y, c("list"))) 
#   expect_true(inherits(y[[1]], c("quosure", "formula"))) 
# })
# 
# test_that("atlas_occurrences works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   galah_config(
#     atlas = "Flanders",
#     email = "test@ala.org.au",
#     download_reason_id = 10,
#     send_email = FALSE)
#   occ <- galah_call() |>
#     identify("Mammalia") |>
#     filter(year <= 1800) |>
#     select(species, year) |>
#     atlas_occurrences() |>
#     try(silent = TRUE)
#   skip_if(inherits(occ, "try-error"), message = "API not available")
#   expect_gt(nrow(occ), 0)
#   expect_equal(ncol(occ), 2)
#   expect_true(inherits(occ, c("tbl_df", "tbl", "data.frame")))
# })
# 
# test_that("atlas_media() works for Flanders", {
#   skip_if_offline(); skip_on_ci()
#   galah_config(
#     atlas = "Flanders",
#     email = "test@ala.org.au",
#     download_reason_id = 10,
#     directory = "temp",
#     send_email = FALSE)
#   x <- request_data() |>
#     identify("Mammalia") |>
#     filter(year >= 2023
#            # imageIDsCount > 0
#            ) |>
#     # count() |>
#     # collect()
#     atlas_media() |>
#     try(silent = TRUE)
#   skip_if(inherits(x, "try-error"), message = "API not available")
#   expect_s3_class(x, c("tbl_df", "tbl", "data.frame"))
#   expect_gte(nrow(x), 1)
#   expect_equal(colnames(x)[1:2],
#                c("media_id", "recordID"))
#   # download a subset
#   n_downloads <- 5
#   collect_media(x[seq_len(n_downloads), ])
#   expect_equal(length(list.files("temp", pattern = ".jpg$")),
#                n_downloads)
#   unlink("temp", recursive = TRUE)
# })
# 
# galah_config(atlas = "Australia")

Try the galah package in your browser

Any scripts or data that you put into this service are public.

galah documentation built on June 12, 2025, 5:09 p.m.