Skip to content

Commit c093c11

Browse files
committed
test create_epidata_call success and failures
1 parent 0f6b003 commit c093c11

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

tests/testthat/test-epidatacall.R

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,3 +160,39 @@ test_that("classic only fetch", {
160160
# making sure that fetch_tbl and throws the expected error on classic only
161161
expect_error(epidata_call %>% fetch_tbl(), class = "only_supports_classic_format")
162162
})
163+
164+
test_that("create_epidata_call basic behavior", {
165+
endpoint <- "endpoint"
166+
params <- list()
167+
168+
# Success
169+
meta <- list(list(name = "time_value", class = "date"), list(name = "value", class = "double"))
170+
expected <- list(
171+
endpoint = endpoint,
172+
params = params,
173+
base_url = "https://api.delphi.cmu.edu/epidata/",
174+
meta = meta,
175+
only_supports_classic = FALSE
176+
)
177+
class(expected) = "epidata_call"
178+
179+
expect_identical(create_epidata_call(endpoint, params, meta = meta), expected)
180+
181+
expected$meta <- list()
182+
expect_identical(create_epidata_call(endpoint, params, meta = NULL), expected)
183+
expect_identical(create_epidata_call(endpoint, params, meta = list()), expected)
184+
})
185+
186+
187+
test_that("create_epidata_call fails when meta arg contains duplicates", {
188+
endpoint <- "endpoint"
189+
params <- list()
190+
191+
# Duplicate names
192+
meta <- list(list(name = "time_value", class = "date"), list(name = "time_value", class = "int"))
193+
expect_error(create_epidata_call(endpoint, params, meta = meta), class = "epidatr__duplicate_meta_names")
194+
195+
# Duplicate entries
196+
meta <- list(list(name = "time_value", class = "date"), list(name = "time_value", class = "date"))
197+
expect_error(create_epidata_call(endpoint, params, meta = meta), class = "epidatr__duplicate_meta_entries")
198+
})

0 commit comments

Comments
 (0)