| // Copyright 2019 The Fuchsia 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 "src/developer/debug/shared/component_utils.h" |
| |
| #include <gtest/gtest.h> |
| |
| namespace debug_ipc { |
| |
| namespace { |
| |
| #define PACKAGE "some-package" |
| #define COMPONENT "some-component" |
| |
| const char kAlmostUrl[] = "fuchsia-pkg://fuchsia.com/asfsad/meta/asda.cmx"; |
| const char kActualUrl[] = |
| "fuchsia-pkg://fuchsia.com/" PACKAGE "#meta/" COMPONENT ".cmx"; |
| |
| } // namespace |
| |
| TEST(ComponentUtils, ExtractComponentFromPackageUrl) { |
| ComponentDescription desc; |
| |
| EXPECT_FALSE(ExtractComponentFromPackageUrl("asgssf", &desc)); |
| EXPECT_TRUE(desc.package_name.empty()); |
| EXPECT_TRUE(desc.component_name.empty()); |
| |
| EXPECT_FALSE(ExtractComponentFromPackageUrl(kAlmostUrl, &desc)); |
| EXPECT_TRUE(desc.package_name.empty()); |
| EXPECT_TRUE(desc.component_name.empty()); |
| |
| EXPECT_TRUE(ExtractComponentFromPackageUrl(kActualUrl, &desc)); |
| EXPECT_EQ(desc.package_name, PACKAGE); |
| EXPECT_EQ(desc.component_name, COMPONENT); |
| } |
| |
| } // namespace debug_ipc |