projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Lookup the correct DCNC code to use for languages rather than just
[dcpomatic.git]
/
test
/
audio_ring_buffers_test.cc
diff --git
a/test/audio_ring_buffers_test.cc
b/test/audio_ring_buffers_test.cc
index 23491f6b380b694a520cd8b073ddf54e43f3d4e2..95927537fbe45ed91b9559ebd6ed86808b2e6c53 100644
(file)
--- a/
test/audio_ring_buffers_test.cc
+++ b/
test/audio_ring_buffers_test.cc
@@
-1,5
+1,5
@@
/*
/*
- Copyright (C) 2016-201
7
Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2016-201
8
Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
This file is part of DCP-o-matic.
@@
-23,10
+23,13
@@
#include <iostream>
using std::cout;
#include <iostream>
using std::cout;
-using boost::shared_ptr;
+using std::shared_ptr;
+using namespace dcpomatic;
#define CANARY 9999
#define CANARY 9999
+/* XXX: these tests don't check the timestamping in AudioRingBuffers */
+
/** Basic tests fetching the same number of channels as went in */
BOOST_AUTO_TEST_CASE (audio_ring_buffers_test1)
{
/** Basic tests fetching the same number of channels as went in */
BOOST_AUTO_TEST_CASE (audio_ring_buffers_test1)
{
@@
-38,7
+41,7
@@
BOOST_AUTO_TEST_CASE (audio_ring_buffers_test1)
/* Getting some data should give an underrun and write zeros */
float buffer[256 * 6];
buffer[240 * 6] = CANARY;
/* Getting some data should give an underrun and write zeros */
float buffer[256 * 6];
buffer[240 * 6] = CANARY;
- BOOST_CHECK
_EQUAL (rb.get (buffer, 6, 240), true
);
+ BOOST_CHECK
(!rb.get(buffer, 6, 240)
);
for (int i = 0; i < 240 * 6; ++i) {
BOOST_REQUIRE_EQUAL (buffer[i], 0);
}
for (int i = 0; i < 240 * 6; ++i) {
BOOST_REQUIRE_EQUAL (buffer[i], 0);
}
@@
-48,7
+51,7
@@
BOOST_AUTO_TEST_CASE (audio_ring_buffers_test1)
rb.clear ();
BOOST_CHECK_EQUAL (rb.size(), 0);
buffer[240 * 6] = CANARY;
rb.clear ();
BOOST_CHECK_EQUAL (rb.size(), 0);
buffer[240 * 6] = CANARY;
- BOOST_CHECK
_EQUAL (rb.get (buffer, 6, 240), true
);
+ BOOST_CHECK
(rb.get(buffer, 6, 240) == boost::optional<DCPTime>()
);
for (int i = 0; i < 240 * 6; ++i) {
BOOST_REQUIRE_EQUAL (buffer[i], 0);
}
for (int i = 0; i < 240 * 6; ++i) {
BOOST_REQUIRE_EQUAL (buffer[i], 0);
}
@@
-62,12
+65,12
@@
BOOST_AUTO_TEST_CASE (audio_ring_buffers_test1)
data->data(j)[i] = value++;
}
}
data->data(j)[i] = value++;
}
}
- rb.put (data);
+ rb.put (data
, DCPTime(), 48000
);
BOOST_CHECK_EQUAL (rb.size(), 91);
/* Get part of it out */
buffer[40 * 6] = CANARY;
BOOST_CHECK_EQUAL (rb.size(), 91);
/* Get part of it out */
buffer[40 * 6] = CANARY;
- BOOST_CHECK
_EQUAL (rb.get (buffer, 6, 40), false
);
+ BOOST_CHECK
(*rb.get(buffer, 6, 40) == DCPTime()
);
int check = 0;
for (int i = 0; i < 40 * 6; ++i) {
BOOST_REQUIRE_EQUAL (buffer[i], check++);
int check = 0;
for (int i = 0; i < 40 * 6; ++i) {
BOOST_REQUIRE_EQUAL (buffer[i], check++);
@@
-77,7
+80,7
@@
BOOST_AUTO_TEST_CASE (audio_ring_buffers_test1)
/* Get the rest */
buffer[51 * 6] = CANARY;
/* Get the rest */
buffer[51 * 6] = CANARY;
- BOOST_CHECK
_EQUAL (rb.get (buffer, 6, 51), false
);
+ BOOST_CHECK
(*rb.get(buffer, 6, 51) == DCPTime::from_frames(40, 48000)
);
for (int i = 0; i < 51 * 6; ++i) {
BOOST_REQUIRE_EQUAL (buffer[i], check++);
}
for (int i = 0; i < 51 * 6; ++i) {
BOOST_REQUIRE_EQUAL (buffer[i], check++);
}
@@
-86,7
+89,7
@@
BOOST_AUTO_TEST_CASE (audio_ring_buffers_test1)
/* Now there should be an underrun */
buffer[240 * 6] = CANARY;
/* Now there should be an underrun */
buffer[240 * 6] = CANARY;
- BOOST_CHECK
_EQUAL (rb.get (buffer, 6, 240), true
);
+ BOOST_CHECK
(!rb.get(buffer, 6, 240)
);
BOOST_CHECK_EQUAL (buffer[240 * 6], CANARY);
}
BOOST_CHECK_EQUAL (buffer[240 * 6], CANARY);
}
@@
-103,13
+106,13
@@
BOOST_AUTO_TEST_CASE (audio_ring_buffers_test2)
data->data(j)[i] = value++;
}
}
data->data(j)[i] = value++;
}
}
- rb.put (data);
+ rb.put (data
, DCPTime(), 48000
);
BOOST_CHECK_EQUAL (rb.size(), 91);
/* Get part of it out */
float buffer[256 * 6];
buffer[40 * 6] = CANARY;
BOOST_CHECK_EQUAL (rb.size(), 91);
/* Get part of it out */
float buffer[256 * 6];
buffer[40 * 6] = CANARY;
- BOOST_CHECK
_EQUAL (rb.get (buffer, 6, 40), false
);
+ BOOST_CHECK
(*rb.get(buffer, 6, 40) == DCPTime()
);
int check = 0;
for (int i = 0; i < 40; ++i) {
for (int j = 0; j < 2; ++j) {
int check = 0;
for (int i = 0; i < 40; ++i) {
for (int j = 0; j < 2; ++j) {
@@
-124,7
+127,7
@@
BOOST_AUTO_TEST_CASE (audio_ring_buffers_test2)
/* Get the rest */
buffer[51 * 6] = CANARY;
/* Get the rest */
buffer[51 * 6] = CANARY;
- BOOST_CHECK
_EQUAL (rb.get (buffer, 6, 51), false
);
+ BOOST_CHECK
(*rb.get(buffer, 6, 51) == DCPTime::from_frames(40, 48000)
);
for (int i = 0; i < 51; ++i) {
for (int j = 0; j < 2; ++j) {
BOOST_REQUIRE_EQUAL (buffer[i * 6 + j], check++);
for (int i = 0; i < 51; ++i) {
for (int j = 0; j < 2; ++j) {
BOOST_REQUIRE_EQUAL (buffer[i * 6 + j], check++);
@@
-138,7
+141,7
@@
BOOST_AUTO_TEST_CASE (audio_ring_buffers_test2)
/* Now there should be an underrun */
buffer[240 * 6] = CANARY;
/* Now there should be an underrun */
buffer[240 * 6] = CANARY;
- BOOST_CHECK
_EQUAL (rb.get (buffer, 6, 240), true
);
+ BOOST_CHECK
(!rb.get(buffer, 6, 240)
);
BOOST_CHECK_EQUAL (buffer[240 * 6], CANARY);
}
BOOST_CHECK_EQUAL (buffer[240 * 6], CANARY);
}
@@
-155,13
+158,13
@@
BOOST_AUTO_TEST_CASE (audio_ring_buffers_test3)
data->data(j)[i] = value++;
}
}
data->data(j)[i] = value++;
}
}
- rb.put (data);
+ rb.put (data
, DCPTime(), 48000
);
BOOST_CHECK_EQUAL (rb.size(), 91);
/* Get part of it out */
float buffer[256 * 6];
buffer[40 * 2] = CANARY;
BOOST_CHECK_EQUAL (rb.size(), 91);
/* Get part of it out */
float buffer[256 * 6];
buffer[40 * 2] = CANARY;
- BOOST_CHECK
_EQUAL (rb.get (buffer, 2, 40), false
);
+ BOOST_CHECK
(*rb.get(buffer, 2, 40) == DCPTime()
);
int check = 0;
for (int i = 0; i < 40; ++i) {
for (int j = 0; j < 2; ++j) {
int check = 0;
for (int i = 0; i < 40; ++i) {
for (int j = 0; j < 2; ++j) {
@@
-174,7
+177,7
@@
BOOST_AUTO_TEST_CASE (audio_ring_buffers_test3)
/* Get the rest */
buffer[51 * 2] = CANARY;
/* Get the rest */
buffer[51 * 2] = CANARY;
- BOOST_CHECK
_EQUAL (rb.get (buffer, 2, 51), false
);
+ BOOST_CHECK
(*rb.get(buffer, 2, 51) == DCPTime::from_frames(40, 48000)
);
for (int i = 0; i < 51; ++i) {
for (int j = 0; j < 2; ++j) {
BOOST_REQUIRE_EQUAL (buffer[i * 2 + j], check++);
for (int i = 0; i < 51; ++i) {
for (int j = 0; j < 2; ++j) {
BOOST_REQUIRE_EQUAL (buffer[i * 2 + j], check++);
@@
-186,6
+189,6
@@
BOOST_AUTO_TEST_CASE (audio_ring_buffers_test3)
/* Now there should be an underrun */
buffer[240 * 2] = CANARY;
/* Now there should be an underrun */
buffer[240 * 2] = CANARY;
- BOOST_CHECK
_EQUAL (rb.get (buffer, 2, 240), true
);
+ BOOST_CHECK
(!rb.get(buffer, 2, 240)
);
BOOST_CHECK_EQUAL (buffer[240 * 2], CANARY);
}
BOOST_CHECK_EQUAL (buffer[240 * 2], CANARY);
}