blob: 7b0f915bcaa092efb78300052dcf3310806d2d42 [file] [log] [blame]
// Copyright 2024 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/webapps/installable/installable_utils.h"
#include "chrome/browser/web_applications/test/web_app_install_test_utils.h"
#include "chrome/browser/web_applications/test/web_app_test.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace {
// This only tests the desktop implementation.
// TODO(crbug.com/354971473): Add unit tests for the android implementation.
class InstallableUtilsTest : public WebAppTest {
public:
void SetUp() override {
WebAppTest::SetUp();
web_app::test::AwaitStartWebAppProviderAndSubsystems(profile());
}
};
TEST_F(InstallableUtilsTest, DoesOriginContainAnyInstalledWebApp) {
web_app::test::InstallDummyWebApp(profile(), "abc",
GURL("https://www.example.com/app"));
EXPECT_TRUE(DoesOriginContainAnyInstalledWebApp(
profile(), GURL("https://www.example.com")));
EXPECT_FALSE(DoesOriginContainAnyInstalledWebApp(
profile(), GURL("https://www.example2.com")));
}
TEST_F(InstallableUtilsTest, GetOriginsWithInstalledWebApps) {
web_app::test::InstallDummyWebApp(profile(), "abc",
GURL("https://www.example.com/app"));
web_app::test::InstallDummyWebApp(profile(), "abc",
GURL("https://www.example2.com/app"));
EXPECT_THAT(GetOriginsWithInstalledWebApps(profile()),
testing::UnorderedElementsAre(GURL("https://www.example.com/"),
GURL("https://www.example2.com")));
}
} // namespace