1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
content / public / test / mock_client_hints_controller_delegate.h [blame]
// Copyright 2019 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CONTENT_PUBLIC_TEST_MOCK_CLIENT_HINTS_CONTROLLER_DELEGATE_H_
#define CONTENT_PUBLIC_TEST_MOCK_CLIENT_HINTS_CONTROLLER_DELEGATE_H_
#include "content/public/browser/client_hints_controller_delegate.h"
#include "services/network/public/cpp/network_quality_tracker.h"
#include "services/network/test/test_network_quality_tracker.h"
#include "third_party/blink/public/common/client_hints/enabled_client_hints.h"
#include "third_party/blink/public/common/user_agent/user_agent_metadata.h"
#include "ui/gfx/geometry/size_f.h"
#include "url/origin.h"
namespace content {
using ClientHintsContainer =
std::map<const url::Origin, blink::EnabledClientHints>;
class MockClientHintsControllerDelegate : public ClientHintsControllerDelegate {
public:
explicit MockClientHintsControllerDelegate(
const blink::UserAgentMetadata& metadata);
MockClientHintsControllerDelegate(const MockClientHintsControllerDelegate&) =
delete;
MockClientHintsControllerDelegate& operator=(
const MockClientHintsControllerDelegate&) = delete;
~MockClientHintsControllerDelegate() override;
network::NetworkQualityTracker* GetNetworkQualityTracker() override;
// Get which client hints opt-ins were persisted on current origin.
void GetAllowedClientHintsFromSource(
const url::Origin& origin,
blink::EnabledClientHints* client_hints) override;
bool IsJavaScriptAllowed(const GURL& url,
content::RenderFrameHost* parent_rfh) override;
blink::UserAgentMetadata GetUserAgentMetadata() override;
void PersistClientHints(
const url::Origin& primary_origin,
content::RenderFrameHost* parent_rfh,
const std::vector<::network::mojom::WebClientHintsType>& client_hints)
override;
void ResetForTesting() override;
void SetAdditionalClientHints(
const std::vector<network::mojom::WebClientHintsType>&) override;
void ClearAdditionalClientHints() override;
void SetMostRecentMainFrameViewportSize(
const gfx::Size& viewport_size) override;
gfx::Size GetMostRecentMainFrameViewportSize() override;
private:
const blink::UserAgentMetadata metadata_;
ClientHintsContainer client_hints_map_;
std::vector<network::mojom::WebClientHintsType> additional_hints_;
gfx::Size viewport_size_;
network::TestNetworkQualityTracker network_quality_tracker_;
};
} // end namespace content
#endif // CONTENT_PUBLIC_TEST_MOCK_CLIENT_HINTS_CONTROLLER_DELEGATE_H_