# Copyright 2019 Province of British Columbia
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and limitations under the License.
test_that("bcdc_query_geodata returns an bcdc_promise object for a valid id OR bcdc_record", {
skip_on_cran()
skip_if_net_down()
# id (character)
bc_airports <- bcdc_query_geodata("bc-airports")
expect_s3_class(bc_airports, "bcdc_promise")
# bcdc_record
bc_airports_record <- bcdc_get_record("bc-airports")
bc_airports2 <- bcdc_query_geodata(bc_airports_record)
expect_equal(bc_airports, bc_airports2)
# neither character nor bcdc_record
expect_error(
bcdc_query_geodata(1L),
"No bcdc_query_geodata method for an object of class integer"
)
})
test_that("bcdc_query_geodata returns an object with a query, a cli, the catalogue object, and a df of column names", {
skip_if_net_down()
skip_on_cran()
bc_airports <- bcdc_query_geodata("bc-airports")
expect_type(bc_airports[["query_list"]], "list")
expect_s3_class(bc_airports[["cli"]], "HttpClient")
expect_s3_class(bc_airports[["record"]], "bcdc_record")
expect_s3_class(bc_airports[["cols_df"]], "data.frame")
})
test_that("bcdc_query_geodata returns an object with bcdc_promise class when using filter", {
skip_on_cran()
skip_if_net_down()
bc_eml <- bcdc_query_geodata("bc-environmental-monitoring-locations") %>%
filter(PERMIT_RELATIONSHIP == "DISCHARGE")
expect_s3_class(bc_eml, "bcdc_promise")
})
test_that("bcdc_query_geodata returns an object with bcdc_promise class on record under 10000", {
skip_on_cran()
skip_if_net_down()
airports <- bcdc_query_geodata("bc-airports")
expect_s3_class(airports, "bcdc_promise")
})
test_that("bcdc_query_geodata fails when >1 record", {
skip_if_net_down()
skip_on_cran()
expect_error(
bcdc_query_geodata(c(
"bc-airports",
"bc-environmental-monitoring-locations"
)),
"Only one record my be queried at a time"
)
})
test_that("bcdc_query_geodata fails when no wfs available", {
skip_if_net_down()
skip_on_cran()
expect_error(
bcdc_query_geodata("dba6c78a-1bc1-4d4f-b75c-96b5b0e7fd30"),
"No Web Feature Service resource available"
)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.