From 1eafa652977e0c62d82c912ba93ba784dc2b97d9 Mon Sep 17 00:00:00 2001
From: David <david.dorchies@inrae.fr>
Date: Thu, 27 Oct 2022 11:04:40 +0200
Subject: [PATCH] tests(Calibration): Add Diversion study case

Refs #95
---
 tests/testthat/test-Calibration.R | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/tests/testthat/test-Calibration.R b/tests/testthat/test-Calibration.R
index 8a27cb8..8ff1ccc 100644
--- a/tests/testthat/test-Calibration.R
+++ b/tests/testthat/test-Calibration.R
@@ -98,3 +98,29 @@ test_that("Calibration with regularization is OK", {
     )
   })
 })
+
+test_that("Calibration with Diversion works", {
+  n_div <- rbind(nodes,
+                 data.frame(id = "54029", down = "54002", length = 50, area = NA, model = "Diversion"))
+  g_div <- CreateGRiwrm(n_div)
+  Qmin = matrix(1E5, nrow = length(DatesR), ncol = 1)
+  colnames(Qmin) = "54029"
+  Qdiv <- -Qmin
+  IM_div <- CreateInputsModel(g_div, DatesR, Precip, PotEvap, Qobs = Qdiv, Qmin = Qmin)
+  RO_div <- setupRunOptions(IM_div)$RunOptions
+  P_div <- ParamMichel
+  P_div$`54002` <- c(1, ParamMichel$`54002`)
+  IC_div <- CreateInputsCrit(
+    InputsModel = IM_div,
+    RunOptions = RO_div,
+    Obs = Qobs[IndPeriod_Run,],
+  )
+  CO_div <- CreateCalibOptions(IM_div)
+  OC <- Calibration(
+    InputsModel = IM_div,
+    RunOptions = RO_div,
+    InputsCrit = IC_div,
+    CalibOptions = CO_div
+  )
+  expect_length(OC$`54002`$ParamFinalR, 5)
+})
-- 
GitLab