|
1 | 1 | #!/usr/bin/env r |
2 | 2 | # -*- mode: R; tab-width: 4; -*- |
3 | 3 | # |
4 | | -# Copyright (C) 2010 - 2013 Dirk Eddelbuettel and Romain Francois |
| 4 | +# Copyright (C) 2010 - 2016 Dirk Eddelbuettel and Romain Francois |
5 | 5 | # |
6 | 6 | # This file is part of Rcpp. |
7 | 7 | # |
@@ -163,9 +163,23 @@ if (.runThisTest) { |
163 | 163 | fun <- DatetimeVector_ctor |
164 | 164 | now <- Sys.time() |
165 | 165 | checkEquals(fun(now + (0:4)*60), now+(0:4)*60, msg = "Datetime.ctor.sequence") |
166 | | - vec <- c(now, NA, NaN, Inf, now+2.345) |
167 | | - posixtNA <- as.POSIXct(NA, origin="1970-01-01") |
168 | | - checkEquals(fun(vec), c(now, rep(posixtNA, 3), now+2.345), msg = "Datetime.ctor.set") |
| 166 | + if (Rcpp:::capabilities()[["new date(time) vectors"]]) { |
| 167 | + vec <- c(now, NA, NaN, now+2.345) |
| 168 | + posixtNA <- as.POSIXct(NA, origin="1970-01-01") |
| 169 | + checkEquals(fun(vec), c(now, rep(posixtNA, 2), now+2.345), msg = "Datetime.ctor.NA.NaN.set") |
| 170 | + vec <- c(now, -Inf, Inf, now+2.345) |
| 171 | + checkEquals(sum(is.finite(fun(vec))), 2, msg = "Datetime.ctor.Inf.finite.set") |
| 172 | + checkEquals(sum(is.infinite(fun(vec))), 2, msg = "Datetime.ctor.Inf.notfinite.set") |
| 173 | + vec <- c(now, NA, NaN, Inf, now+2.345) |
| 174 | + posixtNA <- as.POSIXct(NA, origin="1970-01-01") |
| 175 | + posixtInf <- as.POSIXct(Inf, origin="1970-01-01") |
| 176 | + checkEquals(fun(vec), c(now, rep(posixtNA, 2), posixtInf, now+2.345), |
| 177 | + msg = "Datetime.ctor.NA.NaN.Inf.set") |
| 178 | + } else { |
| 179 | + vec <- c(now, NA, NaN, Inf, now+2.345) |
| 180 | + posixtNA <- as.POSIXct(NA, origin="1970-01-01") |
| 181 | + checkEquals(fun(vec), c(now, rep(posixtNA, 3), now+2.345), msg = "Datetime.ctor.NA.NaN.Inf.set") |
| 182 | + } |
169 | 183 | } |
170 | 184 |
|
171 | 185 | } |
0 commit comments