From 396ba6c42252426a132be56b9f417786a1f276e3 Mon Sep 17 00:00:00 2001 From: Ranke Johannes Date: Tue, 13 Aug 2024 10:58:16 +0200 Subject: Support units in drift, runoff und sediment PECs --- tests/testthat/test_PEC_sw_drift.R | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) (limited to 'tests/testthat/test_PEC_sw_drift.R') diff --git a/tests/testthat/test_PEC_sw_drift.R b/tests/testthat/test_PEC_sw_drift.R index a0972eb..6177aef 100644 --- a/tests/testthat/test_PEC_sw_drift.R +++ b/tests/testthat/test_PEC_sw_drift.R @@ -1,22 +1,32 @@ library(pfm) +library(testthat) +library(units) context("Simple PEC surface water calculations with drift entry") test_that("PEC_sw_drift gives the same results as the CRD PEC calculator", { # One application of 30 g/ha to field crops calculated with UK PEC calculator published by CRD - expect_equal(round(PEC_sw_drift(30), 3), - c('1 m' = 0.277, '5 m' = 0.057, '10 m' = 0.029, '20 m' = 0.015)) + expect_equal( + round(PEC_sw_drift(30), 3), + set_units(c('1 m' = 0.277, '5 m' = 0.057, '10 m' = 0.029, '20 m' = 0.015), "\u00B5g/L")) # 7 applications of 30 g/ha to field crops calculated with UK PEC calculator, initial PEC - expect_equal(round(PEC_sw_drift(30, 7), 3), - c('1 m' = 0.161, '5 m' = 0.033, '10 m' = 0.017, '20 m' = 0.008)) + expect_equal( + round(PEC_sw_drift(30, 7), 3), + set_units(c('1 m' = 0.161, '5 m' = 0.033, '10 m' = 0.017, '20 m' = 0.008), "\u00B5g/L")) # 4 applications of 30 g/ha to late fruit crops calculated with UK PEC # calculator published by CRD. CRD uses different drift values from SANCO aquatic # guidance), except for 50 m pfm_30_4_obst_spaet <- round(PEC_sw_drift(30, 4, crop_group_JKI = "Obstbau spaet", distances = c(3, 20, 50)), 3) - crd_30_4_obst_spaet <- c('3 m' = 1.101, '20 m' = 0.080, '50 m' = 0.013) + crd_30_4_obst_spaet <- set_units(c('3 m' = 1.101, '20 m' = 0.080, '50 m' = 0.013), "µg/L") expect_equal(pfm_30_4_obst_spaet[3], crd_30_4_obst_spaet[3]) + + # Synops scenario with 45 m angle. Mean width is 100 cm - (2 * 15 cm). + expect_equal( + PEC_sw_drift(100) * 100/70, + PEC_sw_drift(100, side_angle = 45) + ) }) test_that("The Rautmann formula is correctly implemented", { -- cgit v1.2.1