Nothing
# Setup ----
f <- test_path("testdata", "single_sample.adat")
adat <- read_adat(f)
withr::local_options(list(usethis.quiet = TRUE)) # silence ui signalling
# Testing ----
test_that("`write_adat()` produces unchanged out -> in -> out", {
f_check <- tempfile("write-", fileext = ".adat")
true_lines <- readLines(f)
write_adat(adat, file = f_check)
test_lines <- readLines(f_check)
# certain lines are expected change:
# the *History lines in HEADER; CreatedBy & CreatedDate changes
test_lines <- grep("^!?Created[DB][ay]", test_lines,
invert = TRUE, value = TRUE)
true_lines <- grep("^!?Created[DB][ay]", true_lines,
invert = TRUE, value = TRUE)
expect_equal(true_lines, test_lines)
unlink(f_check)
})
test_that("`write_adat()` produces unchanged in -> out -> in", {
f_check <- tempfile("write-", fileext = ".adat")
write_adat(adat, file = f_check)
# some attributes are expected to be false:
# TABLE_BEGIN will shift due to CreatedBy & CreatedDate changes
expect_equal(read_adat(f_check), adat, ignore_attr = TRUE)
unlink(f_check)
})
test_that("`write_adat()` throws error when no file name is passed", {
expect_error(write_adat(adat), "Must provide output file name ...")
})
test_that("`write_adat()` throws warning when passing invalid file format", {
bad_ext <- tempfile("write-", fileext = ".txt")
if ( tolower(Sys.info()[["sysname"]]) == "windows" ) {
# path sep '\` on windows gets messy with the warning match
match <- "File extension is not `*.adat`"
} else {
match <- paste0(
"File extension is not `*.adat` ('", bad_ext, "'). ",
"Are you sure this is the correct file extension?"
)
}
expect_warning(write_adat(adat, file = bad_ext), match, fixed = TRUE)
unlink(bad_ext)
})
test_that("`write_adat()` shifts Col.Meta correctly when clinical data added/removed", {
# rm meta data
f_check <- tempfile("write-", fileext = ".adat")
short <- dplyr::select(head(adat),
SlideId, Subarray, SampleGroup,
seq.2182.54, seq.2190.55)
write_adat(short, file = f_check)
expect_equal(read_adat(f_check), short, ignore_attr = TRUE)
expect_equal(getMeta(short), getMeta(read_adat(f_check)))
unlink(f_check)
# add meta data
f_check2 <- tempfile("write-", fileext = ".adat")
long <- head(adat)
long$foo <- "bar"
write_adat(long, file = f_check2) # write_adat() re-orders meta to come 1st!
new <- read_adat(f_check2)
expect_equal(new[, getMeta(new)], long[, getMeta(long)], ignore_attr = TRUE)
expect_equal(new[, getAnalytes(new)], long[, getAnalytes(long)], ignore_attr = TRUE)
unlink(f_check2)
})
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.