summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBilal Alsharifi <bilal.alsharifi@gmail.com>2019-09-13 16:14:02 -0400
committerBilal Alsharifi <bilal.alsharifi@gmail.com>2019-09-13 16:14:02 -0400
commitb75359c7c5743c3728d83634e4bde7047ff528b8 (patch)
tree43290319adf268d5884e24337c5587bb3bc37db3
parentc5d2e936780f6b9a2e2fa237931dd8f99dd46b5f (diff)
downloadsdl_android-b75359c7c5743c3728d83634e4bde7047ff528b8.tar.gz
Move menuLayoutsAvailable to WindowCapabilitymove_menuLayoutsAvailable
-rw-r--r--android/sdl_android/src/androidTest/java/com/smartdevicelink/test/rpc/datatypes/DisplayCapabilitiesTests.java14
-rw-r--r--android/sdl_android/src/androidTest/java/com/smartdevicelink/test/rpc/datatypes/WindowCapabilityTests.java12
-rw-r--r--base/src/main/java/com/smartdevicelink/managers/screen/BaseScreenManager.java4
-rw-r--r--base/src/main/java/com/smartdevicelink/proxy/rpc/DisplayCapabilities.java27
-rw-r--r--base/src/main/java/com/smartdevicelink/proxy/rpc/WindowCapability.java22
5 files changed, 38 insertions, 41 deletions
diff --git a/android/sdl_android/src/androidTest/java/com/smartdevicelink/test/rpc/datatypes/DisplayCapabilitiesTests.java b/android/sdl_android/src/androidTest/java/com/smartdevicelink/test/rpc/datatypes/DisplayCapabilitiesTests.java
index 742c4d03d..28d7e1460 100644
--- a/android/sdl_android/src/androidTest/java/com/smartdevicelink/test/rpc/datatypes/DisplayCapabilitiesTests.java
+++ b/android/sdl_android/src/androidTest/java/com/smartdevicelink/test/rpc/datatypes/DisplayCapabilitiesTests.java
@@ -43,7 +43,6 @@ public class DisplayCapabilitiesTests extends TestCase{
msg.setMediaClockFormats(Test.GENERAL_MEDIACLOCKFORMAT_LIST);
msg.setScreenParams(Test.GENERAL_SCREENPARAMS);
msg.setTemplatesAvailable(Test.GENERAL_STRING_LIST);
- msg.setMenuLayoutsAvailable(Test.GENERAL_MENU_LAYOUT_LIST);
}
/**
@@ -60,8 +59,7 @@ public class DisplayCapabilitiesTests extends TestCase{
List<MediaClockFormat> mediaClock = msg.getMediaClockFormats();
List<TextField> textFields = msg.getTextFields();
List<ImageField> imageFields = msg.getImageFields();
- List<MenuLayout> menuLayouts = msg.getMenuLayoutsAvailable();
-
+
// Valid Tests
assertEquals(Test.MATCH, Test.GENERAL_BOOLEAN, graphicSupported);
assertEquals(Test.MATCH, Test.GENERAL_INT, numPresets);
@@ -72,8 +70,7 @@ public class DisplayCapabilitiesTests extends TestCase{
assertEquals(Test.MATCH, Test.GENERAL_MEDIACLOCKFORMAT_LIST.size(), mediaClock.size());
assertEquals(Test.MATCH, Test.GENERAL_TEXTFIELD_LIST.size(), textFields.size());
assertEquals(Test.MATCH, Test.GENERAL_IMAGEFIELD_LIST.size(), imageFields.size());
- assertEquals(Test.MATCH, Test.GENERAL_MENU_LAYOUT_LIST.size(), menuLayouts.size());
-
+
for(int i = 0; i < Test.GENERAL_STRING_LIST.size(); i++){
assertEquals(Test.MATCH, Test.GENERAL_STRING_LIST.get(i), templatesAvailable.get(i));
}
@@ -90,9 +87,6 @@ public class DisplayCapabilitiesTests extends TestCase{
assertTrue(Test.TRUE, Validator.validateImageFields(Test.GENERAL_IMAGEFIELD_LIST.get(i), imageFields.get(i)));
}
- for(int i = 0; i < Test.GENERAL_MENU_LAYOUT_LIST.size(); i++){
- assertEquals(Test.MATCH, Test.GENERAL_MENU_LAYOUT_LIST.get(i), menuLayouts.get(i));
- }
// Invalid/Null Tests
DisplayCapabilities msg = new DisplayCapabilities();
@@ -107,7 +101,6 @@ public class DisplayCapabilitiesTests extends TestCase{
assertNull(Test.NULL, msg.getScreenParams());
assertNull(Test.NULL, msg.getTemplatesAvailable());
assertNull(Test.NULL, msg.getTextFields());
- assertNull(Test.NULL, msg.getMenuLayoutsAvailable());
}
public void testJson(){
@@ -123,7 +116,6 @@ public class DisplayCapabilitiesTests extends TestCase{
reference.put(DisplayCapabilities.KEY_TEXT_FIELDS, Test.JSON_TEXTFIELDS);
reference.put(DisplayCapabilities.KEY_IMAGE_FIELDS, Test.JSON_IMAGEFIELDS);
reference.put(DisplayCapabilities.KEY_SCREEN_PARAMS, Test.JSON_SCREENPARAMS);
- reference.put(DisplayCapabilities.KEY_MENU_LAYOUTS_AVAILABLE, JsonUtils.createJsonArray(Test.GENERAL_MENU_LAYOUT_LIST));
JSONObject underTest = msg.serializeJSON();
assertEquals(Test.MATCH, reference.length(), underTest.length());
@@ -163,7 +155,7 @@ public class DisplayCapabilitiesTests extends TestCase{
Hashtable<String, Object> hashTest= JsonRPCMarshaller.deserializeJSONObject(underTestArray);
assertTrue(Test.TRUE, Validator.validateScreenParams(new ScreenParams(hashReference), new ScreenParams(hashTest)));
- } else if(key.equals(DisplayCapabilities.KEY_MEDIA_CLOCK_FORMATS) || key.equals(DisplayCapabilities.KEY_MENU_LAYOUTS_AVAILABLE)){
+ } else if(key.equals(DisplayCapabilities.KEY_MEDIA_CLOCK_FORMATS)){
JSONArray referenceArray = JsonUtils.readJsonArrayFromJsonObject(reference, key);
JSONArray underTestArray = JsonUtils.readJsonArrayFromJsonObject(underTest, key);
assertEquals(Test.MATCH, referenceArray.length(), underTestArray.length());
diff --git a/android/sdl_android/src/androidTest/java/com/smartdevicelink/test/rpc/datatypes/WindowCapabilityTests.java b/android/sdl_android/src/androidTest/java/com/smartdevicelink/test/rpc/datatypes/WindowCapabilityTests.java
index 07d2cbd49..973c6e0b8 100644
--- a/android/sdl_android/src/androidTest/java/com/smartdevicelink/test/rpc/datatypes/WindowCapabilityTests.java
+++ b/android/sdl_android/src/androidTest/java/com/smartdevicelink/test/rpc/datatypes/WindowCapabilityTests.java
@@ -7,6 +7,7 @@ import com.smartdevicelink.proxy.rpc.SoftButtonCapabilities;
import com.smartdevicelink.proxy.rpc.TextField;
import com.smartdevicelink.proxy.rpc.WindowCapability;
import com.smartdevicelink.proxy.rpc.enums.ImageType;
+import com.smartdevicelink.proxy.rpc.enums.MenuLayout;
import com.smartdevicelink.test.JsonUtils;
import com.smartdevicelink.test.Test;
import com.smartdevicelink.test.Validator;
@@ -39,6 +40,7 @@ public class WindowCapabilityTests extends TestCase {
msg.setNumCustomPresetsAvailable(Test.GENERAL_INT);
msg.setButtonCapabilities(Test.GENERAL_BUTTONCAPABILITIES_LIST);
msg.setSoftButtonCapabilities(Test.GENERAL_SOFTBUTTONCAPABILITIES_LIST);
+ msg.setMenuLayoutsAvailable(Test.GENERAL_MENU_LAYOUT_LIST);
}
/**
@@ -54,6 +56,7 @@ public class WindowCapabilityTests extends TestCase {
int numCustomPresetsAvailable = msg.getNumCustomPresetsAvailable();
List<ButtonCapabilities> buttonCapabilities = msg.getButtonCapabilities();
List<SoftButtonCapabilities> softButtonCapabilities = msg.getSoftButtonCapabilities();
+ List<MenuLayout> menuLayouts = msg.getMenuLayoutsAvailable();
// Valid Tests
assertEquals(Test.MATCH, Test.GENERAL_INT, windowID);
@@ -64,6 +67,7 @@ public class WindowCapabilityTests extends TestCase {
assertEquals(Test.MATCH, Test.GENERAL_INT, numCustomPresetsAvailable);
assertEquals(Test.MATCH, Test.GENERAL_BUTTONCAPABILITIES_LIST.size(), buttonCapabilities.size());
assertEquals(Test.MATCH, Test.GENERAL_SOFTBUTTONCAPABILITIES_LIST.size(), softButtonCapabilities.size());
+ assertEquals(Test.MATCH, Test.GENERAL_MENU_LAYOUT_LIST.size(), menuLayouts.size());
for (int i = 0; i < Test.GENERAL_TEXTFIELD_LIST.size(); i++) {
assertTrue(Test.TRUE, Validator.validateTextFields(Test.GENERAL_TEXTFIELD_LIST.get(i), textFields.get(i)));
@@ -81,6 +85,10 @@ public class WindowCapabilityTests extends TestCase {
assertEquals(Test.MATCH, Test.GENERAL_STRING_LIST.get(i), templatesAvailable.get(i));
}
+ for(int i = 0; i < Test.GENERAL_MENU_LAYOUT_LIST.size(); i++){
+ assertEquals(Test.MATCH, Test.GENERAL_MENU_LAYOUT_LIST.get(i), menuLayouts.get(i));
+ }
+
assertTrue(Test.TRUE, Validator.validateButtonCapabilities(Test.GENERAL_BUTTONCAPABILITIES_LIST, buttonCapabilities));
assertTrue(Test.TRUE, Validator.validateSoftButtonCapabilities(Test.GENERAL_SOFTBUTTONCAPABILITIES_LIST, softButtonCapabilities));
@@ -96,6 +104,7 @@ public class WindowCapabilityTests extends TestCase {
assertNull(Test.NULL, msg.getNumCustomPresetsAvailable());
assertNull(Test.NULL, msg.getButtonCapabilities());
assertNull(Test.NULL, msg.getSoftButtonCapabilities());
+ assertNull(Test.NULL, msg.getMenuLayoutsAvailable());
}
public void testJson() {
@@ -110,6 +119,7 @@ public class WindowCapabilityTests extends TestCase {
reference.put(WindowCapability.KEY_NUM_CUSTOM_PRESETS_AVAILABLE, Test.GENERAL_INT);
reference.put(WindowCapability.KEY_BUTTON_CAPABILITIES, Test.JSON_BUTTONCAPABILITIES);
reference.put(WindowCapability.KEY_SOFT_BUTTON_CAPABILITIES, Test.JSON_SOFTBUTTONCAPABILITIES);
+ reference.put(WindowCapability.KEY_MENU_LAYOUTS_AVAILABLE, JsonUtils.createJsonArray(Test.GENERAL_MENU_LAYOUT_LIST));
JSONObject underTest = msg.serializeJSON();
assertEquals(Test.MATCH, reference.length(), underTest.length());
@@ -171,7 +181,7 @@ public class WindowCapabilityTests extends TestCase {
testList.add(new SoftButtonCapabilities(hashTest));
}
assertTrue(Test.TRUE, Validator.validateSoftButtonCapabilities(referenceList, testList));
- } else if (key.equals(WindowCapability.KEY_IMAGE_TYPE_SUPPORTED)) {
+ } else if (key.equals(WindowCapability.KEY_IMAGE_TYPE_SUPPORTED) || (key.equals(WindowCapability.KEY_MENU_LAYOUTS_AVAILABLE))) {
List<String> referenceList = JsonUtils.readStringListFromJsonObject(reference, key);
List<String> underTestList = JsonUtils.readStringListFromJsonObject(underTest, key);
diff --git a/base/src/main/java/com/smartdevicelink/managers/screen/BaseScreenManager.java b/base/src/main/java/com/smartdevicelink/managers/screen/BaseScreenManager.java
index 0a9404c4c..a63333032 100644
--- a/base/src/main/java/com/smartdevicelink/managers/screen/BaseScreenManager.java
+++ b/base/src/main/java/com/smartdevicelink/managers/screen/BaseScreenManager.java
@@ -464,7 +464,7 @@ abstract class BaseScreenManager extends BaseSubManager {
}
/**
- * The main menu layout. See available menu layouts on DisplayCapabilities.menuLayoutsAvailable.
+ * The main menu layout. See available menu layouts on WindowCapability.menuLayoutsAvailable.
* @param menuConfiguration - The default menuConfiguration
*/
public void setMenuConfiguration(@NonNull MenuConfiguration menuConfiguration) {
@@ -472,7 +472,7 @@ abstract class BaseScreenManager extends BaseSubManager {
}
/**
- * The main menu layout. See available menu layouts on DisplayCapabilities.menuLayoutsAvailable.
+ * The main menu layout. See available menu layouts on WindowCapability.menuLayoutsAvailable.
* @return the currently set MenuConfiguration
*/
public MenuConfiguration getMenuConfiguration(){
diff --git a/base/src/main/java/com/smartdevicelink/proxy/rpc/DisplayCapabilities.java b/base/src/main/java/com/smartdevicelink/proxy/rpc/DisplayCapabilities.java
index 8f0fc3fb4..c8803e390 100644
--- a/base/src/main/java/com/smartdevicelink/proxy/rpc/DisplayCapabilities.java
+++ b/base/src/main/java/com/smartdevicelink/proxy/rpc/DisplayCapabilities.java
@@ -36,7 +36,6 @@ import android.support.annotation.NonNull;
import com.smartdevicelink.proxy.RPCStruct;
import com.smartdevicelink.proxy.rpc.enums.DisplayType;
import com.smartdevicelink.proxy.rpc.enums.MediaClockFormat;
-import com.smartdevicelink.proxy.rpc.enums.MenuLayout;
import com.smartdevicelink.util.Version;
import java.util.Hashtable;
@@ -86,12 +85,6 @@ import java.util.List;
* <td>The display's persistent screen supports referencing a static or dynamic image.</td>
* <td>SmartDeviceLink 2.0</td>
* </tr>
- * <tr>
- * <td>menuLayoutsAvailable</td>
- * <td>MenuLayout[]</td>
- * <td>An array of available menu layouts. If this parameter is not provided, only the `LIST` layout is assumed to be available</td>
- * <td>SmartDeviceLink 6.0</td>
- * </tr>
* </table>
* @since SmartDeviceLink 1.0
* @see DisplayType
@@ -110,7 +103,6 @@ public class DisplayCapabilities extends RPCStruct {
public static final String KEY_SCREEN_PARAMS = "screenParams";
public static final String KEY_TEMPLATES_AVAILABLE = "templatesAvailable";
public static final String KEY_NUM_CUSTOM_PRESETS_AVAILABLE = "numCustomPresetsAvailable";
- public static final String KEY_MENU_LAYOUTS_AVAILABLE = "menuLayoutsAvailable";
/**
* Constructs a newly allocated DisplayCapabilities object
*/
@@ -279,23 +271,4 @@ public class DisplayCapabilities extends RPCStruct {
public ScreenParams getScreenParams() {
return (ScreenParams) getObject(ScreenParams.class, KEY_SCREEN_PARAMS);
}
-
- /**
- * An array of available menu layouts. If this parameter is not provided, only the `LIST` layout
- * is assumed to be available
- * @param menuLayout - An array of MenuLayouts
- */
- public void setMenuLayoutsAvailable(List<MenuLayout> menuLayout) {
- setValue(KEY_MENU_LAYOUTS_AVAILABLE, menuLayout);
- }
-
- /**
- * An array of available menu layouts. If this parameter is not provided, only the `LIST` layout
- * is assumed to be available
- * @return MenuLayout[]
- */
- @SuppressWarnings("unchecked")
- public List<MenuLayout> getMenuLayoutsAvailable() {
- return (List<MenuLayout>) getObject(MenuLayout.class, KEY_MENU_LAYOUTS_AVAILABLE);
- }
}
diff --git a/base/src/main/java/com/smartdevicelink/proxy/rpc/WindowCapability.java b/base/src/main/java/com/smartdevicelink/proxy/rpc/WindowCapability.java
index dfca9956d..6974c82db 100644
--- a/base/src/main/java/com/smartdevicelink/proxy/rpc/WindowCapability.java
+++ b/base/src/main/java/com/smartdevicelink/proxy/rpc/WindowCapability.java
@@ -2,6 +2,8 @@ package com.smartdevicelink.proxy.rpc;
import com.smartdevicelink.proxy.RPCStruct;
import com.smartdevicelink.proxy.rpc.enums.ImageType;
+import com.smartdevicelink.proxy.rpc.enums.MenuLayout;
+
import java.util.Hashtable;
import java.util.List;
@@ -17,6 +19,7 @@ public class WindowCapability extends RPCStruct {
public static final String KEY_NUM_CUSTOM_PRESETS_AVAILABLE = "numCustomPresetsAvailable";
public static final String KEY_BUTTON_CAPABILITIES = "buttonCapabilities";
public static final String KEY_SOFT_BUTTON_CAPABILITIES = "softButtonCapabilities";
+ public static final String KEY_MENU_LAYOUTS_AVAILABLE = "menuLayoutsAvailable";
public WindowCapability() {
}
@@ -183,4 +186,23 @@ public class WindowCapability extends RPCStruct {
public List<SoftButtonCapabilities> getSoftButtonCapabilities() {
return (List<SoftButtonCapabilities>) getObject(SoftButtonCapabilities.class, KEY_SOFT_BUTTON_CAPABILITIES);
}
+
+ /**
+ * An array of available menu layouts. If this parameter is not provided, only the `LIST` layout
+ * is assumed to be available
+ * @param menuLayout - An array of MenuLayouts
+ */
+ public void setMenuLayoutsAvailable(List<MenuLayout> menuLayout) {
+ setValue(KEY_MENU_LAYOUTS_AVAILABLE, menuLayout);
+ }
+
+ /**
+ * An array of available menu layouts. If this parameter is not provided, only the `LIST` layout
+ * is assumed to be available
+ * @return MenuLayout[]
+ */
+ @SuppressWarnings("unchecked")
+ public List<MenuLayout> getMenuLayoutsAvailable() {
+ return (List<MenuLayout>) getObject(MenuLayout.class, KEY_MENU_LAYOUTS_AVAILABLE);
+ }
}