iwa: Remove kIsolatedAppOrigins from Direct Sockets browser tests
This CL makes the Direct Socket browser tests rely on overriding ContentBrowserClient::ShouldUrlUseApplicationIsolationLevel rather than setting the --isolated-app-origins flag, which we hope to remove soon. Bug: 1333966 Change-Id: Ie492365ec7b98fcebd738fd1f0f7816456379df2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4032715 Reviewed-by: Andrew Rayskiy <greengrape@google.com> Commit-Queue: Robbie McElrath <rmcelrath@chromium.org> Cr-Commit-Position: refs/heads/main@{#1073118}
This commit is contained in:

committed by
Chromium LUCI CQ

parent
9c0c267811
commit
05953c2bc6
@@ -12,11 +12,11 @@
|
||||
#include "base/strings/stringprintf.h"
|
||||
#include "base/task/sequenced_task_runner.h"
|
||||
#include "base/test/metrics/histogram_tester.h"
|
||||
#include "base/test/scoped_feature_list.h"
|
||||
#include "content/browser/direct_sockets/direct_sockets_service_impl.h"
|
||||
#include "content/browser/direct_sockets/direct_sockets_test_utils.h"
|
||||
#include "content/public/browser/browser_context.h"
|
||||
#include "content/public/common/content_features.h"
|
||||
#include "content/public/common/content_switches.h"
|
||||
#include "content/public/test/browser_test.h"
|
||||
#include "content/public/test/browser_test_utils.h"
|
||||
#include "content/public/test/content_browser_test.h"
|
||||
@@ -176,7 +176,13 @@ class DirectSocketsOpenBrowserTest : public ContentBrowserTest {
|
||||
protected:
|
||||
void SetUpOnMainThread() override {
|
||||
ContentBrowserTest::SetUpOnMainThread();
|
||||
EXPECT_TRUE(NavigateToURL(shell(), GetTestOpenPageURL()));
|
||||
|
||||
client_ = std::make_unique<test::IsolatedWebAppContentBrowserClient>(
|
||||
url::Origin::Create(GetTestOpenPageURL()));
|
||||
scoped_client_ =
|
||||
std::make_unique<ScopedContentBrowserClientSetting>(client_.get());
|
||||
|
||||
ASSERT_TRUE(NavigateToURL(shell(), GetTestOpenPageURL()));
|
||||
}
|
||||
|
||||
void SetUp() override {
|
||||
@@ -186,12 +192,11 @@ class DirectSocketsOpenBrowserTest : public ContentBrowserTest {
|
||||
ContentBrowserTest::SetUp();
|
||||
}
|
||||
|
||||
void SetUpCommandLine(base::CommandLine* command_line) override {
|
||||
ContentBrowserTest::SetUpCommandLine(command_line);
|
||||
std::string origin_list = GetTestOpenPageURL().spec();
|
||||
private:
|
||||
base::test::ScopedFeatureList feature_list_{features::kIsolatedWebApps};
|
||||
|
||||
command_line->AppendSwitchASCII(switches::kIsolatedAppOrigins, origin_list);
|
||||
}
|
||||
std::unique_ptr<test::IsolatedWebAppContentBrowserClient> client_;
|
||||
std::unique_ptr<ScopedContentBrowserClientSetting> scoped_client_;
|
||||
};
|
||||
|
||||
IN_PROC_BROWSER_TEST_F(DirectSocketsOpenBrowserTest, OpenTcp_Success_Hostname) {
|
||||
|
@@ -19,7 +19,6 @@
|
||||
#include "content/public/browser/web_contents.h"
|
||||
#include "content/public/common/content_client.h"
|
||||
#include "content/public/common/content_features.h"
|
||||
#include "content/public/common/content_switches.h"
|
||||
#include "content/public/test/browser_test.h"
|
||||
#include "content/public/test/browser_test_utils.h"
|
||||
#include "content/public/test/content_browser_test.h"
|
||||
@@ -286,9 +285,15 @@ class DirectSocketsTcpBrowserTest : public ContentBrowserTest {
|
||||
protected:
|
||||
void SetUpOnMainThread() override {
|
||||
ContentBrowserTest::SetUpOnMainThread();
|
||||
ASSERT_TRUE(NavigateToURL(shell(), GetTestPageURL()));
|
||||
|
||||
client_ = std::make_unique<test::IsolatedWebAppContentBrowserClient>(
|
||||
url::Origin::Create(GetTestPageURL()));
|
||||
scoped_client_ =
|
||||
std::make_unique<ScopedContentBrowserClientSetting>(client_.get());
|
||||
runner_ =
|
||||
std::make_unique<content::test::AsyncJsRunner>(shell()->web_contents());
|
||||
|
||||
ASSERT_TRUE(NavigateToURL(shell(), GetTestPageURL()));
|
||||
}
|
||||
|
||||
void SetUp() override {
|
||||
@@ -297,26 +302,18 @@ class DirectSocketsTcpBrowserTest : public ContentBrowserTest {
|
||||
ContentBrowserTest::SetUp();
|
||||
}
|
||||
|
||||
void SetUpCommandLine(base::CommandLine* command_line) override {
|
||||
ContentBrowserTest::SetUpCommandLine(command_line);
|
||||
std::string origin_list =
|
||||
GetTestOpenPageURL().spec() + "," + GetTestPageURL().spec();
|
||||
|
||||
command_line->AppendSwitchASCII(switches::kIsolatedAppOrigins, origin_list);
|
||||
}
|
||||
|
||||
private:
|
||||
BrowserContext* browser_context() {
|
||||
return shell()->web_contents()->GetBrowserContext();
|
||||
}
|
||||
|
||||
private:
|
||||
test::IsolatedWebAppContentBrowserClient client_;
|
||||
ScopedContentBrowserClientSetting setting{&client_};
|
||||
base::test::ScopedFeatureList feature_list_;
|
||||
base::test::ScopedFeatureList feature_list_{features::kIsolatedWebApps};
|
||||
mojo::Remote<network::mojom::MdnsResponder> mdns_responder_;
|
||||
mojo::Remote<network::mojom::TCPServerSocket> tcp_server_socket_;
|
||||
|
||||
std::unique_ptr<test::IsolatedWebAppContentBrowserClient> client_;
|
||||
std::unique_ptr<ScopedContentBrowserClientSetting> scoped_client_;
|
||||
std::unique_ptr<content::test::AsyncJsRunner> runner_;
|
||||
};
|
||||
|
||||
|
@@ -14,6 +14,7 @@
|
||||
#include "content/public/test/browser_test_utils.h"
|
||||
#include "content/public/test/web_contents_tester.h"
|
||||
#include "third_party/blink/public/common/permissions_policy/origin_with_possible_wildcards.h"
|
||||
#include "url/origin.h"
|
||||
|
||||
namespace content::test {
|
||||
|
||||
@@ -206,11 +207,15 @@ std::string AsyncJsRunner::MakeScriptSendResultToDomQueue(
|
||||
script.c_str(), token_.ToString().c_str()));
|
||||
}
|
||||
|
||||
IsolatedWebAppContentBrowserClient::IsolatedWebAppContentBrowserClient(
|
||||
const url::Origin& isolated_app_origin)
|
||||
: isolated_app_origin_(isolated_app_origin) {}
|
||||
|
||||
bool IsolatedWebAppContentBrowserClient::ShouldUrlUseApplicationIsolationLevel(
|
||||
BrowserContext* browser_context,
|
||||
const GURL& url,
|
||||
bool origin_matches_flag) {
|
||||
return origin_matches_flag;
|
||||
return isolated_app_origin_ == url::Origin::Create(url);
|
||||
}
|
||||
|
||||
absl::optional<blink::ParsedPermissionsPolicy>
|
||||
|
@@ -29,6 +29,10 @@
|
||||
#include "services/network/test/test_udp_socket.h"
|
||||
#include "third_party/abseil-cpp/absl/types/optional.h"
|
||||
|
||||
namespace url {
|
||||
class Origin;
|
||||
} // namespace url
|
||||
|
||||
namespace content::test {
|
||||
|
||||
// Mock Host Resolver for Direct Sockets browsertests.
|
||||
@@ -197,6 +201,9 @@ std::string WrapAsync(const std::string& script);
|
||||
// for isolated apps.
|
||||
class IsolatedWebAppContentBrowserClient : public ContentBrowserClient {
|
||||
public:
|
||||
explicit IsolatedWebAppContentBrowserClient(
|
||||
const url::Origin& isolated_app_origin);
|
||||
|
||||
bool ShouldUrlUseApplicationIsolationLevel(BrowserContext* browser_context,
|
||||
const GURL& url,
|
||||
bool origin_matches_flag) override;
|
||||
@@ -205,6 +212,9 @@ class IsolatedWebAppContentBrowserClient : public ContentBrowserClient {
|
||||
GetPermissionsPolicyForIsolatedWebApp(
|
||||
content::BrowserContext* browser_context,
|
||||
const url::Origin& app_origin) override;
|
||||
|
||||
private:
|
||||
url::Origin isolated_app_origin_;
|
||||
};
|
||||
|
||||
} // namespace content::test
|
||||
|
@@ -15,7 +15,6 @@
|
||||
#include "content/public/browser/web_contents.h"
|
||||
#include "content/public/common/content_client.h"
|
||||
#include "content/public/common/content_features.h"
|
||||
#include "content/public/common/content_switches.h"
|
||||
#include "content/public/test/browser_test.h"
|
||||
#include "content/public/test/browser_test_utils.h"
|
||||
#include "content/public/test/content_browser_test.h"
|
||||
@@ -77,9 +76,15 @@ class DirectSocketsUdpBrowserTest : public ContentBrowserTest {
|
||||
protected:
|
||||
void SetUpOnMainThread() override {
|
||||
ContentBrowserTest::SetUpOnMainThread();
|
||||
EXPECT_TRUE(NavigateToURL(shell(), GetTestPageURL()));
|
||||
|
||||
client_ = std::make_unique<test::IsolatedWebAppContentBrowserClient>(
|
||||
url::Origin::Create(GetTestPageURL()));
|
||||
scoped_client_ =
|
||||
std::make_unique<ScopedContentBrowserClientSetting>(client_.get());
|
||||
runner_ =
|
||||
std::make_unique<content::test::AsyncJsRunner>(shell()->web_contents());
|
||||
|
||||
ASSERT_TRUE(NavigateToURL(shell(), GetTestPageURL()));
|
||||
}
|
||||
|
||||
void SetUp() override {
|
||||
@@ -89,13 +94,6 @@ class DirectSocketsUdpBrowserTest : public ContentBrowserTest {
|
||||
ContentBrowserTest::SetUp();
|
||||
}
|
||||
|
||||
void SetUpCommandLine(base::CommandLine* command_line) override {
|
||||
ContentBrowserTest::SetUpCommandLine(command_line);
|
||||
std::string origin_list = GetTestPageURL().spec();
|
||||
|
||||
command_line->AppendSwitchASCII(switches::kIsolatedAppOrigins, origin_list);
|
||||
}
|
||||
|
||||
std::pair<net::IPEndPoint, network::test::UDPSocketTestHelper>
|
||||
CreateUDPServerSocket(mojo::PendingRemote<network::mojom::UDPSocketListener>
|
||||
listener_receiver_remote) {
|
||||
@@ -124,11 +122,11 @@ class DirectSocketsUdpBrowserTest : public ContentBrowserTest {
|
||||
return shell()->web_contents()->GetBrowserContext();
|
||||
}
|
||||
|
||||
test::IsolatedWebAppContentBrowserClient client_;
|
||||
ScopedContentBrowserClientSetting setting{&client_};
|
||||
base::test::ScopedFeatureList feature_list_;
|
||||
base::test::ScopedFeatureList feature_list_{features::kIsolatedWebApps};
|
||||
mojo::Remote<network::mojom::UDPSocket> server_socket_;
|
||||
|
||||
std::unique_ptr<test::IsolatedWebAppContentBrowserClient> client_;
|
||||
std::unique_ptr<ScopedContentBrowserClientSetting> scoped_client_;
|
||||
std::unique_ptr<content::test::AsyncJsRunner> runner_;
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user