Nothing
test_that("galah_bbox returns bbox for sf", {
polygon_sfc <- "POLYGON((142.36228 -29.00703,142.74131 -29.00703,142.74131 -29.39064,142.36228 -29.39064,142.36228 -29.00703))" |>
st_as_sfc()
polygon_bbox <- galah_bbox(polygon_sfc)
expected_bbox <- polygon_sfc |> st_bbox()
expect_message(galah_bbox(polygon_sfc), "Data returned for bounding box:")
expect_true(grepl("MULTIPOLYGON", galah_bbox(polygon_sfc)))
expect_equal(attributes(polygon_bbox)$bbox, expected_bbox)
})
test_that("galah_bbox returns bbox for shapefile", {
poly_path <- test_path("testdata", "act_state_polygon_shp", "ACT_STATE_POLYGON_shp.shp")
shapefile <- sf::st_read(poly_path, quiet = TRUE)
shapefile_bbox <- galah_bbox(shapefile)
expected_bbox <- attributes(shapefile_bbox)$bbox
expect_message(galah_bbox(shapefile), "Data returned for bounding box:")
expect_true(grepl("MULTIPOLYGON", galah_bbox(shapefile)))
expect_equal(attributes(shapefile_bbox)$bbox, expected_bbox)
})
test_that("galah_bbox returns bbox for bbox", { # FIXME: not backwards compatible with bbox coords?
bbox <- st_bbox(c(xmin = 143, xmax = 148, ymin = -29, ymax = -28), crs = st_crs("WGS84"))
bbox_galah <- galah_bbox(bbox)
expected_polygon <- "MULTIPOLYGON (((143 -29, 148 -29, 148 -28, 143 -28, 143 -29)))"
expect_message(galah_bbox(bbox), "Data returned for bounding box:")
expect_equal(galah_bbox(bbox)[1], expected_polygon)
expect_equal(attributes(bbox_galah)$bbox, bbox)
})
test_that("galah_bbox returns bbox for tibble", {
tibble <- tibble(xmin = 143, ymin = -29, xmax = 148, ymax = -21)
tibble_bbox <- galah_bbox(tibble)
expected_polygon <- "MULTIPOLYGON (((143 -29, 148 -29, 148 -21, 143 -21, 143 -29)))"
expected_bbox <- st_bbox(c(xmin = 143, xmax = 148, ymin = -29, ymax = -21), crs = st_crs("WGS84"))
expect_message(galah_bbox(tibble), "Data returned for bounding box:")
expect_equal(galah_bbox(tibble)[1], expected_polygon)
expect_equal(attributes(tibble_bbox)$bbox, expected_bbox)
})
test_that("galah_bbox does not accept incorrect tibbles", {
tibble_wrong <- tibble(c1 = c("hi", "hello"), c2 = 1:2)
tibble_bad_colnames <- tibble(top = 148, bottom = -29, ymin = -29, ymax = -29)
tibble_invalid_bbox <- tibble(xmin = 148, ymin = -29, xmax = 143, ymax = -29)
expect_error(galah_bbox(tibble_wrong))
expect_error(galah_bbox(tibble_bad_colnames))
expect_error(galah_bbox(tibble_invalid_bbox))
})
test_that("galah_bbox uses only first coordinates of tibble with many coordinates", {
tibble_many_coords <- tibble(xmin = c(148, 145),
ymin = c(-29, -42),
xmax = c(143, 146),
ymax = c(-30, -41))
expect_warning(galah_bbox(tibble_many_coords),
"More than 1 set of coordinates supplied to")
})
test_that("galah_bbox checks number of inputs, uses first argument", { # FIXME
wkt_1 <- glue("POLYGON((142.36228 -29.00703,142.74131 -29.00703,142.74131 \\
-29.39064,142.36228 -29.39064,142.36228 -29.00703))") |> st_as_sfc()
wkt_2 <- glue("POLYGON((145.6765 -42.13203, 145.9652 -42.63203, 146.5425 \\
-42.63203, 146.8312 -42.13203, 146.5425 -41.63203, 145.9652 \\
-41.63203, 145.6765 -42.13203))") |> st_as_sfc()
expected_polygon <- glue("MULTIPOLYGON (((142.3623 -29.39064, 142.7413 -29.39064, \\
142.7413 -29.00703, 142.3623 -29.00703, 142.3623 -29.39064)))")
bbox_1 <- expect_warning(galah_bbox(wkt_1, wkt_2), "More than 1 spatial area provided")
expect_equal(as.character(bbox_1),
as.character(galah_bbox(wkt_1)[1]),
as.character(expected_polygon))
})
test_that("galah_bbox checks inputs", {
wkt <- "POLYGON((142.36228 -29.00703,142.74131 -29.00703,142.74131 -29.39064,142.36228 -29.39064,142.36228 -29.00703))"
number <- 45
c_char <- c("a", "b", "c", "d")
c_numbers <- c(45, 2, 45, 2)
expect_error(galah_bbox(wkt))
expect_error(galah_bbox(number))
expect_error(galah_bbox(c_char))
expect_error(galah_bbox(c_numbers))
})
test_that("galah_bbox detects invalid spatial objects", {
impossible_bbox <- st_bbox(c(xmin = 148000,
xmax = -29000,
ymin = -29000,
ymax = -29000),
crs = st_crs("WGS84"))
expect_error(galah_bbox(impossible_bbox),
"Invalid spatial object")
})
test_that("galah_bbox converts to multipolygon", {
wkt <- "POLYGON((143.32 -18.78,145.30 -20.52,141.52 -21.50,143.32 -18.78))"
sf_wkt <- wkt |> st_as_sfc()
expect_match(galah_bbox(sf_wkt), "MULTIPOLYGON")
})
# TODO: test that galah_bbox unnests sf object & shapefiles correctly
# after converting from dots
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.