Nothing
#############################################################################
##
## Copyright 2016 Novartis Institutes for BioMedical Research Inc.
## Licensed under the Apache License, Version 2.0 (the "License");
## you may not use this file except in compliance with the License.
## You may obtain a copy of the License at
##
## http://www.apache.org/licenses/LICENSE-2.0
##
## Unless required by applicable law or agreed to in writing, software
## distributed under the License is distributed on an "AS IS" BASIS,
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
## See the License for the specific language governing permissions and
## limitations under the License.
##
#############################################################################
context("H5P")
test_that("H5P works", {
h5p_obj <- H5P_factory(h5const$H5P_DATASET_CREATE)
## now test out the various standard functions
h5p_cls <- h5p_obj$get_class()
expect_true(h5p_cls$equal(h5const$H5P_DATASET_CREATE))
h5p_cls_name <- h5p_obj$get_class_name()
expect_equal(h5p_cls_name, "dataset create")
h5p_obj_cpy <- h5p_obj$copy()
expect_true(h5p_obj$equal(h5p_obj_cpy))
})
test_that("H5P_FILE_CREATE works", {
file_create_pl <- H5P_FILE_CREATE$new()
file_create_pl$set_userblock(1024)
expect_equal(file_create_pl$get_userblock(), 1024)
file_create_pl$set_sizes(16, 16)
expect_equal(file_create_pl$get_sizes(), list(sizeof_addr=16, sizeof_size=16))
file_create_pl$set_sym_k(32, 8)
expect_equal(file_create_pl$get_sym_k(), list(ik=32, lk=8))
file_create_pl$set_istore_k(32)
expect_equal(file_create_pl$get_istore_k(), 32)
require(utils)
if(compareVersion(h5version(verbose=FALSE), "1.10.0") >= 0) { # functions only available in 1.10.0
file_create_pl$set_file_space(h5const$H5F_FILE_SPACE_ALL_PERSIST, 2)
foo <- file_create_pl$get_file_space()
expect_equal(foo$threshold, 2)
expect_equal(as.character(foo$strategy), as.character(h5const$H5F_FILE_SPACE_ALL_PERSIST))
}
})
test_that("H5P_FILE_ACCESS works", {
file_access_pl <- H5P_FILE_ACCESS$new()
file_access_pl$set_cache(953, 2^24, 0.5)
cache_params <- file_access_pl$get_cache()
expect_equal(cache_params, list(rdcc_nslots=953, rdcc_nbytes=2^24, rdcc_w0=0.5))
})
test_that("H5P_DATASET_CREATE works", {
h5p_obj <- H5P_DATASET_CREATE$new()
h5p_obj$set_layout(layout=h5const$H5D_CHUNKED)
expect_equal(as.character(h5p_obj$get_layout()), "H5D_CHUNKED")
## get/set chunk
h5p_obj$set_chunk(chunk=c(100, 200))
expect_equal(h5p_obj$get_chunk(2), c(100,200))
## get/set fill value
dtype_int <- h5types$H5T_NATIVE_INT
h5p_obj$set_fill_value(dtype_int, 1)
expect_equal(h5p_obj$get_fill_value(dtype_int), 1)
## get/set fill time
h5p_obj$set_fill_time(h5const$H5D_FILL_TIME_NEVER)
expect_equal(h5p_obj$get_fill_time(), h5const$H5D_FILL_TIME_NEVER)
## get/set alloc time
h5p_obj$set_alloc_time(h5const$H5D_ALLOC_TIME_EARLY)
expect_equal(h5p_obj$get_alloc_time(), h5const$H5D_ALLOC_TIME_EARLY)
## try out various filters
h5p_obj$set_deflate(3)
expect_equal(h5p_obj$get_nfilters(), 1)
expect_equal(h5p_obj$get_filter(0)$filter, h5const$H5Z_FILTER_DEFLATE)
expect_true( h5p_obj$all_filters_avail())
h5p_obj$remove_filter()
expect_equal(h5p_obj$get_nfilters(), 0)
h5p_obj$set_fletcher32()
h5p_obj$set_nbit()
h5p_obj$set_scaleoffset()
h5p_obj$set_shuffle()
expect_equal(h5p_obj$get_nfilters(), 4)
expect_equal(h5p_obj$get_filter(0)$filter, h5const$H5Z_FILTER_FLETCHER32)
expect_equal(h5p_obj$get_filter(1)$filter, h5const$H5Z_FILTER_NBIT)
expect_equal(h5p_obj$get_filter(2)$filter, h5const$H5Z_FILTER_SCALEOFFSET)
expect_equal(h5p_obj$get_filter(3)$filter, h5const$H5Z_FILTER_SHUFFLE)
## now set an external file
h5p_obj$set_external("test", 10, 100)
expect_equal(h5p_obj$get_external_count(), 1)
external_1 <- h5p_obj$get_external(0)
expect_equal(external_1$name, "test")
expect_equal(external_1$offset, 10)
expect_equal(external_1$size, 100)
})
test_that("H5P_DATASET_ACCESS works", {
h5p_obj <- H5P_DATASET_ACCESS$new()
h5p_obj$set_chunk_cache(rdcc_nslots=-1, rdcc_nbytes=-1, rdcc_w0=-1)
expect_equal(h5p_obj$get_chunk_cache()$rdcc_nslots, 521)
expect_equal(h5p_obj$get_chunk_cache()$rdcc_nbytes, 1048576)
expect_equal(h5p_obj$get_chunk_cache()$rdcc_w0, 0.75)
})
test_that("H5P_DATASET_XFER", {
h5p_obj <- H5P_DATASET_XFER$new()
h5p_obj$set_edc_check(h5const$H5Z_DISABLE_EDC)
expect_equal(h5p_obj$get_edc_check(), h5const$H5Z_DISABLE_EDC)
h5p_obj$set_hyper_vector_size(1000)
expect_equal(h5p_obj$get_hyper_vector_size(), 1000)
h5p_obj$set_btree_ratios(0.25, 0.5, 0.75)
expect_equal(h5p_obj$get_btree_ratios(), list(left=0.25, middle=0.5, right=0.75))
})
test_that("H5P_LINK_CREATE", {
h5p_obj <- H5P_LINK_CREATE$new()
h5p_obj$set_char_encoding(h5const$H5T_CSET_ASCII)
expect_equal(h5p_obj$get_char_encoding(), h5const$H5T_CSET_ASCII)
h5p_obj$set_char_encoding(h5const$H5T_CSET_UTF8)
expect_equal(h5p_obj$get_char_encoding(), h5const$H5T_CSET_UTF8)
h5p_obj$set_create_intermediate_group(FALSE)
expect_equal(h5p_obj$get_create_intermediate_group(), FALSE)
h5p_obj$set_create_intermediate_group(TRUE)
expect_equal(h5p_obj$get_create_intermediate_group(), TRUE)
})
test_that("H5P_LINK_ACCESS", {
h5p_obj <- H5P_LINK_ACCESS$new()
h5p_obj$set_nlinks(5)
expect_equal(h5p_obj$get_nlinks(), 5)
h5p_obj$set_elink_prefix("test")
expect_equal(h5p_obj$get_elink_prefix(), "test")
h5p_obj$set_elink_acc_flags(h5const$H5F_ACC_RDONLY)
expect_equal(h5p_obj$get_elink_acc_flags(), h5const$H5F_ACC_RDONLY)
})
test_that("H5P_OBJECT_CREATE", {
h5p_obj <- H5P_OBJECT_CREATE$new()
h5p_obj$set_obj_track_times(FALSE)
expect_equal(h5p_obj$get_obj_track_times(), FALSE)
h5p_obj$set_obj_track_times(TRUE)
expect_equal(h5p_obj$get_obj_track_times(), TRUE)
h5p_obj$set_attr_phase_change(9,5)
expect_equal(h5p_obj$get_attr_phase_change(), list(max_compact=9, min_dense=5))
h5p_obj$set_attr_creation_order(h5const$H5P_CRT_ORDER_TRACKED + h5const$H5P_CRT_ORDER_INDEXED)
expect_equal(h5p_obj$get_attr_creation_order(), as.integer(h5const$H5P_CRT_ORDER_TRACKED + h5const$H5P_CRT_ORDER_INDEXED))
})
test_that("H5P_OBJECT_COPY", {
h5p_obj <- H5P_OBJECT_COPY$new()
h5p_obj$set_copy_obj(h5const$H5O_COPY_SHALLOW_HIERARCHY_FLAG)
expect_equal(h5p_obj$get_copy_obj(), as.integer(h5const$H5O_COPY_SHALLOW_HIERARCHY_FLAG))
})
test_that("H5P_ATTRIBUTE_CREATE", {
h5p_obj <- H5P_ATTRIBUTE_CREATE$new()
h5p_obj$set_char_encoding(h5const$H5T_CSET_ASCII)
expect_equal(h5p_obj$get_char_encoding(), h5const$H5T_CSET_ASCII)
h5p_obj$set_char_encoding(h5const$H5T_CSET_UTF8)
expect_equal(h5p_obj$get_char_encoding(), h5const$H5T_CSET_UTF8)
})
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.