g_subscribed = false;
g_discovered = false;
g_message_received = false;
+ g_session_terminated = false;
WifiAware::SetUp();
wifi_aware_enable(WifiAware::__enabled_cb, NULL);
RUN_GMAIN_LOOP;
static void __received_cb(wifi_aware_session_h session,
wifi_aware_peer_h peer,
const unsigned char *message, size_t len, void *user_data);
+ static void __session_terminated_cb(wifi_aware_session_h session,
+ wifi_aware_termination_reason_e reason, void *user_data);
static bool g_published;
static bool g_subscribed;
static bool g_discovered;
static bool g_message_received;
+ static bool g_session_terminated;
wifi_aware_publish_h g_publish_config;
wifi_aware_subscribe_h g_subscribe_config;
bool WifiAwareSession::g_subscribed;
bool WifiAwareSession::g_discovered;
bool WifiAwareSession::g_message_received;
+bool WifiAwareSession::g_session_terminated;
void WifiAwareSession::__published_cb(wifi_aware_session_h session, wifi_aware_error_e error, void *user_data)
{
QUIT_GMAIN_LOOP;
}
+void WifiAwareSession::__session_terminated_cb(wifi_aware_session_h session,
+ wifi_aware_termination_reason_e reason, void *user_data)
+{
+ g_session_terminated = true;
+ QUIT_GMAIN_LOOP;
+}
+
TEST_F(WifiAwareSession, wifi_aware_session_create_p1)
{
int ret = 0;
{
int ret = 0;
- wifi_aware_session_create(WIFI_AWARE_SESSION_PUBLISH, &g_session);
+ wifi_aware_session_h session = __create_dummy_session(WIFI_AWARE_SESSION_PUBLISH);
- ret = wifi_aware_session_set_terminated_cb(g_session, NULL, NULL);
+ ret = wifi_aware_session_set_terminated_cb(session, __session_terminated_cb, NULL);
CHECK_RESULT(WIFI_AWARE_ERROR_NONE, ret, "wifi_aware_session_set_terminated_cb");
- wifi_aware_session_destroy(g_session);
+ wifi_aware_mock_emit_gdbus_signal(SESSION_TERMINATED);
+ RUN_GMAIN_LOOP;
+
+ ASSERT_TRUE(g_session_terminated) << "SessionTerminated signal";
+
+ __destroy_dummy_session(session);
}
TEST_F(WifiAwareSession, wifi_aware_session_set_terminated_cb_n)
// wifi_aware_service_discovered_cb is called
TEST_F(WifiAwareSession, wifi_aware_service_discovered_cb_p)
{
- wifi_aware_subscribe_create(&g_subscribe_config);
- wifi_aware_subscribe_set_service_name(g_subscribe_config, SERVICE_NAME);
- wifi_aware_session_create(WIFI_AWARE_SESSION_SUBSCRIBE, &g_session);
+ wifi_aware_session_h session = __create_dummy_session(WIFI_AWARE_SESSION_SUBSCRIBE);
- wifi_aware_session_set_service_discovered_cb(g_session, __discovered_cb, NULL);
- wifi_aware_session_subscribe(g_session, g_subscribe_config, WifiAwareSession::__subscribed_cb, NULL);
- RUN_GMAIN_LOOP;
+ wifi_aware_session_set_service_discovered_cb(session, __discovered_cb, NULL);
wifi_aware_mock_emit_gdbus_signal(SERVICE_DISCOVERED);
RUN_GMAIN_LOOP;
- CHECK_RESULT(g_discovered, true, "service_discovered_cb");
+ ASSERT_TRUE(g_discovered) << "ServiceDiscovered signal";
- wifi_aware_session_stop(g_session);
- wifi_aware_session_destroy(g_session);
- wifi_aware_subscribe_destroy(g_subscribe_config);
+ __destroy_dummy_session(session);
}
// wifi_aware_service_discovered_cb is not called
TEST_F(WifiAwareSession, wifi_aware_service_discovered_cb_n)
{
- wifi_aware_subscribe_create(&g_subscribe_config);
- wifi_aware_subscribe_set_service_name(g_subscribe_config, SERVICE_NAME);
- wifi_aware_session_create(WIFI_AWARE_SESSION_SUBSCRIBE, &g_session);
-
- wifi_aware_session_set_service_discovered_cb(g_session, __discovered_cb, NULL);
- wifi_aware_session_subscribe(g_session, g_subscribe_config, WifiAwareSession::__subscribed_cb, NULL);
- RUN_GMAIN_LOOP;
+ wifi_aware_session_h session = __create_dummy_session(WIFI_AWARE_SESSION_SUBSCRIBE);
+ wifi_aware_session_set_service_discovered_cb(session, __discovered_cb, NULL);
RUN_GMAIN_LOOP;
CHECK_RESULT(g_discovered, false, "service_discovered_cb");
- wifi_aware_session_stop(g_session);
- wifi_aware_session_destroy(g_session);
- wifi_aware_subscribe_destroy(g_subscribe_config);
+ __destroy_dummy_session(session);
}
TEST_F(WifiAwareSession, wifi_aware_session_set_service_discovered_cb_n1)
wifi_aware_mock_emit_gdbus_signal(MESSAGE_RECEIVED);
RUN_GMAIN_LOOP;
- CHECK_RESULT(g_message_received, true, "message_received_cb");
+ ASSERT_TRUE(g_message_received) << "MessageReceived signal";
wifi_aware_session_stop(g_session);
wifi_aware_session_destroy(g_session);
} __wifi_aware_peer_s;
typedef struct {
- uint16_t ttl;
- wifi_aware_publish_type_e publish_type;
- char service_name[MAX_SERVICE_NAME_LEN + 1];
- uint8_t specific_info[MAX_SERVICE_SPECIFIC_INFO_LEN];
- uint16_t specific_info_len;
- uint8_t match_filter[MAX_MATCH_FILTER_LEN];
- uint16_t match_filter_len;
- bool enable_ranging;
+ uint16_t ttl;
+ wifi_aware_publish_type_e publish_type;
+ char service_name[MAX_SERVICE_NAME_LEN + 1];
+ uint8_t specific_info[MAX_SERVICE_SPECIFIC_INFO_LEN];
+ uint16_t specific_info_len;
+ uint8_t match_filter[MAX_MATCH_FILTER_LEN];
+ uint16_t match_filter_len;
+ bool enable_ranging;
} __wifi_aware_publish_request_s;
typedef struct {
- uint16_t ttl;
- wifi_aware_subscribe_type_e subscribe_type;
- char service_name[MAX_SERVICE_NAME_LEN + 1];
- uint8_t specific_info[MAX_SERVICE_SPECIFIC_INFO_LEN];
- uint16_t specific_info_len;
- uint8_t match_filter[MAX_MATCH_FILTER_LEN];
- uint16_t match_filter_len;
- int max_distance;
- int min_distance;
+ uint16_t ttl;
+ wifi_aware_subscribe_type_e subscribe_type;
+ char service_name[MAX_SERVICE_NAME_LEN + 1];
+ uint8_t specific_info[MAX_SERVICE_SPECIFIC_INFO_LEN];
+ uint16_t specific_info_len;
+ uint8_t match_filter[MAX_MATCH_FILTER_LEN];
+ uint16_t match_filter_len;
+ int max_distance;
+ int min_distance;
} __wifi_aware_subscribe_request_s;
typedef struct {