ui-call-data: Implement call-type property
Added tests for the newly added property and tests for the newly created helper functions Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/806>
This commit is contained in:
committed by
Evangelos Ribeiro Tzaras
parent
f2083c0d4e
commit
d7bd51828e
@@ -38,6 +38,7 @@ enum {
|
||||
PROP_DISPLAY_NAME,
|
||||
PROP_ID,
|
||||
PROP_STATE,
|
||||
PROP_CALL_TYPE,
|
||||
PROP_ENCRYPTED,
|
||||
PROP_CAN_DTMF,
|
||||
PROP_AVATAR_ICON,
|
||||
@@ -66,6 +67,8 @@ struct _CallsUiCallData {
|
||||
guint timer_id;
|
||||
|
||||
CuiCallState state;
|
||||
CuiCallType call_type;
|
||||
|
||||
char *origin_id;
|
||||
gboolean silenced;
|
||||
|
||||
@@ -114,6 +117,16 @@ calls_ui_call_data_get_state (CuiCall *call_data)
|
||||
return self->state;
|
||||
}
|
||||
|
||||
static CuiCallType
|
||||
calls_ui_call_data_get_cui_call_type (CuiCall *call_data)
|
||||
{
|
||||
CallsUiCallData *self = (CallsUiCallData *) call_data;
|
||||
|
||||
g_return_val_if_fail (CALLS_IS_UI_CALL_DATA (self), CUI_CALL_TYPE_UNKNOWN);
|
||||
g_return_val_if_fail (!!self->call, CUI_CALL_TYPE_UNKNOWN);
|
||||
|
||||
return self->call_type;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
calls_ui_call_data_get_encrypted (CuiCall *call_data)
|
||||
@@ -220,6 +233,7 @@ calls_ui_call_data_cui_call_interface_init (CuiCallInterface *iface)
|
||||
iface->get_id = calls_ui_call_data_get_id;
|
||||
iface->get_display_name = calls_ui_call_data_get_display_name;
|
||||
iface->get_state = calls_ui_call_data_get_state;
|
||||
iface->get_call_type = calls_ui_call_data_get_cui_call_type;
|
||||
iface->get_encrypted = calls_ui_call_data_get_encrypted;
|
||||
iface->get_can_dtmf = calls_ui_call_data_get_can_dtmf;
|
||||
iface->get_avatar_icon = calls_ui_call_data_get_avatar_icon;
|
||||
@@ -352,6 +366,8 @@ set_call_data (CallsUiCallData *self,
|
||||
|
||||
on_notify_state (self);
|
||||
|
||||
self->call_type = calls_call_get_call_type (call);
|
||||
|
||||
manager = calls_manager_get_default ();
|
||||
contacts_provider = calls_manager_get_contacts_provider (manager);
|
||||
|
||||
@@ -491,6 +507,10 @@ calls_ui_call_data_get_property (GObject *object,
|
||||
g_value_set_enum (value, calls_ui_call_data_get_state (cui_call));
|
||||
break;
|
||||
|
||||
case PROP_CALL_TYPE:
|
||||
g_value_set_enum (value, calls_ui_call_data_get_cui_call_type (cui_call));
|
||||
break;
|
||||
|
||||
case PROP_ENCRYPTED:
|
||||
g_value_set_boolean (value, calls_ui_call_data_get_encrypted (cui_call));
|
||||
break;
|
||||
@@ -616,6 +636,9 @@ calls_ui_call_data_class_init (CallsUiCallDataClass *klass)
|
||||
g_object_class_override_property (object_class, PROP_STATE, "state");
|
||||
props[PROP_STATE] = g_object_class_find_property (object_class, "state");
|
||||
|
||||
g_object_class_override_property (object_class, PROP_CALL_TYPE, "call-type");
|
||||
props[PROP_CALL_TYPE] = g_object_class_find_property (object_class, "call-type");
|
||||
|
||||
g_object_class_override_property (object_class, PROP_ENCRYPTED, "encrypted");
|
||||
props[PROP_ENCRYPTED] = g_object_class_find_property (object_class, "encrypted");
|
||||
|
||||
@@ -782,3 +805,23 @@ calls_call_state_to_cui_call_state (CallsCallState state)
|
||||
return CUI_CALL_STATE_UNKNOWN;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* calls_call_type_to_cui_call_type:
|
||||
* @type: A #CallsCallType
|
||||
*
|
||||
* Returns: a #CuiCallType @type is mapped to.
|
||||
*/
|
||||
CuiCallType
|
||||
calls_call_type_to_cui_call_type(CallsCallType type)
|
||||
{
|
||||
switch (type) {
|
||||
case CALLS_CALL_TYPE_CELLULAR:
|
||||
return CUI_CALL_TYPE_CELLULAR;
|
||||
case CALLS_CALL_TYPE_SIP_VOICE:
|
||||
return CUI_CALL_TYPE_SIP_VOICE;
|
||||
case CALLS_CALL_TYPE_UNKNOWN:
|
||||
default:
|
||||
return CUI_CALL_STATE_UNKNOWN;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -45,5 +45,5 @@ const char *calls_ui_call_data_get_origin_id (CallsUiCallData *self);
|
||||
char *calls_ui_call_data_dup_origin_name (CallsUiCallData *self);
|
||||
|
||||
CuiCallState calls_call_state_to_cui_call_state (CallsCallState state);
|
||||
|
||||
CuiCallType calls_call_type_to_cui_call_type (CallsCallType type);
|
||||
G_END_DECLS
|
||||
|
||||
@@ -30,6 +30,17 @@ test_cui_call_state_mapping (void)
|
||||
g_assert_cmpint (calls_call_state_to_cui_call_state (42), ==, CUI_CALL_STATE_UNKNOWN);
|
||||
}
|
||||
|
||||
static void
|
||||
test_cui_call_type_mapping (void)
|
||||
{
|
||||
g_assert_cmpint (calls_call_type_to_cui_call_type (CALLS_CALL_TYPE_CELLULAR),
|
||||
==, CUI_CALL_TYPE_CELLULAR);
|
||||
g_assert_cmpint (calls_call_type_to_cui_call_type (CALLS_CALL_TYPE_SIP_VOICE),
|
||||
==, CUI_CALL_TYPE_SIP_VOICE);
|
||||
g_assert_cmpint (calls_call_type_to_cui_call_type (CALLS_CALL_TYPE_UNKNOWN),
|
||||
==, CUI_CALL_TYPE_UNKNOWN);
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
test_cui_call_properties (void)
|
||||
@@ -52,7 +63,9 @@ test_cui_call_properties (void)
|
||||
g_assert_cmpstr (calls_call_get_id (call), ==, cui_call_get_id (cui_call));
|
||||
g_assert_cmpstr (calls_call_get_name (call), ==, cui_call_get_display_name (cui_call));
|
||||
g_assert_cmpint (calls_call_state_to_cui_call_state (calls_call_get_state (call)), ==,
|
||||
cui_call_get_state (cui_call));
|
||||
cui_call_get_state (cui_call));
|
||||
g_assert_cmpint (calls_call_type_to_cui_call_type (calls_call_get_call_type(call)), ==,
|
||||
cui_call_get_call_type(cui_call));
|
||||
|
||||
g_object_get (cui_call, "inbound", &inbound, NULL);
|
||||
g_assert_true (calls_call_get_inbound (call) == inbound);
|
||||
@@ -83,6 +96,7 @@ main (int argc,
|
||||
g_test_init (&argc, &argv, NULL);
|
||||
|
||||
g_test_add_func ("/Calls/UI/state_mapping", (GTestFunc) test_cui_call_state_mapping);
|
||||
g_test_add_func ("/Calls/UI/type_mapping", (GTestFunc) test_cui_call_type_mapping);
|
||||
g_test_add_func ("/Calls/UI/call_properties", (GTestFunc) test_cui_call_properties);
|
||||
|
||||
g_test_run ();
|
||||
|
||||
Reference in New Issue
Block a user