diff --git a/unit/test-hfp.c b/unit/test-hfp.c
index f22a687..0602301 100644
--- a/unit/test-hfp.c
+++ b/unit/test-hfp.c
g_assert_cmpstr(operator_name, ==, "TEST");
}
+static void hf_call_added(uint id, enum hfp_call_status status,
+ void *user_data)
+{
+ struct context *context = user_data;
+ const char *test_name = context->data->test_name;
+
+ if (tester_use_debug())
+ tester_debug("call %d added: status %u", id, status);
+
+ if (g_str_equal(test_name, "/HFP/HF/CLI/BV-01-C")) {
+ g_assert_cmpint(id, ==, 1);
+ g_assert_cmpint(status, ==, CALL_STATUS_INCOMING);
+ }
+}
+
+static void hf_call_line_id_updated(uint id, const char *number,
+ unsigned int type,
+ void *user_data)
+{
+ struct context *context = user_data;
+ const char *str;
+
+ if (tester_use_debug())
+ tester_debug("call %d line id updated: %s, %u", id, number,
+ type);
+ g_assert_cmpint(id, ==, 1);
+ g_assert_cmpstr(number, ==, "1234567");
+ g_assert_cmpint(type, ==, 129);
+ str = hfp_hf_call_get_number(context->hfp_hf, id);
+ g_assert_cmpstr(number, ==, str);
+}
+
static struct hfp_hf_callbacks hf_session_callbacks = {
.session_ready = hf_session_ready_cb,
.update_indicator = hf_update_indicator,
.update_operator = hf_update_operator,
+ .call_added = hf_call_added,
+ .call_line_id_updated = hf_call_line_id_updated,
};
static void test_hf_session_done(enum hfp_result res, enum hfp_error cme_err,
MINIMAL_SLC_SESSION('0', '0', '0', '0'),
data_end());
+ /* Calling Line Identification - HF */
+ define_hf_test("/HFP/HF/CLI/BV-01-C", test_hf_session,
+ NULL, test_hf_session_done,
+ MINIMAL_SLC_SESSION('1', '0', '0', '0'),
+ frg_pdu('\r', '\n', '+', 'C', 'I', 'E', 'V', ':', ' ',
+ '3', ',', '1', '\r', '\n'),
+ frg_pdu('\r', '\n', 'R', 'I', 'N', 'G', '\r', '\n'),
+ frg_pdu('\r', '\n', '+', 'C', 'L', 'I', 'P', ':',
+ '\"', '1', '2', '3', '4', '5', '6', '7', '\"',
+ ',', '1', '2', '9', ',', ',', '\r', '\n'),
+ data_end());
+
/* Transfer Signal Strength Indication - HF */
define_hf_test("/HFP/HF/PSI/BV-01-C", test_hf_session,
NULL, test_hf_session_done,