aboutsummaryrefslogtreecommitdiff
path: root/tests/testStreamClosedMethods.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/testStreamClosedMethods.cpp')
-rw-r--r--tests/testStreamClosedMethods.cpp41
1 files changed, 41 insertions, 0 deletions
diff --git a/tests/testStreamClosedMethods.cpp b/tests/testStreamClosedMethods.cpp
index a75e8aea..b8ab3231 100644
--- a/tests/testStreamClosedMethods.cpp
+++ b/tests/testStreamClosedMethods.cpp
@@ -36,6 +36,17 @@ protected:
return (r == Result::OK);
}
+ bool releaseStream() {
+ Result r = mStream->release();
+ if (getSdkVersion() > __ANDROID_API_R__ && mBuilder.getAudioApi() != AudioApi::OpenSLES) {
+ EXPECT_EQ(r, Result::OK) << "Failed to release stream. " << convertToText(r);
+ return (r == Result::OK);
+ } else {
+ EXPECT_EQ(r, Result::ErrorUnimplemented) << "Did not get ErrorUnimplemented" << convertToText(r);
+ return (r == Result::ErrorUnimplemented);
+ }
+ }
+
bool closeStream() {
Result r = mStream->close();
EXPECT_EQ(r, Result::OK) << "Failed to close stream. " << convertToText(r);
@@ -399,3 +410,33 @@ TEST_F(StreamClosedReturnValues, DelayBeforeCloseOutputOpenSL){
mBuilder.setDirection(Direction::Output);
testDelayBeforeClose();
}
+
+TEST_F(StreamClosedReturnValues, TestReleaseInput){
+ mBuilder.setDirection(Direction::Input);
+ ASSERT_TRUE(openStream());
+ ASSERT_TRUE(releaseStream());
+ ASSERT_TRUE(closeStream());
+}
+
+TEST_F(StreamClosedReturnValues, TestReleaseInputOpenSLES){
+ mBuilder.setAudioApi(AudioApi::OpenSLES);
+ mBuilder.setDirection(Direction::Input);
+ ASSERT_TRUE(openStream());
+ ASSERT_TRUE(releaseStream());
+ ASSERT_TRUE(closeStream());
+}
+
+TEST_F(StreamClosedReturnValues, TestReleaseOutput){
+ mBuilder.setDirection(Direction::Output);
+ ASSERT_TRUE(openStream());
+ ASSERT_TRUE(releaseStream());
+ ASSERT_TRUE(closeStream());
+}
+
+TEST_F(StreamClosedReturnValues, TestReleaseOutputOpenSLES){
+ mBuilder.setAudioApi(AudioApi::OpenSLES);
+ mBuilder.setDirection(Direction::Output);
+ ASSERT_TRUE(openStream());
+ ASSERT_TRUE(releaseStream());
+ ASSERT_TRUE(closeStream());
+}