#ifndef CONTENT_BROWSER_INSTALLEDAPP_TEST_INSTALLED_APP_PROVIDER_IMPL_TEST_UTILS_H_
#define CONTENT_BROWSER_INSTALLEDAPP_TEST_INSTALLED_APP_PROVIDER_IMPL_TEST_UTILS_H_
#include <optional>
#include <vector>
#include "content/public/browser/content_browser_client.h"
#include "third_party/blink/public/mojom/installedapp/related_application.mojom-forward.h"
#include "url/gurl.h"
#if BUILDFLAG(IS_WIN)
#include "content/browser/installedapp/fetch_related_win_apps_task.h"
#include "content/browser/installedapp/native_win_app_fetcher.h"
#endif
namespace content {
blink::mojom::RelatedApplicationPtr CreateRelatedApplicationFromPlatformAndId(
const std::string& platform,
const std::string& id);
#if BUILDFLAG(IS_WIN)
class FakeNativeWinAppFetcher : public NativeWinAppFetcher {
public:
explicit FakeNativeWinAppFetcher(std::vector<std::string> installed_app_ids);
~FakeNativeWinAppFetcher() override;
void FetchAppsForUrl(
const GURL& url,
base::OnceCallback<void(std::vector<blink::mojom::RelatedApplicationPtr>)>
callback) override;
private:
std::vector<std::string> installed_app_ids_;
};
std::unique_ptr<NativeWinAppFetcher> CreateFakeNativeWinAppFetcherForTesting(
std::vector<std::string> installed_win_app_ids_);
#endif
class FakeContentBrowserClientForQueryInstalledWebApps
: public ContentBrowserClient { … };
}
#endif