Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package: osmdata
Title: Import 'OpenStreetMap' Data as Simple Features or Spatial Objects
Version: 0.3.0.9025
Version: 0.3.0.9026
Authors@R: c(
person("Joan", "Maspons", , "joanmaspons@gmail.com", role = c("aut", "cre"),
comment = c(ORCID = "0000-0003-2286-8727")),
Expand Down
1 change: 1 addition & 0 deletions NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
## Breaking changes

- `getbb()` throws a warning instead of an error for empty results and return the (empty) result with the expected type according to `format_out` parameter (#394).
- Timestamp in metadata has a POSIXct time. Before it was character with a non-standard locale dependent date format (#416).

## Major changes

Expand Down
7 changes: 2 additions & 5 deletions R/get-osmdata.R
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ timestamp_fmt_iso8601 <- "%Y-%m-%dT%H:%M:%SZ" # ISO 8601. Z indicates tz = "UTC"
#'
#' @param doc OSM XML document. If missing, `Sys.time()` is used.
#'
#' @return An R timestamp object
#' @return A POSIXct timestamp
#'
#' @note This defines the timestamp format for \pkg{osmdata} objects, which
#' includes months as text to ensure umambiguous timestamps
Expand All @@ -28,10 +28,7 @@ get_timestamp <- function (doc) {
tstmp <- Sys.time ()
}

## TODO: avoid a non-standard date string, return a POSIXct value
out <- paste ("[", format (tstmp, format = "%a %e %b %Y %T"), "]")
out <- gsub (" ", " ", out) # remove extra space in %e for single digit days
out <- gsub ("\\.", "\\\\.", out) # Escape dots
tstmp
}


Expand Down
15 changes: 15 additions & 0 deletions tests/testthat/test-osmdata.R
Original file line number Diff line number Diff line change
Expand Up @@ -284,6 +284,10 @@ test_that ("make_query", {
})
)
expect_equal (doc, doc2)
timestamp <- as.POSIXct (
xml2::xml_attr (xml2::xml_child (doc, "meta"), attr = "osm_base"),
tz = "UTC"
)


res <- with_mock_dir ("mock_osm_sp", {
Expand All @@ -293,11 +297,14 @@ test_that ("make_query", {
expect_silent (
expect_warning (res <- osmdata_sp (qry, doc), "Deprecated")
)
expect_identical (res$meta$timestamp, timestamp)
expect_message (print (res), "Object of class 'osmdata' with")
expect_silent (expect_warning (res <- osmdata_sp (qry, "junk.osm"), "Deprecated"))
expect_identical (res$meta$timestamp, timestamp)
expect_message (
expect_warning (res <- osmdata_sp (qry, "junk.osm", quiet = FALSE), "Deprecated")
)
expect_identical (res$meta$timestamp, timestamp)

expect_s3_class (res, "osmdata")
nms <- c (
Expand All @@ -309,14 +316,18 @@ test_that ("make_query", {
nms <- c ("timestamp", "OSM_version", "overpass_version")
expect_named (res$meta, expected = nms)


res <- with_mock_dir ("mock_osm_sf", {
osmdata_sf (qry)
})
expect_identical (res$meta$timestamp, timestamp)
expect_message (print (res), "Object of class 'osmdata' with")
expect_silent (res <- osmdata_sf (qry, doc))
expect_identical (res$meta$timestamp, timestamp)
expect_message (print (res), "Object of class 'osmdata' with")
expect_silent (res <- osmdata_sf (qry, "junk.osm"))
expect_message (res <- osmdata_sf (qry, "junk.osm", quiet = FALSE))
expect_identical (res$meta$timestamp, timestamp)
expect_s3_class (res, "osmdata")
nms <- c (
"bbox", "overpass_call", "meta", "osm_points",
Expand All @@ -325,14 +336,18 @@ test_that ("make_query", {
)
expect_named (res, expected = nms, ignore.order = FALSE)


res <- with_mock_dir ("mock_osm_df", {
osmdata_data_frame (qry)
})
expect_s3_class (res, "data.frame")
expect_identical (attr (res, "meta")$timestamp, timestamp)
expect_silent (res <- osmdata_data_frame (qry, doc))
expect_s3_class (res, "data.frame")
expect_identical (attr (res, "meta")$timestamp, timestamp)
expect_silent (res <- osmdata_data_frame (qry, "junk.osm"))
expect_message (res <- osmdata_data_frame (qry, "junk.osm", quiet = FALSE))
expect_identical (attr (res, "meta")$timestamp, timestamp)

nms <- c (
"names", "row.names", "class", "bbox", "overpass_call", "meta"
Expand Down
Loading