Nothing
# Tests for logging and debugging functions
test_that("logging functions exist and work", {
# Check that R logging can be enabled/disabled
expect_silent(ggml_log_set_r())
expect_true(ggml_log_is_r_enabled())
expect_silent(ggml_log_set_default())
expect_false(ggml_log_is_r_enabled())
# Restore R logging (suppresses debug messages in subsequent tests)
ggml_log_set_r()
})
test_that("abort callback functions exist and work", {
# Check that R abort handler can be enabled/disabled
expect_silent(ggml_set_abort_callback_r())
expect_true(ggml_abort_is_r_enabled())
expect_silent(ggml_set_abort_callback_default())
expect_false(ggml_abort_is_r_enabled())
# Restore R abort handler for subsequent tests
ggml_set_abort_callback_r()
})
test_that("op_params functions work", {
ctx <- ggml_init(1024 * 1024)
on.exit(ggml_free(ctx))
# Create a tensor
a <- ggml_new_tensor_1d(ctx, GGML_TYPE_F32, 4)
# Get raw op_params
params <- ggml_get_op_params(a)
expect_type(params, "raw")
expect_length(params, 64) # GGML_MAX_OP_PARAMS
# Set/get integer parameter
ggml_set_op_params_i32(a, 0, 42L)
expect_equal(ggml_get_op_params_i32(a, 0), 42L)
ggml_set_op_params_i32(a, 1, -100L)
expect_equal(ggml_get_op_params_i32(a, 1), -100L)
# Set/get float parameter
ggml_set_op_params_f32(a, 2, 3.14)
result <- ggml_get_op_params_f32(a, 2)
expect_equal(result, 3.14, tolerance = 1e-5)
# Set raw params
new_params <- as.raw(c(1, 2, 3, 4, rep(0, 60)))
ggml_set_op_params(a, new_params)
retrieved <- ggml_get_op_params(a)
expect_equal(retrieved[1:4], as.raw(c(1, 2, 3, 4)))
})
test_that("op_params index bounds are checked", {
ctx <- ggml_init(1024 * 1024)
on.exit(ggml_free(ctx))
a <- ggml_new_tensor_1d(ctx, GGML_TYPE_F32, 4)
# These should error with out-of-range indices
expect_error(ggml_get_op_params_i32(a, -1))
expect_error(ggml_get_op_params_i32(a, 100))
expect_error(ggml_set_op_params_i32(a, -1, 0))
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.