summaryrefslogtreecommitdiff
path: root/unit
diff options
context:
space:
mode:
authorDaniel Wagner <daniel.wagner@bmw-carit.de>2011-06-07 15:42:22 +0200
committerDaniel Wagner <daniel.wagner@bmw-carit.de>2011-06-07 15:42:57 +0200
commit89f4a464c6c2493feb1b8ab1f0801553009cd359 (patch)
treefea105870f1da71f9aefab0476b8e9cee62c69ac /unit
parent7b8124ac2f08b77d890dd0f0208bdff220e3116c (diff)
downloadconnman-89f4a464c6c2493feb1b8ab1f0801553009cd359.tar.gz
connman-89f4a464c6c2493feb1b8ab1f0801553009cd359.tar.bz2
connman-89f4a464c6c2493feb1b8ab1f0801553009cd359.zip
unit: Add create already exists test case
Diffstat (limited to 'unit')
-rw-r--r--unit/test-session.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/unit/test-session.c b/unit/test-session.c
index a2bd3726..2c993f36 100644
--- a/unit/test-session.c
+++ b/unit/test-session.c
@@ -138,6 +138,34 @@ static gboolean test_session_create_destroy(gpointer data)
return FALSE;
}
+static gboolean test_session_create_already_exists(gpointer data)
+{
+ struct test_fix *fix = data;
+ struct test_session *session0, *session1;
+ DBusMessage *msg;
+
+ util_session_create(fix, 2);
+ session0 = &fix->session[0];
+ session1 = &fix->session[1];
+
+ session0->notify_path = g_strdup("/foo");
+ session1->notify_path = session0->notify_path;
+
+ util_session_init(session0);
+
+ msg = manager_create_session(session1->connection,
+ session1->info,
+ session1->notify_path);
+ g_assert(msg == NULL);
+
+ util_session_cleanup(session0);
+
+ g_assert(is_connman_running(session0->connection) == TRUE);
+ util_idle_call(fix, util_quit_loop, util_session_destroy);
+
+ return FALSE;
+}
+
static void set_session_mode(struct test_fix *fix,
connman_bool_t enable)
{
@@ -198,6 +226,8 @@ int main(int argc, char *argv[])
test_session_create, setup_cb, teardown_cb);
util_test_add("/manager/session create destroy",
test_session_create_destroy, setup_cb, teardown_cb);
+ util_test_add("/manager/session create already exists",
+ test_session_create_already_exists, setup_cb, teardown_cb);
return g_test_run();
}