context("mkinmod model generation and printing") test_that("mkinmod stops to prevent and/or explain user errors", { expect_error(mkinmod(compound_x = mkinsub("SFO", to = "compound_x_y"), compound_x_y = mkinsub("SFO")), "variable names can not contain each other") expect_error(mkinmod(compound_to_x = mkinsub("SFO")), "can not contain _to_") expect_error(mkinmod(sink = mkinsub("SFO")), "Naming") expect_error(mkinmod(parent = mkinsub("SFO"), use_of_ff = "foo")) expect_error(mkinmod(parent = mkinsub("foo"))) expect_error(mkinmod(parent = mkinsub("SFO", "m1"), m1 = mkinsub("FOMC")), "only implemented for the first compartment") expect_error(mkinmod(parent = mkinsub("IORE", "m1"), m1 = mkinsub("SFO"), use_of_ff = "min"), "only supported with formation fractions") }) test_that("Printing mkinmod models is reproducible", { m_test <- mkinmod(parent = mkinsub("SFO", "m1"), m1 = mkinsub("SFO"), quiet = TRUE) m_test$cf <- NULL # Remove to make test robust against missing gcc expect_known_output(print(m_test), file = "SFO_SFO_printed.txt") })