blob: 46186d7ee43693dbaf585becb11bab1b6b9125a8 [file] [log] [blame]
Avi Drissman8ba1bad2022-09-13 19:22:361// Copyright 2021 The Chromium Authors
Duncan Mercer9c46b902022-08-19 17:55:112// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "components/lens/lens_url_utils.h"
6
7#include "base/strings/string_number_conversions.h"
8#include "base/time/time.h"
9#include "components/lens/lens_entrypoints.h"
10#include "components/lens/lens_rendering_environment.h"
11#include "testing/gmock/include/gmock/gmock.h"
12#include "testing/gtest/include/gtest/gtest.h"
13#include "url/gurl.h"
14
15using ::testing::MatchesRegex;
16
17namespace lens {
18
19TEST(LensUrlUtilsTest, GetRegionSearchNewTabQueryParameterTest) {
20 lens::EntryPoint lens_region_search_ep =
21 lens::EntryPoint::CHROME_REGION_SEARCH_MENU_ITEM;
Duncan Mercer9c46b902022-08-19 17:55:1122 std::string query_param = lens::GetQueryParametersForLensRequest(
Anudeep Palanki02b81082022-11-10 18:26:3023 lens_region_search_ep, /* is_side_panel_request= */ false,
24 /* is_full_screen_region_search_request= */ false);
Duncan Mercer14dd5c022023-01-11 19:57:4625 EXPECT_THAT(query_param, MatchesRegex("ep=crs&re=df&s=4&st=\\d+"));
Duncan Mercer9c46b902022-08-19 17:55:1126}
27
28TEST(LensUrlUtilsTest, GetImageSearchNewTabQueryParameterTest) {
29 lens::EntryPoint lens_image_search_ep =
30 lens::EntryPoint::CHROME_SEARCH_WITH_GOOGLE_LENS_CONTEXT_MENU_ITEM;
Duncan Mercer9c46b902022-08-19 17:55:1131 std::string query_param = lens::GetQueryParametersForLensRequest(
Anudeep Palanki02b81082022-11-10 18:26:3032 lens_image_search_ep, /* is_side_panel_request= */ false,
33 /* is_full_screen_region_search_request= */ false);
Duncan Mercer14dd5c022023-01-11 19:57:4634 EXPECT_THAT(query_param, MatchesRegex("ep=ccm&re=df&s=4&st=\\d+"));
Duncan Mercer9c46b902022-08-19 17:55:1135}
36
37TEST(LensUrlUtilsTest, GetRegionSearchSidePanelQueryParameterTest) {
38 lens::EntryPoint lens_region_search_ep =
39 lens::EntryPoint::CHROME_REGION_SEARCH_MENU_ITEM;
Duncan Mercer9c46b902022-08-19 17:55:1140 std::string query_param = lens::GetQueryParametersForLensRequest(
Anudeep Palanki02b81082022-11-10 18:26:3041 lens_region_search_ep, /* is_side_panel_request= */ true,
42 /* is_full_screen_region_search_request= */ false);
Duncan Mercer14dd5c022023-01-11 19:57:4643 EXPECT_THAT(query_param, MatchesRegex("ep=crs&re=dcsp&s=4&st=\\d+"));
Duncan Mercer9c46b902022-08-19 17:55:1144}
45
46TEST(LensUrlUtilsTest, GetImageSearchSidePanelQueryParameterTest) {
47 lens::EntryPoint lens_image_search_ep =
48 lens::EntryPoint::CHROME_SEARCH_WITH_GOOGLE_LENS_CONTEXT_MENU_ITEM;
Duncan Mercer9c46b902022-08-19 17:55:1149 std::string query_param = lens::GetQueryParametersForLensRequest(
Anudeep Palanki02b81082022-11-10 18:26:3050 lens_image_search_ep, /* is_side_panel_request= */ true,
51 /* is_full_screen_region_search_request= */ false);
Duncan Mercer14dd5c022023-01-11 19:57:4652 EXPECT_THAT(query_param, MatchesRegex("ep=ccm&re=dcsp&s=4&st=\\d+"));
Duncan Mercer9c46b902022-08-19 17:55:1153}
54
55TEST(LensUrlUtilsTest, GetOpenNewTabSidePanelParameterTest) {
56 lens::EntryPoint lens_open_new_tab_side_panel_ep =
57 lens::EntryPoint::CHROME_OPEN_NEW_TAB_SIDE_PANEL;
Duncan Mercer9c46b902022-08-19 17:55:1158 std::string query_param = lens::GetQueryParametersForLensRequest(
Anudeep Palanki02b81082022-11-10 18:26:30