context("FFD")
## sample data
# 11 years of data from highland meadows
data('HHM', package = 'sharpshootR')
x.ffd <- FFD(HHM, returnDailyPr = TRUE, frostTemp=32)
## tests
test_that("FFD works as expected", {
# basic structure of a result
expect_equal(names(x.ffd), c('summary', 'fm', 'Pr.frost'))
expect_true(inherits(x.ffd, 'list'))
expect_true(inherits(x.ffd$summary, 'data.frame'))
expect_true(inherits(x.ffd$fm, 'matrix'))
expect_true(length(dim(x.ffd$fm)) == 2)
expect_true(inherits(x.ffd$Pr.frost, 'numeric'))
expect_true(length(x.ffd$Pr.frost) == 366)
})
test_that("FFD results are correct", {
## TODO: test on paper
## note: different OS will give +/- 1 day, expand fuzz factor via tolerance
# assuming that calculation is correct, looks right
expect_equal(x.ffd$summary$ffd.50, 80, tolerance=1)
expect_equal(x.ffd$summary$ffd.80, 70, tolerance=1)
expect_equal(x.ffd$summary$ffd.90, 60, tolerance=1)
expect_equal(x.ffd$summary$spring.50, 165, tolerance=1)
expect_equal(x.ffd$summary$spring.80, 168, tolerance=1)
expect_equal(x.ffd$summary$spring.90, 169, tolerance=1)
expect_equal(x.ffd$summary$fall.50, 245, tolerance=1)
expect_equal(x.ffd$summary$fall.80, 238, tolerance=1)
expect_equal(x.ffd$summary$fall.90, 228, tolerance=1)
expect_equal(x.ffd$summary$n.yrs, 6)
})
# TODO: test related functions
# .findFirstLastFrostDOY
# .makeFrostMatrix
# .frostFreePeriod
# .alignDOY
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.