merliseclyde / BAS

BAS R package https://merliseclyde.github.io/BAS/
https://merliseclyde.github.io/BAS/
GNU General Public License v3.0
41 stars 16 forks source link

Using pivot = FALSE in bas.lm does not create a warning on M1mac in non-full rank case #62

Closed merliseclyde closed 1 year ago

merliseclyde commented 1 year ago

Describe the bug The unit test for checking that marginal likelihoods are finite and well defined in the non-full rank case currently does not throw a warning as expected on the M1 chip for MAC OS.

To Reproduce

See unit test tests/testthat/test-bas-lm-rank-m1Mac.R

`# the following does not throw a warning on a m1MAC

test_that("check non-full rank with pivot=FALSE", { skip_on_os("mac", arch = "aarch64") loc <- system.file("testdata", package = "BAS") d <- read.csv(paste(loc, "JASP-testdata.csv", sep = "/"))

fullModelFormula <- as.formula("contNormal ~ contGamma contExpon + contGamma contcor1 + contExpon * contcor1")

expect_warning(bas.lm(fullModelFormula, data = d, alpha = 0.125316, prior = "JZS", weights = facFifty, force.heredity = FALSE, pivot = FALSE))

}) `

Expected behavior Test should pass

Desktop (please complete the following information):

Additional Info

Current unit test skips the test on OS & M1 chip; before closing the issue remove the line

skip_on_os("mac", arch = "aarch64")

merliseclyde commented 1 year ago

Testing verifies that coefficients are not NA's in this case on the M1Mac, so a warning should not be produced. As such behaviors may or not occur in the non-full rank case, the test is now skipped on CRAN and the M1mac