From 0035e63cdfbd47cf7e351620d3c3cba659ba5b51 Mon Sep 17 00:00:00 2001 From: Dorchies David <david.dorchies@inrae.fr> Date: Wed, 24 Mar 2021 11:02:38 +0100 Subject: [PATCH] feat(Lag): allow NAs in Qupstream - Correct bug on warning trigger in RunModel_Lag - Add test for warning in SImulation and no warning in calibration Refs #100 --- R/RunModel_Lag.R | 2 +- tests/testthat/test-RunModel_Lag.R | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/R/RunModel_Lag.R b/R/RunModel_Lag.R index e98e1b86..f1ed6a2c 100644 --- a/R/RunModel_Lag.R +++ b/R/RunModel_Lag.R @@ -84,7 +84,7 @@ RunModel_Lag <- function(InputsModel, RunOptions, Param) { Qupstream[1:LengthTs] * HUTRANS[2, upstream_basin] } # Warning for negative flows or NAs only in extended outputs - if(length(RunOptions$Outputs_Sim <3)) { + if(length(RunOptions$Outputs_Sim) > 2) { if (any(OutputsModel$Qsim[!is.na(OutputsModel$Qsim)] < 0)) { warning(length(which(OutputsModel$Qsim < 0)), " time steps with negative flow, set to zero.") OutputsModel$Qsim[OutputsModel$Qsim < 0] <- 0 diff --git a/tests/testthat/test-RunModel_Lag.R b/tests/testthat/test-RunModel_Lag.R index b3eca041..0432fa09 100644 --- a/tests/testthat/test-RunModel_Lag.R +++ b/tests/testthat/test-RunModel_Lag.R @@ -97,11 +97,17 @@ test_that("'Qupstream' contain NA values", { InputsModel = InputsModel, IndPeriod_Run = Ind_Run)) InputsModel$OutputsModel <- OutputsGR4JOnly - + # Warning with RunModel expect_warning( RunModel_Lag(InputsModel = InputsModel, RunOptions = RunOptions, Param = 1), regexp = "time steps with NA values" ) + # No warning during calibration + RunOptions$Outputs_Sim <- RunOptions$Outputs_Cal + expect_warning( + RunModel_Lag(InputsModel = InputsModel, RunOptions = RunOptions, Param = 1), + regexp = NA + ) }) test_that("Upstream basin with nil area should return same Qdown as GR4J alone", { -- GitLab