# Unit tests for the data_writer test_that("the constructor properly saves the parameters", { # Create a data writer with default values results_dir <- "./test_results" villagers_file <- "my_villagers.csv" resources_file <- "my_resources.csv" writer <- data_writer$new(results_dir, villagers_file, resources_file) testthat::expect_equal(writer$results_directory, results_dir) testthat::expect_equal(writer$agent_filename, villagers_file) testthat::expect_equal(writer$resource_filename, resources_file) }) test_that("the default village states are properly saved to disk for an individual day", { # Create a data writer with default values writer <- data_writer$new("./test_results", "my_villagers.csv", "my_resources.csv") test_env <- readRDS("test-files/small_village_single_day.rds") state_to_write <- test_env$current_state writer$write(state_to_write, "test_village") # Read the data back agents <- read.csv("./test_results/test_village/my_villagers.csv") resources <- read.csv("./test_results/test_village/my_resources.csv") testthat::expect_equal(agents, state_to_write$agent_states) })