mirror of
https://github.com/OldUnreal/libxmp.git
synced 2026-04-02 21:37:43 -07:00
36 lines
790 B
C
36 lines
790 B
C
#include "test.h"
|
|
|
|
TEST(test_module_length_data_jack)
|
|
{
|
|
xmp_context opaque;
|
|
struct xmp_module_info mi;
|
|
struct xmp_frame_info fi;
|
|
int ret, time = 0;
|
|
|
|
opaque = xmp_create_context();
|
|
ret = xmp_load_module(opaque, "data/p/data_jack.s3m");
|
|
fail_unless(ret == 0, "module load");
|
|
|
|
xmp_get_module_info(opaque, &mi);
|
|
xmp_get_frame_info(opaque, &fi);
|
|
|
|
fail_unless(mi.mod->len == 94, "module length");
|
|
fail_unless(fi.total_time == 285000, "estimated time");
|
|
|
|
xmp_start_player(opaque, 8000, 0);
|
|
while (xmp_play_frame(opaque) == 0) {
|
|
xmp_get_frame_info(opaque, &fi);
|
|
if (fi.loop_count > 0)
|
|
break;
|
|
|
|
time += fi.frame_time;
|
|
}
|
|
xmp_end_player(opaque);
|
|
|
|
fail_unless(time / 1000 - fi.total_time < 5, "elapsed time");
|
|
|
|
xmp_release_module(opaque);
|
|
xmp_free_context(opaque);
|
|
}
|
|
END_TEST
|