--- a +++ b/tests/testthat/test-DIscBIO-CTCs-Binder-Part2.R @@ -0,0 +1,117 @@ +if (interactive()) { + # ======================================================== # + # Loading and rearranging files # + # ======================================================== # + + notebook_data_path <- system.file("notebook", package = "DIscBIO") + load(file.path(notebook_data_path, "SC.RData")) + load(file.path(notebook_data_path, "Ndata.RData")) + load(file.path(notebook_data_path, "expdata.RData")) + load(file.path(notebook_data_path, "DATAforDT.RData")) + + sc <- SC + sc@ndata <- Ndata + sc@expdata <- expdata + + rm(Ndata) + rm(expdata) + rm(SC) + + # ======================================================== # + # differential expression analysis # + # ======================================================== # + + context("Binder tests, part 2: Differential expression analysis") + + cdiff <- DEGanalysis2clust(sc, 4, quiet = TRUE, plot = FALSE) + + test_that("DEG analysis between 2 clusters", { + expect_equal( + object = head(cdiff[[1]])[, 1], + expected = c( + "ENSG00000008988", "ENSG00000010278", "ENSG00000034510", + "ENSG00000071082", "ENSG00000071127", "ENSG00000075624" + ) + ) + expect_equal( + object = head(cdiff[[1]])[, 2], + expected = c("RPS20", "CD9", "TMSB10", "RPL31", "WDR1", "ACTB") + ) + expect_equivalent( + object = as.character(head(cdiff[[2]])[1, ]), + expected = c( + "CL1 VS CL2", "CL2", "106", "Up-regulated-NameCL2inCL1VSCL2.csv", + "82", "Low-regulated-NameCL2inCL1VSCL2.csv" + ) + ) + expect_equal( + object = as.character(head(cdiff[[2]])[2, ]), + expected = c( + "CL1 VS CL2", "CL1", "106", "Low-regulated-NameCL1inCL1VSCL2.csv", + "82", "Up-regulated-NameCL1inCL1VSCL2.csv" + ) + ) + }) + + cdiffBinomial <- ClustDiffGenes(sc, 4, quiet = TRUE) + + test_that("Cluster differences", { + expect_equal( + object = head(cdiffBinomial[[1]])[, 1], + expected = c( + "ENSG00000001630", "ENSG00000002586", "ENSG00000003402", + "ENSG00000003436", "ENSG00000003756", "ENSG00000004059" + ) + ) + expect_equal( + object = head(cdiffBinomial[[1]])[, 2], + expected = c("CYP51A1", "CD99", "CFLAR", "TFPI", "RBM5", "ARF5") + ) + expect_equivalent( + object = as.character(head(cdiffBinomial[[2]])[1, ]), + expected = c( + "Cluster 1", "Remaining Clusters", "1052", "Up-DEG-cluster1.csv", + "678", "Down-DEG-cluster1.csv" + ) + ) + expect_equal( + object = as.character(head(cdiffBinomial[[2]])[2, ]), + expected = c( + "Cluster 2", "Remaining Clusters", "0", "Up-DEG-cluster2.csv", "1", + "Down-DEG-cluster2.csv" + ) + ) + }) + + + # ======================================================== # + # Decision trees # + # ======================================================== # + + context("Binder tests, part 2: Decision trees") + + j48dt <- J48DT(DATAforDT, plot = FALSE, quiet = TRUE) + rpartDT <- RpartDT(DATAforDT, plot = FALSE, quiet = TRUE) + + test_that("J48 trees", { + expect_true(is(summary(j48dt), "Weka_classifier_evaluation")) + expect_output(str(rpartDT), "List of 14") + }) + + # ======================================================== # + # Networking # + # ======================================================== # + + context("Binder tests, part 2: Networking") + + data <- cdiffBinomial[[1]][1:200, 2] # only the firat 200 genes + ppi <- suppressMessages(PPI(data)) + networking <- suppressMessages(NetAnalysis(ppi)) + + test_that("Networks", { + expect_gt(nrow(ppi), 1000) + expect_equal(ncol(ppi), 13) + expect_gt(nrow(networking), 150) + expect_equal(ncol(networking), 3) + }) +}