The open source OpenXR runtime
at main 819 B view raw
1// Copyright 2022, Collabora, Ltd. 2// SPDX-License-Identifier: BSL-1.0 3/*! 4 * @file 5 * @brief Test u_vector C interface. 6 * @author Mateo de Mayo <mateo.demayo@collabora.com> 7 */ 8 9#include "catch_amalgamated.hpp" 10#include "util/u_vector.h" 11 12TEST_CASE("u_vector") 13{ 14 SECTION("Test interface generated from macros") 15 { 16 struct u_vector_float vf = u_vector_float_create(); 17 CHECK(vf.ptr != NULL); 18 19 constexpr float A = 2.71f; 20 constexpr float B = 1.61f; 21 constexpr float C = 3.14f; 22 23 u_vector_float_push_back(vf, A); 24 u_vector_float_push_back(vf, B); 25 u_vector_float_push_back(vf, C); 26 27 float a = u_vector_float_at(vf, 0); 28 float b = u_vector_float_at(vf, 1); 29 float c = u_vector_float_at(vf, 2); 30 31 CHECK(a == A); 32 CHECK(b == B); 33 CHECK(c == C); 34 35 u_vector_float_destroy(&vf); 36 CHECK(vf.ptr == NULL); 37 } 38}