blob: 8b8753787dc700c6f0ff4fcb36b1be48fdbc8217 [file] [log] [blame]
// Copyright 2019 The Chromium 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 "chrome/renderer/subresource_redirect/subresource_redirect_util.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace subresource_redirect {
TEST(SubresourceRedirectURL, ProperlyChangesURL) {
EXPECT_EQ(GetSubresourceURLForURL(GURL("https://www.test.com/test.jpg")),
GURL("https://"
"jy6r5d5zc3n6juvq35nveinxzyuk4n4wndppyli5x5ycmrza36fa."
"litepages.googlezip.net/"
"i?u=https%3A%2F%2Fwww.test.com%2Ftest.jpg"));
}
TEST(SubresourceRedirectURL, ProperlyHandlesFragment) {
EXPECT_EQ(GetSubresourceURLForURL(GURL("https://www.test.com/test.jpg#test")),
GURL("https://"
"jy6r5d5zc3n6juvq35nveinxzyuk4n4wndppyli5x5ycmrza36fa."
"litepages.googlezip.net/"
"i?u=https%3A%2F%2Fwww.test.com%2Ftest.jpg#test"));
}
TEST(SubresourceRedirectURL, ProperlyHandlesSetPort) {
EXPECT_EQ(GetSubresourceURLForURL(GURL("https://www.test.com:4444/test.jpg")),
GURL("https://flm6clfkawcjb2bw5cnrrcdf4fkoliileuljcc23lahdet75ouqq."
"litepages.googlezip.net/i?u=https%3A%2F%2Fwww.test."
"com%3A4444%2Ftest.jpg"));
}
TEST(SubresourceRedirectURL, ProperlyHandlesQueryParams) {
EXPECT_EQ(GetSubresourceURLForURL(
GURL("https://www.test.com/test.jpg?color=yellow")),
GURL("https://"
"jy6r5d5zc3n6juvq35nveinxzyuk4n4wndppyli5x5ycmrza36fa."
"litepages.googlezip.net/"
"i?u=https%3A%2F%2Fwww.test.com%2Ftest.jpg%3Fcolor%3Dyellow"));
}
TEST(SubresourceRedirectURL, ProperlyHandlesMultipleQueryParams) {
EXPECT_EQ(GetSubresourceURLForURL(
GURL("https://www.test.com/test.jpg?color=yellow&name=test")),
GURL("https://"
"jy6r5d5zc3n6juvq35nveinxzyuk4n4wndppyli5x5ycmrza36fa."
"litepages.googlezip.net/"
"i?u=https%3A%2F%2Fwww.test.com%2Ftest.jpg%3Fcolor%3Dyellow%"
"26name%3Dtest"));
}
TEST(SubresourceRedirectURL, ProperlyHandlesQueryParamsWithFragments) {
EXPECT_EQ(GetSubresourceURLForURL(
GURL("https://www.test.com/test.jpg?color=yellow#test")),
GURL("https://"
"jy6r5d5zc3n6juvq35nveinxzyuk4n4wndppyli5x5ycmrza36fa."
"litepages.googlezip.net/"
"i?u=https%3A%2F%2Fwww.test.com%2Ftest.jpg%3Fcolor%3Dyellow"
"#test"));
}
// Currently redirects are not supported for HTTP subresources, but there is
// potential to add them in the future.
TEST(SubresourceRedirectURL, ProperlyChangesHTTPURL) {
EXPECT_EQ(GetSubresourceURLForURL(GURL("http://www.test.com/test.jpg")),
GURL("https://bc6pgqmtr6nlicooao2zh77svcptncpwfolwlgbrop6gqnr6ck3q."
"litepages.googlezip.net/i?u=http%3A%2F%2Fwww.test.com%2Ftest."
"jpg"));
}
} // namespace subresource_redirect