aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAndre Weissflog <floooh@gmail.com>2022-11-05 14:19:09 +0100
committerAndre Weissflog <floooh@gmail.com>2022-11-05 14:19:09 +0100
commit7869b6e75eb054505780c9c3c8bf6cb827fed486 (patch)
tree94df0290c7cc50f816992e8f4c067d6aeaf96149 /tests
parent9d80b1e8091bb9cb91574200c180ddd1d41a0667 (diff)
fix sokol_fetch_test.c
Diffstat (limited to 'tests')
-rw-r--r--tests/functional/sokol_fetch_test.c97
1 files changed, 45 insertions, 52 deletions
diff --git a/tests/functional/sokol_fetch_test.c b/tests/functional/sokol_fetch_test.c
index 5701dc6a..417979d5 100644
--- a/tests/functional/sokol_fetch_test.c
+++ b/tests/functional/sokol_fetch_test.c
@@ -61,8 +61,7 @@ UTEST(sokol_fetch, item_init_discard) {
.channel = 4,
.path = "hello_world.txt",
.chunk_size = 128,
- .user_data_ptr = &user_data,
- .user_data_size = sizeof(user_data)
+ .user_data = SFETCH_RANGE(user_data)
};
_sfetch_item_t item = zeroed_item;
uint32_t slot_id = _sfetch_make_id(1, 1);
@@ -102,8 +101,7 @@ UTEST(sokol_fetch, item_init_userdata_overflow) {
uint8_t big_data[128] = { 0xFF };
sfetch_request_t request = {
.path = "hello_world.txt",
- .user_data_ptr = big_data,
- .user_data_size = sizeof(big_data)
+ .user_data = SFETCH_RANGE(big_data),
};
_sfetch_item_t item = zeroed_item;
_sfetch_item_init(&item, _sfetch_make_id(1, 1), &request);
@@ -137,8 +135,7 @@ UTEST(sokol_fetch, pool_alloc_free) {
_sfetch_pool_init(&pool, num_items);
uint32_t slot_id = _sfetch_pool_item_alloc(&pool, &(sfetch_request_t){
.path = "hello_world.txt",
- .buffer_ptr = buf,
- .buffer_size = sizeof(buf)
+ .buffer = SFETCH_RANGE(buf),
});
T(slot_id == 0x00010001);
T(pool.items[1].state == _SFETCH_STATE_ALLOCATED);
@@ -381,8 +378,7 @@ UTEST(sokol_fetch, fail_open) {
sfetch_handle_t h = sfetch_send(&(sfetch_request_t){
.path = "non_existing_file.txt",
.callback = fail_open_callback,
- .buffer_ptr = fail_open_buffer,
- .buffer_size = sizeof(fail_open_buffer)
+ .buffer = SFETCH_RANGE(fail_open_buffer),
});
fail_open_passed = false;
int frame_count = 0;
@@ -407,10 +403,11 @@ static void load_file_fixed_buffer_callback(const sfetch_response_t* response) {
// when loading the whole file at once, the fetched state
// is the best place to grab/process the data
if (response->fetched) {
- if ((response->fetched_offset == 0) &&
- (response->fetched_size == combatsignal_file_size) &&
- (response->buffer_ptr == load_file_buf) &&
- (response->buffer_size == sizeof(load_file_buf)) &&
+ if ((response->data_offset == 0) &&
+ (response->data.ptr == load_file_buf) &&
+ (response->data.size == combatsignal_file_size) &&
+ (response->buffer.ptr == load_file_buf) &&
+ (response->buffer.size == sizeof(load_file_buf)) &&
response->finished)
{
load_file_fixed_buffer_passed = true;
@@ -428,8 +425,7 @@ UTEST(sokol_fetch, load_file_fixed_buffer) {
sfetch_handle_t h = sfetch_send(&(sfetch_request_t){
.path = "comsi.s3m",
.callback = load_file_fixed_buffer_callback,
- .buffer_ptr = load_file_buf,
- .buffer_size = sizeof(load_file_buf)
+ .buffer = SFETCH_RANGE(load_file_buf),
});
// simulate a frame-loop for as long as the request is in flight, normally
// the sfetch_dowork() function is just called somewhere in the frame
@@ -450,21 +446,23 @@ static bool load_file_unknown_size_opened_passed;
static bool load_file_unknown_size_fetched_passed;
static void load_file_unknown_size_callback(const sfetch_response_t* response) {
if (response->dispatched) {
- if ((response->fetched_offset == 0) &&
- (response->fetched_size == 0) &&
- (response->buffer_ptr == 0) &&
- (response->buffer_size == 0) &&
+ if ((response->data_offset == 0) &&
+ (response->data.ptr == 0) &&
+ (response->data.size == 0) &&
+ (response->buffer.ptr == 0) &&
+ (response->buffer.size == 0) &&
!response->finished)
{
load_file_unknown_size_opened_passed = true;
- sfetch_bind_buffer(response->handle, load_file_buf, sizeof(load_file_buf));
+ sfetch_bind_buffer(response->handle, SFETCH_RANGE(load_file_buf));
}
}
else if (response->fetched) {
- if ((response->fetched_offset == 0) &&
- (response->fetched_size == combatsignal_file_size) &&
- (response->buffer_ptr == load_file_buf) &&
- (response->buffer_size == sizeof(load_file_buf)) &&
+ if ((response->data_offset == 0) &&
+ (response->data.ptr == load_file_buf) &&
+ (response->data.size == combatsignal_file_size) &&
+ (response->buffer.ptr == load_file_buf) &&
+ (response->buffer.size == sizeof(load_file_buf)) &&
response->finished)
{
load_file_unknown_size_fetched_passed = true;
@@ -496,10 +494,11 @@ static bool load_file_no_buffer_opened_passed;
static bool load_file_no_buffer_failed_passed;
static void load_file_no_buffer_callback(const sfetch_response_t* response) {
if (response->dispatched) {
- if ((response->fetched_offset == 0) &&
- (response->fetched_size == 0) &&
- (response->buffer_ptr == 0) &&
- (response->buffer_size == 0) &&
+ if ((response->data_offset == 0) &&
+ (response->data.ptr == 0) &&
+ (response->data.size == 0) &&
+ (response->buffer.ptr == 0) &&
+ (response->buffer.size == 0) &&
!response->finished)
{
/* DO NOT provide a buffer here, see if that properly fails */
@@ -546,8 +545,7 @@ UTEST(sokol_fetch, load_file_too_small_buffer) {
sfetch_handle_t h = sfetch_send(&(sfetch_request_t){
.path = "comsi.s3m",
.callback = load_file_too_small_callback,
- .buffer_ptr = load_file_too_small_buf,
- .buffer_size = sizeof(load_file_too_small_buf)
+ .buffer = SFETCH_RANGE(load_file_too_small_buf),
});
int frame_count = 0;
const int max_frames = 10000;
@@ -570,9 +568,9 @@ static uint8_t load_chunk_buf[8192];
static uint8_t load_file_chunked_content[500000];
static void load_file_chunked_callback(const sfetch_response_t* response) {
if (response->fetched) {
- const uint8_t* src = response->buffer_ptr;
- uint8_t* dst = &load_file_chunked_content[response->fetched_offset];
- size_t num_bytes = response->fetched_size;
+ uint8_t* dst = &load_file_chunked_content[response->data_offset];
+ const uint8_t* src = response->data.ptr;
+ size_t num_bytes = response->data.size;
memcpy(dst, src, num_bytes);
if (response->finished) {
load_file_chunked_passed = true;
@@ -590,16 +588,14 @@ UTEST(sokol_fetch, load_file_chunked) {
sfetch_handle_t h0 = sfetch_send(&(sfetch_request_t){
.path = "comsi.s3m",
.callback = load_file_chunked_callback,
- .buffer_ptr = load_chunk_buf,
- .buffer_size = sizeof(load_chunk_buf),
+ .buffer = SFETCH_RANGE(load_chunk_buf),
.chunk_size = sizeof(load_chunk_buf)
});
// request for all-in-one loading for comparing with the chunked buffer
sfetch_handle_t h1 = sfetch_send(&(sfetch_request_t){
.path = "comsi.s3m",
.callback = load_file_fixed_buffer_callback,
- .buffer_ptr = load_file_buf,
- .buffer_size = sizeof(load_file_buf)
+ .buffer = SFETCH_RANGE(load_file_buf),
});
int frame_count = 0;
const int max_frames = 10000;
@@ -622,9 +618,9 @@ int load_file_lanes_passed[LOAD_FILE_LANES_NUM_LANES];
static void load_file_lanes_callback(const sfetch_response_t* response) {
assert((response->channel == 0) && (response->lane < LOAD_FILE_LANES_NUM_LANES));
if (response->fetched) {
- const uint8_t* src = response->buffer_ptr;
- uint8_t* dst = &load_file_lanes_content[response->lane][response->fetched_offset];
- size_t num_bytes = response->fetched_size;
+ uint8_t* dst = &load_file_lanes_content[response->lane][response->data_offset];
+ const uint8_t* src = response->data.ptr;
+ size_t num_bytes = response->data.size;
memcpy(dst, src, num_bytes);
if (response->finished) {
load_file_lanes_passed[response->lane]++;
@@ -645,8 +641,7 @@ UTEST(sokol_fetch, load_file_lanes) {
h[lane] = sfetch_send(&(sfetch_request_t){
.path = "comsi.s3m",
.callback = load_file_lanes_callback,
- .buffer_ptr = load_file_lanes_chunk_buf[lane],
- .buffer_size = sizeof(load_file_lanes_chunk_buf[0]),
+ .buffer = { .ptr = load_file_lanes_chunk_buf[lane], .size = sizeof(load_file_lanes_chunk_buf[0]) },
.chunk_size = sizeof(load_file_lanes_chunk_buf[0])
});
}
@@ -682,9 +677,9 @@ static void load_file_throttle_callback(const sfetch_response_t* response) {
assert((response->channel == 0) && (response->lane < LOAD_FILE_LANES_NUM_LANES));
if (response->fetched) {
assert(load_file_throttle_passed[response->lane] < LOAD_FILE_THROTTLE_NUM_PASSES);
- const uint8_t* src = response->buffer_ptr;
- uint8_t* dst = &load_file_throttle_content[load_file_throttle_passed[response->lane]][response->lane][response->fetched_offset];
- size_t num_bytes = response->fetched_size;
+ uint8_t* dst = &load_file_throttle_content[load_file_throttle_passed[response->lane]][response->lane][response->data_offset];
+ const uint8_t* src = response->data.ptr;
+ size_t num_bytes = response->data.size;
memcpy(dst, src, num_bytes);
if (response->finished) {
load_file_throttle_passed[response->lane]++;
@@ -707,8 +702,10 @@ UTEST(sokol_fetch, load_file_throttle) {
h[i] = sfetch_send(&(sfetch_request_t){
.path = "comsi.s3m",
.callback = load_file_throttle_callback,
- .buffer_ptr = load_file_throttle_chunk_buf[i % LOAD_FILE_THROTTLE_NUM_LANES],
- .buffer_size = sizeof(load_file_throttle_chunk_buf[0]),
+ .buffer = {
+ .ptr = load_file_throttle_chunk_buf[i % LOAD_FILE_THROTTLE_NUM_LANES],
+ .size = sizeof(load_file_throttle_chunk_buf[0]),
+ },
.chunk_size = sizeof(load_file_throttle_chunk_buf[0])
});
T(sfetch_handle_valid(h[i]));
@@ -743,9 +740,7 @@ void load_channel_callback(const sfetch_response_t* response) {
assert(response->channel < LOAD_CHANNEL_NUM_CHANNELS);
assert(!load_channel_passed[response->channel]);
if (response->fetched) {
- if ((response->fetched_size == combatsignal_file_size) &&
- response->finished)
- {
+ if ((response->data.size == combatsignal_file_size) && response->finished) {
load_channel_passed[response->channel] = true;
}
}
@@ -764,8 +759,7 @@ UTEST(sokol_fetch, load_channel) {
.path = "comsi.s3m",
.channel = chn,
.callback = load_channel_callback,
- .buffer_ptr = load_channel_buf[chn],
- .buffer_size = sizeof(load_channel_buf[chn])
+ .buffer = SFETCH_RANGE(load_channel_buf[chn]),
});
}
bool done = false;
@@ -817,4 +811,3 @@ UTEST(sokol_fetch, load_file_cancel) {
T(load_file_cancel_passed);
sfetch_shutdown();
}
-