summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulian Kast <julian@livio.com>2021-09-27 11:26:56 -0400
committerJulian Kast <julian@livio.com>2021-09-27 11:26:56 -0400
commit196d96e9ddf9575777df736139ce397d1c8d8607 (patch)
treef37637410ccdc9849e9888d802c07e60e8d7c6cc
parent43eb7cea3f7b1cc56945e93bcd0f647833f633f9 (diff)
downloadsdl_android-196d96e9ddf9575777df736139ce397d1c8d8607.tar.gz
Add unit test
-rw-r--r--android/sdl_android/src/androidTest/java/com/smartdevicelink/managers/lifecycle/SystemCapabilityManagerTests.java31
1 files changed, 31 insertions, 0 deletions
diff --git a/android/sdl_android/src/androidTest/java/com/smartdevicelink/managers/lifecycle/SystemCapabilityManagerTests.java b/android/sdl_android/src/androidTest/java/com/smartdevicelink/managers/lifecycle/SystemCapabilityManagerTests.java
index 65f9c7bb4..03854d3ee 100644
--- a/android/sdl_android/src/androidTest/java/com/smartdevicelink/managers/lifecycle/SystemCapabilityManagerTests.java
+++ b/android/sdl_android/src/androidTest/java/com/smartdevicelink/managers/lifecycle/SystemCapabilityManagerTests.java
@@ -32,6 +32,7 @@ import com.smartdevicelink.proxy.rpc.SdlMsgVersion;
import com.smartdevicelink.proxy.rpc.SetDisplayLayoutResponse;
import com.smartdevicelink.proxy.rpc.SoftButtonCapabilities;
import com.smartdevicelink.proxy.rpc.SystemCapability;
+import com.smartdevicelink.proxy.rpc.TextField;
import com.smartdevicelink.proxy.rpc.VideoStreamingCapability;
import com.smartdevicelink.proxy.rpc.WindowCapability;
import com.smartdevicelink.proxy.rpc.WindowTypeCapabilities;
@@ -52,6 +53,7 @@ import com.smartdevicelink.proxy.rpc.enums.ServiceUpdateReason;
import com.smartdevicelink.proxy.rpc.enums.SpeechCapabilities;
import com.smartdevicelink.proxy.rpc.enums.SystemCapabilityType;
import com.smartdevicelink.proxy.rpc.enums.SystemContext;
+import com.smartdevicelink.proxy.rpc.enums.TextFieldName;
import com.smartdevicelink.proxy.rpc.enums.WindowType;
import com.smartdevicelink.proxy.rpc.listeners.OnMultipleRequestListener;
import com.smartdevicelink.proxy.rpc.listeners.OnRPCListener;
@@ -689,6 +691,35 @@ public class SystemCapabilityManagerTests {
verify(internalInterface, times(0)).sendRPC(any(GetSystemCapability.class));
}
+ /**
+ * Test to verify that we can get null for templatesAvailable without hitting an NPE and
+ * test media field conversion for NON_MEDIA to NON-MEDIA for Sync bug.
+ */
+ @Test
+ public void testMediaFieldConversion() {
+ SystemCapabilityManager systemCapabilityManager = new SystemCapabilityManager(new InternalSDLInterface());
+
+ RegisterAppInterfaceResponse raiResponse = new RegisterAppInterfaceResponse();
+ DisplayCapabilities displayCapabilities = new DisplayCapabilities();
+ displayCapabilities.setGraphicSupported(false);
+ TextField textField = new TextField();
+ textField.setName(TextFieldName.mainField1);
+ displayCapabilities.setTextFields(Collections.singletonList(textField));
+ raiResponse.setDisplayCapabilities(displayCapabilities);
+ raiResponse.setSuccess(true);
+ systemCapabilityManager.parseRAIResponse(raiResponse);
+
+ WindowCapability windowCapability = systemCapabilityManager.getDefaultMainWindowCapability();
+ assertNull(windowCapability.getTemplatesAvailable());
+
+ List<String> templates = new ArrayList<>();
+ templates.add("NON_MEDIA");
+ displayCapabilities.setTemplatesAvailable(templates);
+ systemCapabilityManager.parseRAIResponse(raiResponse);
+ windowCapability = systemCapabilityManager.getDefaultMainWindowCapability();
+ assertTrue(windowCapability.getTemplatesAvailable().contains("NON-MEDIA"));
+ }
+
@Test
public void testListConversion() {
SystemCapabilityManager systemCapabilityManager = createSampleManager();