17 #include "pv_circular_buffer.h"
26 static void check_condition(
bool condition,
const char *
function, int32_t line,
const char *message, ...) {
29 va_start(
args, message);
41 int16_t in_buffer[] = {5, 7, -20, 35, 70};
42 int32_t in_size =
sizeof(in_buffer) /
sizeof(in_buffer[0]);
44 int32_t out_size = in_size;
45 int16_t *out_buffer = malloc(out_size *
sizeof(int16_t));
52 check_condition(length == out_size, __FUNCTION__ , __LINE__,
"Read and write buffers have different sizes.");
54 for (int32_t i = 0; i < in_size; i++) {
58 "Read and write buffers have different values at index %d with values: in_buffer: %d, out_buffer: %d",
74 int16_t *out_buffer = malloc(out_size *
sizeof(int16_t));
78 check_condition(length == 0, __FUNCTION__ , __LINE__,
"Expected buffer size to be 0.");
92 int16_t in_buffer[] = {5, 7, -20, 35, 70, 100, 0, 1, -100};
93 int32_t in_size =
sizeof(in_buffer) /
sizeof(in_buffer[0]);
109 int32_t in_size = 512;
110 int16_t in_buffer[in_size];
111 for (int32_t i = 0; i < in_size; i++) {
112 in_buffer[i] = (int16_t) ((rand() % (2000 + 1)) - 1000);
115 int32_t out_size = in_size;
116 int16_t *out_buffer = malloc(out_size *
sizeof(int16_t));
119 for (int32_t i = 0; i < 10; i++) {
122 check_condition(length == out_size, __FUNCTION__ , __LINE__,
"Read buffer received different sizes.");
123 for (int32_t j = 0; j < in_size; j++) {
127 "Read and write buffers have different values at index %d with values: in_buffer: %d, out_buffer: %d",
143 int32_t in_size = 64;
144 int16_t in_buffer[in_size];
145 for (int32_t i = 0; i < in_size; i++) {
146 in_buffer[i] = (int16_t) ((rand() % (2000 + 1)) - 1000);
149 int32_t out_size = in_size;
150 int16_t *out_buffer = malloc(out_size *
sizeof(int16_t));
153 for (int32_t i = 0; i < in_size; i++) {
158 check_condition(length == 1, __FUNCTION__ , __LINE__,
"Buffer read received incorrect output length.");
160 check_condition(in_buffer[i] == out_buffer[i], __FUNCTION__ , __LINE__,
"Buffer have incorrect sizes.");