context("Function editArea")
sapply(studies, function(study) {
setup_study(study, sourcedir)
opts <- antaresRead::setSimulationPath(studyPath, "input")
expect_error(editArea("azerty", opts = opts))
editArea("a", opts = opts)
editArea("a", localization = c(1, 1), opts = opts)
color_loc_ini <- readIniFile(file.path(studyPath, "input", "areas", "a", "ui.ini"))
##Edit position
expect_true(color_loc_ini$layerX$`0` == 1)
expect_true(color_loc_ini$layerY$`0` == 1)
expect_true(color_loc_ini$ui$x == 1)
expect_true(color_loc_ini$ui$y == 1)
## Edit color
editArea("a", color = grDevices::rgb(230, 108, 44, max = 255), opts = opts)
color_loc_ini <- readIniFile(file.path(studyPath, "input", "areas", "a", "ui.ini"))
expect_true(color_loc_ini$layerColor$`0` == "230, 108, 44")
expect_true(color_loc_ini$ui$color_r == 230)
expect_true(color_loc_ini$ui$color_g == 108)
expect_true(color_loc_ini$ui$color_b == 44)
expect_true(color_loc_ini$layerColor$`0` == "230, 108, 44")
# remove temporary study
unlink(x = file.path(pathstd, "test_case"), recursive = TRUE)
})
# Edit spilledenergycost and unserverdenergycost ----
test_that("Edit spilledenergycost and unserverdenergycost", {
ant_version <- "8.2.0"
st_test <- paste0("my_study_820_", paste0(sample(letters,5),collapse = ""))
suppressWarnings(opts <- createStudy(path = pathstd, study_name = st_test, antares_version = ant_version))
nb_areas <- 5
ids_areas <- seq(1,nb_areas)
my_areas <- paste0("zone",ids_areas)
lapply(my_areas, FUN = function(area){createArea(name = area, opts = simOptions())})
zone_test <- "zone1"
inputPath <- opts$inputPath
thermal_areas_path <- file.path(inputPath, "thermal", "areas.ini")
area_optimization_path <- file.path(inputPath, "areas", zone_test, "optimization.ini")
# spilledenergycost - unserverdenergycost
new_spilledenergycost <- 123
new_unserverdenergycost <- 456
editArea(name = zone_test,
nodalOptimization = list("spilledenergycost" = new_spilledenergycost,
"unserverdenergycost" = new_unserverdenergycost
),
opts = antaresRead::simOptions()
)
final_content <- readIniFile(file = thermal_areas_path)
expect_equal(final_content[["spilledenergycost"]][[zone_test]], new_spilledenergycost)
expect_equal(final_content[["unserverdenergycost"]][[zone_test]], new_unserverdenergycost)
# spilledenergycost
new_spilledenergycost <- 789
editArea(name = zone_test,
nodalOptimization = list("spilledenergycost" = new_spilledenergycost),
opts = antaresRead::simOptions()
)
final_content <- readIniFile(file = thermal_areas_path)
expect_equal(final_content[["spilledenergycost"]][[zone_test]], new_spilledenergycost)
expect_equal(final_content[["unserverdenergycost"]][[zone_test]], new_unserverdenergycost)
# unserverdenergycost
new_unserverdenergycost <- 695
editArea(name = zone_test,
nodalOptimization = list("unserverdenergycost" = new_unserverdenergycost),
opts = antaresRead::simOptions()
)
final_content <- readIniFile(file = thermal_areas_path)
expect_equal(final_content[["spilledenergycost"]][[zone_test]], new_spilledenergycost)
expect_equal(final_content[["unserverdenergycost"]][[zone_test]], new_unserverdenergycost)
# spilledenergycost - unserverdenergycost - non-dispatchable-power
new_spilledenergycost <- 145
new_unserverdenergycost <- 638
new_non_dispatchable_power <- FALSE
editArea(name = zone_test,
nodalOptimization = list("non-dispatchable-power" = new_non_dispatchable_power,
"unserverdenergycost" = new_unserverdenergycost,
"spilledenergycost" = new_spilledenergycost
),
opts = antaresRead::simOptions()
)
final_content_areas <- readIniFile(file = thermal_areas_path)
final_content_optimization <- readIniFile(file = area_optimization_path)
expect_equal(final_content_areas[["spilledenergycost"]][[zone_test]], new_spilledenergycost)
expect_equal(final_content_areas[["unserverdenergycost"]][[zone_test]], new_unserverdenergycost)
expect_equal(final_content_optimization[["nodal optimization"]][["non-dispatchable-power"]], new_non_dispatchable_power)
# error without input/thermal/areas.ini
unlink(x = thermal_areas_path)
new_spilledenergycost <- 14
expect_error(editArea(name = zone_test,
nodalOptimization = list("spilledenergycost" = new_spilledenergycost),
opts = antaresRead::simOptions()
),
regexp = "File input/thermal/areas.ini does not exist."
)
unlink(x = opts$studyPath, recursive = TRUE)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.