test_that("the selected Minkowski p = 4 distance is reconstructed with p = 4", { data = matrix( c( 0, 0, 0, 1, 2, 3, 2, 1, 5, 4, 3, 1 ), nrow = 4, byrow = TRUE ) observed = BIDistances::DistanceMatrix( data, "minkowski_p_4" ) expected = as.matrix(parallelDist::parDist( data, method = "minkowski", p = 4 )) former_bug = as.matrix(parallelDist::parDist( data, method = "minkowski", p = 0.4 )) expect_equal(observed, expected) expect_false(isTRUE(all.equal(observed, former_bug))) }) test_that("the selected-distance helper recognizes all advertised Minkowski powers", { data = matrix(seq_len(18), nrow = 6, ncol = 3) choices = c( minkowski_p_0.1 = 0.1, minkowski_p_0.5 = 0.5, minkowski_p_4 = 4, minkowski_p_10 = 10, minkowski_p_100 = 100 ) for (choice in names(choices)) { observed = BIDistances::DistanceMatrix(data, choice) expected = as.matrix(parallelDist::parDist( data, method = "minkowski", p = unname(choices[[choice]]) )) expect_equal(observed, expected, info = choice) } })