# R lesson 1: local acceptance test, version 1.3
required <- c("ucl-r-ders1-demo-v1.R", "ucl-r-ders1-alistirmalar-v1.R", "ucl-r-ders1-cozumler-v1.R")
missing <- required[!file.exists(required)]
if (length(missing)) stop("Missing files: ", paste(missing, collapse=", "))
invisible(lapply(required, function(x) parse(file=x)))
image_file <- tempfile(fileext=".pdf")
grDevices::pdf(image_file)
tryCatch({
  teacher <- new.env(parent=globalenv())
  sys.source(required[1], envir=teacher)
  stopifnot(nrow(teacher$class_data)==8L,
            ncol(teacher$class_data)==4L,
            isTRUE(all.equal(mean(teacher$class_data$quiz_score),65.25)),
            isTRUE(all.equal(mean(teacher$class_data$study_hours),3.375)))
  solutions <- new.env(parent=globalenv())
  sys.source(required[3], envir=solutions)
  learner <- new.env(parent=globalenv())
  sys.source(required[2], envir=learner)
  stopifnot(nrow(learner$class_data)==8L)
}, finally=grDevices::dev.off())
stopifnot(file.exists(image_file),file.info(image_file)$size>0)
unlink(image_file)
cat("LESSON 1 ACCEPTANCE TEST PASS\n")
