diff options
Diffstat (limited to 'tests/testthat/test_chent.R')
-rw-r--r-- | tests/testthat/test_chent.R | 30 |
1 files changed, 11 insertions, 19 deletions
diff --git a/tests/testthat/test_chent.R b/tests/testthat/test_chent.R index 4546423..1f4a186 100644 --- a/tests/testthat/test_chent.R +++ b/tests/testthat/test_chent.R @@ -1,29 +1,21 @@ -context("Generation of chent objects") - # Check if we can use RDKit skip_if_no_rdkit <- function() { if (!chents:::rdkit_available) skip("RDKit is not available via reticulate") } -oct <- chent$new("1-octanol", smiles = "CCCCCCCCO", rdkit = FALSE, pubchem = FALSE, chyaml = FALSE) - -test_that("We can initialise an object only with identifier and SMILES code", { +test_that("We can initialise an object and add information", { + oct <- chent$new("1-octanol", smiles = "CCCCCCCCO", rdkit = FALSE, pubchem = FALSE, chyaml = FALSE) expect_equal(oct$identifier, c(X1.octanol = "1-octanol")) # The name of the identifier is generated using make.names() expect_equal(oct$inchikey, structure(NA, source = "user")) expect_equal(oct$smiles, c(user = "CCCCCCCCO")) -}) - -test_that("We can generate a chent object from SMILES using RDKit", { - skip_if_no_rdkit() - oct$get_rdkit() - expect_equivalent(round(oct$mw, 2), 130.23) -}) - -test_that("We can add information retrieved from PubChem via webchem", { - expect_warning(oct$try_pubchem(), "Overwriting uninitialized InChIKey") - expect_equivalent(round(oct$mw, 2), 130.23) - ik = "KBPLFHHGFOOTCA-UHFFFAOYSA-N" - attr(ik, "source") <- "pubchem" - expect_equal(oct$inchikey, ik) + oct$try_pubchem() |> + expect_message("Querying PubChem for name 1-octanol") |> + expect_warning("Overwriting uninitialized InChIKey") + expect_equal(oct$inchikey, structure("KBPLFHHGFOOTCA-UHFFFAOYSA-N", source = "pubchem")) expect_equal(oct$smiles[["PubChem"]], "CCCCCCCCO") + skip_if_no_rdkit() + oct$get_rdkit() |> + expect_message("Get chemical information from RDKit using user SMILES") + expect_equal(round(oct$mw, 2), structure(130.23, source = "pubchem")) + expect_snapshot(print(oct)) }) |