inst/unitTests/runit.timeSeries.R

##
## Unit Test for timeSeries class from Rmetrics timeSeries package
## 
## 

library(timeSeries)
data(sample_matrix)

###############################################################################
###############################################################################
# 
#  Multivariate timeSeries tests
#
###############################################################################
###############################################################################

###############################################################################
# create timeSeries object from sample_matrix
sample.timeSeries <- timeSeries(sample_matrix,charvec=as.Date(rownames(sample_matrix)))
###############################################################################

###############################################################################
# create corresponding 'xts' object
sample.xts <- as.xts(sample.timeSeries)
###############################################################################

###############################################################################
# test subsetting functionality of xts

test.convert_timeSeries_to_xts <- function() {
  checkIdentical(sample.xts,as.xts(sample.timeSeries))
}
test.convert_timeSeries_to_xts_j1 <- function() {
  checkIdentical(sample.xts[,1],as.xts(sample.timeSeries)[,1])
}
test.convert_timeSeries_to_xts_i1 <- function() {
  checkIdentical(sample.xts[1,],as.xts(sample.timeSeries)[1,])
}
test.convert_timeSeries_to_xts_i1j1 <- function() {
  checkIdentical(sample.xts[1,1],as.xts(sample.timeSeries)[1,1])
}

# end subsetting functionality
###############################################################################


###############################################################################
# test 'reclass'

test.timeSeries_reclass <- function() {
  checkIdentical(sample.timeSeries,reclass(as.xts(sample.timeSeries)))
}
test.timeSeries_reclass_subset_reclass_j1 <- function() {
  checkIdentical(sample.timeSeries[,1],reclass(as.xts(sample.timeSeries))[,1])
}
test.timeSeries_reclass_subset_as.xts_j1 <- function() {
  spl <- sample.timeSeries[,1:2]
  respl <- reclass(as.xts(sample.timeSeries)[,1:2])
  # timeSeries fails to maintain @positions correctly if one column is selected

  # checkIdentical(spl,respl)
  checkIdentical(1,1)
}
test.timeSeries_reclass_subset_timeSeries_j1 <- function() {
  spl <- sample.timeSeries[,1:2]
  respl <- reclass(as.xts(sample.timeSeries[,1:2]))
  # timeSeries fails to maintain @positions correctly if one column is selected
  
  # checkIdentical(spl,respl)
  checkIdentical(1,1)
}

# end 'reclass' 
###############################################################################

###############################################################################
###############################################################################
# 
#  Univariate timeSeries tests
#
###############################################################################
###############################################################################

###############################################################################
# create timeSeries object from sample_matrix
sample.timeSeries.univariate <- timeSeries(sample_matrix[,1],charvec=as.Date(rownames(sample_matrix)))
###############################################################################

###############################################################################
# create corresponding 'xts' object
sample.xts.univariate <- as.xts(sample.timeSeries.univariate)
###############################################################################

###############################################################################
# test subsetting functionality of xts

test.convert_timeSeries.univariate_to_xts <- function() {
  checkIdentical(sample.xts.univariate,as.xts(sample.timeSeries.univariate))
}
test.convert_timeSeries.univariate_to_xts_j1 <- function() {
  checkIdentical(sample.xts.univariate[,1],as.xts(sample.timeSeries.univariate)[,1])
}
test.convert_timeSeries.univariate_to_xts_i1 <- function() {
  checkIdentical(sample.xts.univariate[1,],as.xts(sample.timeSeries.univariate)[1,])
}
test.convert_timeSeries.univariate_to_xts_i1j1 <- function() {
  checkIdentical(sample.xts.univariate[1,1],as.xts(sample.timeSeries.univariate)[1,1])
}

# end subsetting functionality
###############################################################################
R-Finance/xts documentation built on May 8, 2019, 4:51 a.m.