tests/testthat/test-symmetricPolynomial.R

test_that("Symmetric polynomial", {
  e1 <- ESFpoly(4, 1)
  e2 <- ESFpoly(4, 2)
  e3 <- ESFpoly(4, 3)
  f <- e1 + 2*e2 + 3*e3
  expect_true(isSymmetricQspray(f))
  expect_false(isSymmetricQspray(qlone(1) - qlone(2)))
})

test_that("MSPcombination", {
  qspray <- PSFpoly(4, c(3, 1)) + ESFpoly(4, c(2, 2)) + 4L
  expect_no_error(MSPcombination(qspray, check = TRUE))
})

test_that("compactSymmetricQspray", {
  qspray <- PSFpoly(4, c(3, 1)) - ESFpoly(4, c(2, 2)) + 4L
  expect_identical(
    compactSymmetricQspray(qspray, check = TRUE),
    "M[4] + M[3, 1] - M[2, 2] - 2*M[2, 1, 1] - 6*M[1, 1, 1, 1] + 4"
  )
})

test_that("PSPexpression", {
  qspray <- PSFpoly(4, c(3, 1)) - ESFpoly(4, c(2, 2)) + 4L
  pspExpr <- PSPexpression(qspray)
  psPolys <- lapply(1:numberOfVariables(pspExpr), function(i) PSFpoly(4, i))
  obtained <- changeVariables(pspExpr, psPolys)
  expect_true(obtained == qspray)
})

Try the qspray package in your browser

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

qspray documentation built on Sept. 11, 2024, 5:33 p.m.