tests/testthat/test-features.R

library(testthat)
context("features")
library(penaltyLearning)

if(requireNamespace("neuroblastoma")){
  data(neuroblastoma, package="neuroblastoma")
  one <- subset(neuroblastoma$profiles, profile.id=="1" & chromosome=="1")
  f.vec <- featureVector(one$logratio)
  test_that("median absolute difference computed", {
    expect_equal(
      f.vec[["diff abs.identity.quantile.50%"]],
      median(abs(diff(one$logratio))))
  })
  test_that("error for data.frame", {
    expect_error({
      featureVector(one)
    }, "data.vec must be a numeric data sequence with at least two elements, all of which are finite (not missing)", fixed=TRUE)
  })
  two <- subset(neuroblastoma$profiles, profile.id=="2" & chromosome=="2")
  f2 <- featureVector(two$logratio)
  test_that("feature vectors are the same size", {
    expect_equal(length(f2), length(f.vec))
  })
  three <- subset(neuroblastoma$profiles, profile.id %in% 1:3)
  f.mat <- featureMatrix(three, c("profile.id", "chromosome"), "logratio")
  test_that("feature matrix has same columns as vector", {
    expect_identical(colnames(f.mat), names(f2))
  })
  u3 <- with(three, unique(paste(profile.id, chromosome)))
  test_that("feature matrix has expected row names", {
    expect_identical(rownames(f.mat), u3)
  })
}

Try the penaltyLearning package in your browser

Any scripts or data that you put into this service are public.

penaltyLearning documentation built on Sept. 8, 2023, 5:47 p.m.