diff options
Diffstat (limited to 'robolectric/src/test/java/org/robolectric/shadows/AudioDeviceInfoBuilderTest.java')
-rw-r--r-- | robolectric/src/test/java/org/robolectric/shadows/AudioDeviceInfoBuilderTest.java | 46 |
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); } } |