#include "./pke-test-asset-manager.h" #include "asset-manager.hpp" #include "ecs.hpp" #include "font.hpp" #include "pke-test-stubs.h" #include "thread-pool.hpp" static pk_membucket *bkt; void pke_test_asset_manager_spinup() { pke_test_stub_init_vulkan(); bkt = pk_mem_bucket_create("pke_test_asset_manager", PK_MEM_DEFAULT_BUCKET_SIZE, PK_MEMBUCKET_FLAG_NONE); pk_mem_bucket_set_client_mem_bucket(bkt); pk_ev_init(nullptr); PkeThreads_Init(); AM_Init(); ECS_Init(); FontType_Init(); }; void pke_test_asset_manager_teardown() { FontType_Teardown(); ECS_Teardown(); AM_Teardown(); PkeThreads_Teardown(); pk_ev_teardown(); pk_mem_bucket_destroy(bkt); pk_mem_bucket_set_client_mem_bucket(nullptr); bkt = nullptr; pke_test_stub_teardown_vulkan(); }; int pke_test_asset_manager_001() { AssetHandle handle = AM_GetHandle(AssetKey { "fnt_mquin_img" }); const Asset *a = AM_Get(handle); AM_Release(handle); return int(a != NULL && handle != AssetHandle_MAX); } struct pk_test_group *pke_test_asset_manager_get_group() { static const uint64_t test_count = 1; static struct pk_test tests[test_count] = { { .title = "test 001", .func = pke_test_asset_manager_001, .expected_result = 1, } }; static struct pk_test_group group = {}; group.title = "asset_manager"; group.n_tests = test_count; group.tests = &tests[0]; group.test_setup = pke_test_asset_manager_spinup; group.test_teardown = pke_test_asset_manager_teardown; return &group; }