aboutsummaryrefslogtreecommitdiff
path: root/robolectric/src/test/java/org/robolectric/shadows/AudioDeviceInfoBuilderTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'robolectric/src/test/java/org/robolectric/shadows/AudioDeviceInfoBuilderTest.java')
-rw-r--r--robolectric/src/test/java/org/robolectric/shadows/AudioDeviceInfoBuilderTest.java46
1 files changed, 42 insertions, 4 deletions
diff --git a/robolectric/src/test/java/org/robolectric/shadows/AudioDeviceInfoBuilderTest.java b/robolectric/src/test/java/org/robolectric/shadows/AudioDeviceInfoBuilderTest.java
index e1961877a..6e05e7d15 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/AudioDeviceInfoBuilderTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/AudioDeviceInfoBuilderTest.java
@@ -1,11 +1,15 @@
package org.robolectric.shadows;
-import static android.media.AudioDeviceInfo.TYPE_BLUETOOTH_A2DP;
import static android.os.Build.VERSION_CODES.M;
+import static android.os.Build.VERSION_CODES.R;
+import static android.os.Build.VERSION_CODES.S;
import static com.google.common.truth.Truth.assertThat;
import android.media.AudioDeviceInfo;
+import android.media.AudioFormat;
+import android.media.AudioProfile;
import androidx.test.ext.junit.runners.AndroidJUnit4;
+import com.google.common.collect.ImmutableList;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.annotation.Config;
@@ -15,11 +19,45 @@ import org.robolectric.annotation.Config;
@Config(minSdk = M)
public class AudioDeviceInfoBuilderTest {
+ @Config(minSdk = M, maxSdk = R)
@Test
- public void canCreateAudioDeviceInfoWithDesiredType() {
+ public void buildAudioDeviceInfo_apiM_withDefaultValues_buildsExpectedObject() {
+ AudioDeviceInfo audioDeviceInfo = AudioDeviceInfoBuilder.newBuilder().build();
+
+ assertThat(audioDeviceInfo.getType()).isEqualTo(AudioDeviceInfo.TYPE_BUILTIN_SPEAKER);
+ }
+
+ @Config(minSdk = S)
+ @Test
+ public void buildAudioDeviceInfo_apiS_withDefaultValues_buildsExpectedObject() {
+ AudioDeviceInfo audioDeviceInfo = AudioDeviceInfoBuilder.newBuilder().build();
+
+ assertThat(audioDeviceInfo.getType()).isEqualTo(AudioDeviceInfo.TYPE_BUILTIN_SPEAKER);
+ assertThat(audioDeviceInfo.getAudioProfiles()).isEmpty();
+ }
+
+ @Config(minSdk = M, maxSdk = R)
+ @Test
+ public void buildAudioDeviceInfo_apiM_witSetValues_buildsExpectedObject() {
+ AudioDeviceInfo audioDeviceInfo =
+ AudioDeviceInfoBuilder.newBuilder().setType(AudioDeviceInfo.TYPE_BLUETOOTH_A2DP).build();
+
+ assertThat(audioDeviceInfo.getType()).isEqualTo(AudioDeviceInfo.TYPE_BLUETOOTH_A2DP);
+ }
+
+ @Test
+ @Config(minSdk = S)
+ public void buildAudioDeviceInfo_apiS_witSetValues_buildsExpectedObject() {
+ ImmutableList<AudioProfile> audioProfiles =
+ ImmutableList.of(
+ AudioProfileBuilder.newBuilder().setFormat(AudioFormat.ENCODING_PCM_32BIT).build());
AudioDeviceInfo audioDeviceInfo =
- AudioDeviceInfoBuilder.newBuilder().setType(TYPE_BLUETOOTH_A2DP).build();
+ AudioDeviceInfoBuilder.newBuilder()
+ .setType(AudioDeviceInfo.TYPE_BLUETOOTH_A2DP)
+ .setProfiles(audioProfiles)
+ .build();
- assertThat(audioDeviceInfo.getType()).isEqualTo(TYPE_BLUETOOTH_A2DP);
+ assertThat(audioDeviceInfo.getType()).isEqualTo(AudioDeviceInfo.TYPE_BLUETOOTH_A2DP);
+ assertThat(audioDeviceInfo.getAudioProfiles()).isEqualTo(audioProfiles);
}
}