summaryrefslogtreecommitdiff
path: root/cras/src/tests/bt_profile_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'cras/src/tests/bt_profile_unittest.cc')
-rw-r--r--cras/src/tests/bt_profile_unittest.cc182
1 files changed, 0 insertions, 182 deletions
diff --git a/cras/src/tests/bt_profile_unittest.cc b/cras/src/tests/bt_profile_unittest.cc
deleted file mode 100644
index 0758b448..00000000
--- a/cras/src/tests/bt_profile_unittest.cc
+++ /dev/null
@@ -1,182 +0,0 @@
-/* Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include <dbus/dbus.h>
-#include <gtest/gtest.h>
-#include <stdio.h>
-#include <sys/socket.h>
-
-#include "dbus_test.h"
-
-extern "C" {
-#include "cras_bt_constants.h"
-#include "cras_bt_profile.h"
-}
-
-namespace {
-
-static struct cras_bt_profile fake_profile;
-static struct cras_bt_transport* fake_transport;
-static int profile_release_called;
-static struct cras_bt_profile* profile_release_arg_value;
-static int profile_new_connection_called;
-static struct cras_bt_transport* profile_new_connection_arg_value;
-static int profile_request_disconnection_called;
-static struct cras_bt_transport* profile_request_disconnection_arg_value;
-static int profile_cancel_called;
-static struct cras_bt_profile* profile_cancel_arg_value;
-static int cras_bt_transport_get_called;
-static const char* cras_bt_transport_get_arg_value;
-
-void fake_profile_release(struct cras_bt_profile* profile);
-void fake_profile_new_connection(struct cras_bt_profile* profile,
- struct cras_bt_transport* transport);
-void fake_profile_request_disconnection(struct cras_bt_profile* profile,
- struct cras_bt_transport* transport);
-void fake_profile_cancel(struct cras_bt_profile* profile);
-
-class BtProfileTestSuite : public DBusTest {
- virtual void SetUp() {
- DBusTest::SetUp();
-
- profile_release_called = 0;
- profile_new_connection_called = 0;
- profile_request_disconnection_called = 0;
- profile_cancel_called = 0;
-
- fake_profile.name = "fake";
- fake_profile.object_path = "/fake";
- fake_profile.uuid = "0";
- fake_profile.version = 0;
- fake_profile.role = NULL;
- fake_profile.features = 0;
- fake_profile.release = fake_profile_release;
- fake_profile.new_connection = fake_profile_new_connection;
- fake_profile.request_disconnection = fake_profile_request_disconnection;
- fake_profile.cancel = fake_profile_cancel;
-
- fake_transport = reinterpret_cast<struct cras_bt_transport*>(0x321);
- cras_bt_transport_get_called = 0;
- }
-};
-
-TEST_F(BtProfileTestSuite, RegisterProfile) {
- struct cras_bt_profile* profile;
-
- ExpectMethodCall(PROFILE_MANAGER_OBJ_PATH, BLUEZ_PROFILE_MGMT_INTERFACE,
- "RegisterProfile")
- .WithObjectPath("/fake")
- .SendReply();
-
- cras_bt_add_profile(conn_, &fake_profile);
- cras_bt_register_profiles(conn_);
-
- WaitForMatches();
- profile = cras_bt_profile_get("/fake");
-
- EXPECT_TRUE(profile == &fake_profile);
-}
-
-TEST_F(BtProfileTestSuite, ResetProfile) {
- cras_bt_add_profile(conn_, &fake_profile);
- cras_bt_profile_reset();
-
- ASSERT_EQ(1, profile_release_called);
-}
-
-TEST_F(BtProfileTestSuite, HandleMessage) {
- ExpectMethodCall(PROFILE_MANAGER_OBJ_PATH, BLUEZ_PROFILE_MGMT_INTERFACE,
- "RegisterProfile")
- .WithObjectPath("/fake")
- .SendReply();
-
- cras_bt_add_profile(conn_, &fake_profile);
- cras_bt_register_profiles(conn_);
-
- WaitForMatches();
-
- /* Use stdin as mock fd */
- CreateMessageCall("/fake", "org.bluez.Profile1", "NewConnection")
- .WithString("device")
- .WithUnixFd(0)
- .Send();
-
- WaitForMatches();
- ASSERT_EQ(1, profile_new_connection_called);
- ASSERT_STREQ("device", cras_bt_transport_get_arg_value);
- ASSERT_EQ(1, cras_bt_transport_get_called);
- ASSERT_EQ(fake_transport, profile_new_connection_arg_value);
-
- CreateMessageCall("/fake", "org.bluez.Profile1", "RequestDisconnection")
- .WithString("device")
- .Send();
- WaitForMatches();
- ASSERT_EQ(2, cras_bt_transport_get_called);
- ASSERT_EQ(1, profile_request_disconnection_called);
- ASSERT_EQ(fake_transport, profile_request_disconnection_arg_value);
-
- CreateMessageCall("/fake", "org.bluez.Profile1", "Release").Send();
- WaitForMatches();
- ASSERT_EQ(1, profile_release_called);
- ASSERT_EQ(&fake_profile, profile_release_arg_value);
-
- CreateMessageCall("/fake", "org.bluez.Profile1", "Cancel").Send();
- WaitForMatches();
- ASSERT_EQ(1, profile_cancel_called);
- ASSERT_EQ(&fake_profile, profile_cancel_arg_value);
-}
-
-void fake_profile_release(struct cras_bt_profile* profile) {
- profile_release_arg_value = profile;
- profile_release_called++;
-}
-
-void fake_profile_new_connection(struct cras_bt_profile* profile,
- struct cras_bt_transport* transport) {
- profile_new_connection_arg_value = transport;
- profile_new_connection_called++;
-}
-
-void fake_profile_request_disconnection(struct cras_bt_profile* profile,
- struct cras_bt_transport* transport) {
- profile_request_disconnection_arg_value = transport;
- profile_request_disconnection_called++;
-}
-
-void fake_profile_cancel(struct cras_bt_profile* profile) {
- profile_cancel_arg_value = profile;
- profile_cancel_called++;
-}
-
-} // namespace
-
-extern "C" {
-dbus_bool_t append_key_value(DBusMessageIter* iter,
- const char* key,
- int type,
- const char* type_string,
- void* value) {
- return TRUE;
-}
-
-struct cras_bt_transport* cras_bt_transport_get(const char* object_path) {
- cras_bt_transport_get_called++;
- cras_bt_transport_get_arg_value = object_path;
- return fake_transport;
-}
-
-void cras_bt_transport_destroy(struct cras_bt_transport* transport) {}
-
-struct cras_bt_transport* cras_bt_transport_create(DBusConnection* conn,
- const char* object_path) {
- return fake_transport;
-}
-
-} // extern "C"
-
-int main(int argc, char** argv) {
- ::testing::InitGoogleTest(&argc, argv);
- return RUN_ALL_TESTS();
-}