From 6e961ddd83b9f5aea64ee73ecb1398a3466d5509 Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Thu, 5 Jan 2012 11:05:32 -0600 Subject: qcdm: fix up live testcase for recent changes And interpret all the recent mode preferences. --- libqcdm/src/commands.c | 16 ++++++++++++---- libqcdm/src/commands.h | 11 ++++++++--- libqcdm/tests/test-qcdm-com.c | 33 ++++++++++++++++++++++++--------- 3 files changed, 44 insertions(+), 16 deletions(-) (limited to 'libqcdm') diff --git a/libqcdm/src/commands.c b/libqcdm/src/commands.c index 90134554..2301baff 100644 --- a/libqcdm/src/commands.c +++ b/libqcdm/src/commands.c @@ -792,11 +792,19 @@ qcdm_cmd_nv_set_roam_pref_result (const char *buf, size_t len, int *out_error) static qcdmbool mode_pref_validate (u_int8_t dm) { - if ( dm == DIAG_NV_MODE_PREF_1X_ONLY - || dm == DIAG_NV_MODE_PREF_HDR_ONLY - || dm == DIAG_NV_MODE_PREF_AUTO) + switch (dm) { + case DIAG_NV_MODE_PREF_DIGITAL: + case DIAG_NV_MODE_PREF_DIGITAL_ONLY: + case DIAG_NV_MODE_PREF_AUTO: + case DIAG_NV_MODE_PREF_1X_ONLY: + case DIAG_NV_MODE_PREF_HDR_ONLY: + case DIAG_NV_MODE_PREF_1X_HDR_ONLY: + case DIAG_NV_MODE_PREF_LTE_ONLY: + case DIAG_NV_MODE_PREF_1X_HDR_LTE_ONLY: return TRUE; - return FALSE; + default: + return FALSE; + } } size_t diff --git a/libqcdm/src/commands.h b/libqcdm/src/commands.h index 84e9456d..56dc036d 100644 --- a/libqcdm/src/commands.h +++ b/libqcdm/src/commands.h @@ -260,9 +260,14 @@ QcdmResult *qcdm_cmd_nv_set_roam_pref_result (const char *buf, /* Values for QCDM_CMD_NV_GET_MODE_PREF_ITEM_MODE_PREF */ enum { - QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_AUTO = 0x04, - QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_1X_ONLY = 0x09, - QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_HDR_ONLY = 0x0A, + QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_DIGITAL = 0x00, + QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_DIGITAL_ONLY = 0x01, + QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_AUTO = 0x04, + QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_1X_ONLY = 0x09, + QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_HDR_ONLY = 0x0A, + QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_1X_HDR_ONLY = 0x0D, + QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_LTE_ONLY = 0x1E, + QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_1X_HDR_LTE_ONLY = 0x24, }; #define QCDM_CMD_NV_GET_MODE_PREF_ITEM_PROFILE "profile" diff --git a/libqcdm/tests/test-qcdm-com.c b/libqcdm/tests/test-qcdm-com.c index daccca16..727c2578 100644 --- a/libqcdm/tests/test-qcdm-com.c +++ b/libqcdm/tests/test-qcdm-com.c @@ -492,8 +492,8 @@ test_com_read_roam_pref (void *f, void *data) g_print ("\n"); - success = qcdm_result_get_u8 (result, QCDM_CMD_NV_GET_ROAM_PREF_ITEM_ROAM_PREF, &pref); - g_assert (success); + err = qcdm_result_get_u8 (result, QCDM_CMD_NV_GET_ROAM_PREF_ITEM_ROAM_PREF, &pref); + g_assert_cmpint (err, ==, QCDM_SUCCESS); switch (pref) { case QCDM_CMD_NV_ROAM_PREF_ITEM_ROAM_PREF_HOME_ONLY: @@ -545,18 +545,33 @@ test_com_read_mode_pref (void *f, void *data) g_print ("\n"); - success = qcdm_result_get_u8 (result, QCDM_CMD_NV_GET_MODE_PREF_ITEM_MODE_PREF, &pref); - g_assert (success); + err = qcdm_result_get_u8 (result, QCDM_CMD_NV_GET_MODE_PREF_ITEM_MODE_PREF, &pref); + g_assert_cmpint (err, ==, QCDM_SUCCESS); switch (pref) { + case QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_DIGITAL: + msg = "digital"; + break; + case QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_DIGITAL_ONLY: + msg = "digital only"; + break; + case QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_AUTO: + msg = "automatic"; + break; case QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_1X_ONLY: - msg = "1X only"; + msg = "CDMA 1x only"; break; case QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_HDR_ONLY: msg = "HDR only"; break; - case QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_AUTO: - msg = "automatic"; + case QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_1X_HDR_ONLY: + msg = "CDMA 1x and HDR only"; + break; + case QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_LTE_ONLY: + msg = "LTE only"; + break; + case QCDM_CMD_NV_MODE_PREF_ITEM_MODE_PREF_1X_HDR_LTE_ONLY: + msg = "CDMA 1x, HDR, and LTE only"; break; default: msg = "unknown"; @@ -599,8 +614,8 @@ test_com_read_hdr_rev_pref (void *f, void *data) g_print ("\n"); - success = qcdm_result_get_u8 (result, QCDM_CMD_NV_GET_HDR_REV_PREF_ITEM_REV_PREF, &pref); - g_assert (success); + err = qcdm_result_get_u8 (result, QCDM_CMD_NV_GET_HDR_REV_PREF_ITEM_REV_PREF, &pref); + g_assert_cmpint (err, ==, QCDM_SUCCESS); switch (pref) { case QCDM_CMD_NV_HDR_REV_PREF_ITEM_REV_PREF_0: -- cgit v1.2.3