Nothing
test_that("Monosaccharides are correctly parsed", {
expect_mono <- function(x, mono) {
structure <- parse_iupac_short(x)
graph <- glyrepr::get_structure_graphs(structure)
expect_equal(igraph::V(graph)$mono, mono)
}
expect_mono("Glca-", "Glc")
expect_mono("GlcNAcb-", "GlcNAc")
expect_mono("GlcAa-", "GlcA")
expect_mono("GlcNa-", "GlcN")
expect_mono("Neu5Aca-", "Neu5Ac")
})
test_that("furanose monosaccharides are correctly parsed", {
furanose <- unname(furanose_monosaccharide_map())
anomer_pos <- glyrepr::get_anomer_pos(furanose)
parsed <- parse_iupac_short(paste0(furanose, "?-"))
expect_identical(
as.character(parsed),
paste0(furanose, "(?", anomer_pos, "-")
)
})
test_that("generic monosaccharides are parsed correctly", {
expect_mono <- function(x, mono) {
structure <- parse_iupac_short(x)
graph <- glyrepr::get_structure_graphs(structure)
expect_equal(igraph::V(graph)$mono, mono)
}
expect_mono("Hexa-", "Hex")
expect_mono("HexNAca-", "HexNAc")
})
test_that("substituents are correctly parsed", {
expect_sub <- function(x, sub) {
structure <- parse_iupac_short(x)
graph <- glyrepr::get_structure_graphs(structure)
expect_equal(igraph::V(graph)$sub, sub)
}
expect_sub("Glca-", "")
expect_sub("GlcNAcb-", "")
expect_sub("GlcAa-", "")
expect_sub("GlcNa-", "")
expect_sub("Neu5Aca-", "")
expect_sub("Glc3Mea-", "3Me")
expect_sub("GlcNAc4Sb-", "4S")
expect_sub("Neu5Ac9Aca-", "9Ac")
expect_sub("Glc?Mea-", "?Me")
expect_sub("Glc3Me6Sa-", "3Me,6S")
})
test_that("anomers are correctly parsed", {
expect_anomer <- function(x, anomer) {
structure <- parse_iupac_short(x)
graph <- glyrepr::get_structure_graphs(structure)
expect_equal(graph$anomer, anomer)
}
expect_anomer("Glca-", "a1")
expect_anomer("GlcAa-", "a1")
expect_anomer("GlcAb-", "b1")
expect_anomer("Glc?-", "?1")
expect_anomer("Neu5Aca-", "a2")
})
test_that("linkages are correctly parsed", {
expect_linkages <- function(x, linkages) {
structure <- parse_iupac_short(x)
graph <- glyrepr::get_structure_graphs(structure)
expect_equal(igraph::E(graph)$linkage, linkages)
}
expect_linkages("Mana3Mana-", "a1-3")
expect_linkages("GlcNAcb4GlcNAcb-", "b1-4")
expect_linkages("Neu5Aca3Galb-", "a2-3")
expect_linkages("Glc?3Glc?-", "?1-3")
expect_linkages("Neu5Aca?Gal?-", "a2-?")
expect_linkages("Gala3/4GalNAca-", "a1-3/4")
})
test_that("parse_iupac_short works for a complex example", {
x <- "Neu5Aca3Galb4GlcNAcb2Mana3(Neu5Aca3Galb4GlcNAcb2Mana6)Manb4GlcNAcb4(Fuca6)GlcNAcb-"
expect_snapshot(parse_iupac_short(x))
})
test_that("parse_iupac_short works for a complex example with multiple substituents", {
x <- "Glc3Me6Sa3Mana-"
structure <- parse_iupac_short(x)
expect_equal(as.character(structure), "Glc3Me6S(a1-3)Man(a1-")
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.