context("Test: Expressed() ")
data(PhyloExpressionSetExample)
# adapted from: https://github.com/hadley/dplyr/blob/master/tests/testthat/test-arrange.r
equal_df <- function(df1, df2) {
rownames(df1) <- NULL
rownames(df2) <- NULL
isTRUE(all.equal(df1, df2))
}
nonStandardExpressionSet <- PhyloExpressionSetExample[, 2:9]
test_that("is.ExpressionSet() throughs error when no ExpressionSet is entered to Expressed()",
{
expect_error(
Expressed(ExpressionSet = nonStandardExpressionSet,
cut.off = 1000)
)
})
test_that("error occurs when wrong filter method is specified in Expressed()",
{
expect_error(
Expressed(TestExpressionSet_completePES, 1000, "m-set")
)
})
# a test set for a complete PhyloExpressionSet in ExpressionSet notation (standard)
TestExpressionSet_completePES <- PhyloExpressionSetExample[1:10, ]
test_that(
"correct rows are removed (filtered) from the count table. Method: 'const' and comparison : 'below'",
{
expect_true(equal_df(
Expressed(TestExpressionSet_completePES, 1000, "const"),
TestExpressionSet_completePES[-c(1, 3, 4, 6, 8, 9), ]
))
}
)
test_that(
"correct rows are removed (filtered) from the count table. Method: 'const' and comparison : 'above'",
{
expect_true(equal_df(
Expressed(
TestExpressionSet_completePES,
1000,
"const",
comparison = "above"
),
TestExpressionSet_completePES[c(6, 8, 9), ]
))
}
)
test_that(
"correct rows are removed (filtered) from the count table. Method: 'const' and comparison : 'both'",
{
expect_true(equal_df(
Expressed(
TestExpressionSet_completePES,
c(800, 2000),
"const",
comparison = "both"
),
TestExpressionSet_completePES[c(2, 3, 4, 7), ]
))
}
)
test_that("error occurs when no genes fulfill the threshold criteria: comparison = 'below'",
{
expect_error(
Expressed(
TestExpressionSet_completePES,
500,
"const",
comparison = "below"
),
"None of the genes fulfilles the threshold criteria. Please choose a less conservative threshold or filter method."
)
})
test_that("error occurs when no genes fulfill the threshold criteria: comparison = 'above'",
{
expect_error(
Expressed(
TestExpressionSet_completePES,
80000,
"const",
comparison = "above"
),
"None of the genes fulfilles the threshold criteria. Please choose a less conservative threshold or filter method."
)
})
test_that("error occurs when no genes fulfill the threshold criteria: comparison = 'both'",
{
expect_error(
Expressed(
TestExpressionSet_completePES,
c(1000, 1100),
"const",
comparison = "both"
),
"None of the genes fulfilles the threshold criteria. Please choose a less conservative threshold or filter method."
)
})
test_that(
"correct rows are removed (filtered) from the count table. Method: 'min-set'; comparison = 'below'",
{
expect_true(equal_df(
Expressed(
TestExpressionSet_completePES,
1000,
"min-set",
comparison = "below"
),
TestExpressionSet_completePES[-c(3, 6, 8, 9), ]
))
}
)
test_that(
"correct rows are removed (filtered) from the count table. Method: 'min-set'; comparison = 'above'",
{
expect_true(equal_df(
Expressed(
TestExpressionSet_completePES,
1000,
"min-set",
comparison = "above"
),
TestExpressionSet_completePES[c(3, 6, 8, 9), ]
))
}
)
test_that(
"correct rows are removed (filtered) from the count table. Method: 'min-set'; comparison = 'both'",
{
expect_true(equal_df(
Expressed(
TestExpressionSet_completePES,
c(800, 2000),
"min-set",
comparison = "both"
),
TestExpressionSet_completePES[c(1:4, 6, 7), ]
))
}
)
test_that(
"correct rows are removed (filtered) from the count table. Method: 'n-set'; comparison = 'below'",
{
expect_true(equal_df(
Expressed(
TestExpressionSet_completePES,
800,
"n-set",
comparison = "below",
n = 5
),
TestExpressionSet_completePES[-c(6, 8, 9), ]
))
}
)
test_that(
"correct rows are removed (filtered) from the count table. Method: 'n-set'; comparison = 'above'",
{
expect_true(equal_df(
Expressed(
TestExpressionSet_completePES,
2000,
"n-set",
comparison = "above",
n = 3
),
TestExpressionSet_completePES[c(1:4, 6:9), ]
))
}
)
test_that(
"correct rows are removed (filtered) from the count table. Method: 'n-set'; comparison = 'both'",
{
expect_true(equal_df(
Expressed(
TestExpressionSet_completePES,
c(900, 2000),
"n-set",
comparison = "both",
n = 4
),
TestExpressionSet_completePES[c(1, 2, 4, 7), ]
))
}
)
test_that(
"error occurs when n is larger than the number of available stages when choosing method = 'n-set'",
{
expect_error(
Expressed(TestExpressionSet_completePES, 800, "n-set", n = 8),
"n is larger than the number of available stages in your ExpressionSet..."
)
}
)
test_that("error occurs when method = 'n-set', but n = NULL", {
expect_error(
Expressed(TestExpressionSet_completePES, 800, "n-set"),
"Please specify the number of stages n for which expresssion levels need to be above the cutoff to be retained in the count table."
)
})
test_that("n-set with n = 4 computes the same values as min-set for 7 stages; comparison = 'below'",
{
expect_true(equal_df(
Expressed(
PhyloExpressionSetExample,
8000,
"n-set",
comparison = "below",
n = 4
),
Expressed(
PhyloExpressionSetExample,
8000,
"min-set",
comparison = "below"
)
))
})
test_that("n-set with n = 4 computes the same values as min-set for 7 stages; comparison = 'above'",
{
expect_true(equal_df(
Expressed(
PhyloExpressionSetExample,
2000,
"n-set",
comparison = "above",
n = 4
),
Expressed(
PhyloExpressionSetExample,
2000,
"min-set",
comparison = "above"
)
))
})
test_that("n-set with n = 4 computes the same values as min-set for 7 stages; comparison = 'both'",
{
expect_true(equal_df(
Expressed(
PhyloExpressionSetExample,
c(900, 2000),
"n-set",
comparison = "both",
n = 4
),
Expressed(
PhyloExpressionSetExample,
c(900, 2000),
"min-set",
comparison = "both"
)
))
})
test_that("n-set with n = 6 computes the same values as const; comparison = 'below'",
{
expect_true(equal_df(
Expressed(
PhyloExpressionSetExample,
2000,
"n-set",
comparison = "below",
n = 6
),
Expressed(PhyloExpressionSetExample, 2000, "const", comparison = "below")
))
})
test_that("n-set with n = 6 computes the same values as const; comparison = 'above'",
{
expect_true(equal_df(
Expressed(
PhyloExpressionSetExample,
8000,
"n-set",
comparison = "above",
n = 6
),
Expressed(PhyloExpressionSetExample, 8000, "const", comparison = "above")
))
})
test_that("n-set with n = 6 computes the same values as const; comparison = 'both'",
{
expect_true(equal_df(
Expressed(
PhyloExpressionSetExample,
c(900, 2000),
"n-set",
comparison = "both",
n = 6
),
Expressed(
PhyloExpressionSetExample,
c(900, 2000),
"const",
comparison = "both"
)
))
})
test_that("error occurs when only one cut.off is specified when selecting comparison = 'both'",
{
expect_error(
Expressed(
PhyloExpressionSetExample,
2000,
"n-set",
comparison = "both",
n = 6
),
"When choosing: comparison == 'both', the cut.off argument needs to store two cut.off values: lower-cut.off and upper-cut.off"
)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.