单元测试xts无行

问题描述:

这是一个包testthat中的错误? 我希望x始终与x完全相同......但我得到一个错误。单元测试xts无行

x = structure(logical(0), index = structure(numeric(0), tzone = "", tclass = c("POSIXct", "POSIXt")), 
    .indexCLASS = c("POSIXct", "POSIXt"), tclass = c("POSIXct", "POSIXt"), .indexTZ = "", tzone = "", 
    class = c("xts", "zoo"), .Dim = c(0L, 4L), .Dimnames = list(NULL, c("F", "G", "H", "J"))) 
testthat::expect_equivalent(x,x)  
> Error in NextMethod(.Generic) : binary operation on non-conformable arrays 

请注意,我有testthat版本1.0.2

+0

也许更新软件包?我在这里没有看到问题 – Raad

+0

这并不完全清楚你在问什么。 –

+0

@NBATrends你没有得到错误吗? (我更新了我的问题) – RockScience

如果你希望x相同的东西,你应该使用testthat::expect_identicaltestthat::expect_equivalent可能不适用于您的x对象,因为它正在测试零长度向量之间的等价关系,并且似乎遇到了问题。

这就是说,我不能用你的代码重现错误。这是我的sessionInfo输出。

R> sessionInfo() 
R version 3.3.1 (2016-06-21) 
Platform: x86_64-pc-linux-gnu (64-bit) 
Running under: Ubuntu 16.04.1 LTS 

locale: 
[1] LC_CTYPE=en_US.UTF-8  LC_NUMERIC=C    
[3] LC_TIME=en_US.UTF-8  LC_COLLATE=en_US.UTF-8  
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 
[7] LC_PAPER=en_US.UTF-8  LC_NAME=C     
[9] LC_ADDRESS=C    LC_TELEPHONE=C    
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C  

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods base  

loaded via a namespace (and not attached): 
[1] magrittr_1.5 R6_2.0.1  memoise_0.2.1 crayon_1.2.1 digest_0.6.8 
[6] testthat_1.0.2