X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=pkg%2Ftests%2Ftestthat%2Ftest.dateIndexToInteger.R;h=d3c014ac91c9f6d910fde5c9ff5c191213e18eeb;hb=ff5df8e310b73883565761ab4b1aa5a0672e9f27;hp=9786097d3385aa6579a942083be1d03a301168b8;hpb=a65907cc939a5fe419613d3ba555b1d1c1af97d3;p=talweg.git diff --git a/pkg/tests/testthat/test.dateIndexToInteger.R b/pkg/tests/testthat/test.dateIndexToInteger.R index 9786097..d3c014a 100644 --- a/pkg/tests/testthat/test.dateIndexToInteger.R +++ b/pkg/tests/testthat/test.dateIndexToInteger.R @@ -1,26 +1,76 @@ -context("Check that dateIndexToInteger behaves as expected") +context("Check that date <--> integer indexes conversions work") -test_that("integer index matches date in data", -{ +ts_data = system.file("testdata","ts_test.csv",package="talweg") +exo_data = system.file("testdata","exo_test.csv",package="talweg") +data0 <<- getData(ts_data, exo_data, input_tz="GMT", date_format="%Y-%m-%d %H:%M", + working_tz="GMT", predict_at=0, limit=Inf) +data7 <<- getData(ts_data, exo_data, input_tz="GMT", date_format="%Y-%m-%d %H:%M", + working_tz="GMT", predict_at=7, limit=Inf) +test_that("dateIndexToInteger", +{ + expect_identical( dateIndexToInteger("2007-01-01",data0), 1 ) + expect_identical( dateIndexToInteger("2007-01-02",data0), 2 ) + expect_identical( dateIndexToInteger("2007-02-01",data0), 32 ) + expect_identical( dateIndexToInteger("2007-03-01",data0), 60 ) + expect_identical( dateIndexToInteger("2007-05-31",data0), 151 ) + expect_identical( dateIndexToInteger("2007-01-01",data7), 1 ) + expect_identical( dateIndexToInteger("2007-01-02",data7), 2 ) + expect_identical( dateIndexToInteger("2007-02-01",data7), 32 ) + expect_identical( dateIndexToInteger("2007-03-01",data7), 60 ) + expect_identical( dateIndexToInteger("2007-05-31",data7), 151 ) +}) -#TODO: with and without shift at origin (so series values at least forst ones are required) +test_that("integerIndexToDate", +{ + expect_identical( integerIndexToDate( 1,data0), as.Date("2007-01-01") ) + expect_identical( integerIndexToDate( 2,data0), as.Date("2007-01-02") ) + expect_identical( integerIndexToDate( 32,data0), as.Date("2007-02-01") ) + expect_identical( integerIndexToDate( 60,data0), as.Date("2007-03-01") ) + expect_identical( integerIndexToDate(151,data0), as.Date("2007-05-31") ) + expect_identical( integerIndexToDate( 1,data7), as.Date("2007-01-01") ) + expect_identical( integerIndexToDate( 2,data7), as.Date("2007-01-02") ) + expect_identical( integerIndexToDate( 32,data7), as.Date("2007-02-01") ) + expect_identical( integerIndexToDate( 60,data7), as.Date("2007-03-01") ) + expect_identical( integerIndexToDate(151,data7), as.Date("2007-05-31") ) +}) - n = 1500 - series = list() - for (i in seq_len(n)) - { - index = (i%%3) + 1 - level = mean(s[[index]]) - serie = s[[index]] - level + rnorm(L,sd=0.05) - # 10 series with NAs for index 2 - if (index == 2 && i >= 60 && i<= 90) - serie[sample(seq_len(L),1)] = NA - series[[i]] = list("level"=level,"serie"=serie) #no need for more :: si : time !!! - } - data = new("Data", data=series) +test_that("dateIndexToInteger(integerIndexToDate) == Id", +{ + expect_identical( dateIndexToInteger(integerIndexToDate( 1,data0),data0), 1 ) + expect_identical( dateIndexToInteger(integerIndexToDate( 1,data7),data7), 1 ) + expect_identical( dateIndexToInteger(integerIndexToDate( 2,data0),data0), 2 ) + expect_identical( dateIndexToInteger(integerIndexToDate( 2,data7),data7), 2 ) + expect_identical( dateIndexToInteger(integerIndexToDate( 32,data0),data0), 32 ) + expect_identical( dateIndexToInteger(integerIndexToDate( 32,data7),data7), 32 ) + expect_identical( dateIndexToInteger(integerIndexToDate( 60,data0),data0), 60 ) + expect_identical( dateIndexToInteger(integerIndexToDate( 60,data7),data7), 60 ) + expect_identical( dateIndexToInteger(integerIndexToDate(151,data0),data0), 151 ) + expect_identical( dateIndexToInteger(integerIndexToDate(151,data7),data7), 151 ) +}) - dateIndexToInteger = function(index, data) +test_that("integerIndexToDate(dateIndexToInteger) == Id", +{ + expect_identical( + integerIndexToDate(dateIndexToInteger("2007-01-01",data0),data0), as.Date("2007-01-01") ) + expect_identical( + integerIndexToDate(dateIndexToInteger("2007-01-01",data7),data7), as.Date("2007-01-01") ) + expect_identical( + integerIndexToDate(dateIndexToInteger("2007-01-02",data0),data0), as.Date("2007-01-02") ) + expect_identical( + integerIndexToDate(dateIndexToInteger("2007-01-02",data7),data7), as.Date("2007-01-02") ) + expect_identical( + integerIndexToDate(dateIndexToInteger("2007-02-01",data0),data0), as.Date("2007-02-01") ) + expect_identical( + integerIndexToDate(dateIndexToInteger("2007-02-01",data0),data0), as.Date("2007-02-01") ) + expect_identical( + integerIndexToDate(dateIndexToInteger("2007-03-01",data0),data0), as.Date("2007-03-01") ) + expect_identical( + integerIndexToDate(dateIndexToInteger("2007-03-01",data0),data0), as.Date("2007-03-01") ) + expect_identical( + integerIndexToDate(dateIndexToInteger("2007-05-31",data0),data0), as.Date("2007-05-31") ) + expect_identical( + integerIndexToDate(dateIndexToInteger("2007-05-31",data0),data0), as.Date("2007-05-31") ) })