blob: e7051ac3b145132ba029c7a01b813c8be75e573e [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"
Duncan Mercer0a35f5e7d2023-09-26 00:15:538#include "base/test/metrics/histogram_tester.h"
Duncan Mercer9c46b902022-08-19 17:55:119#include "base/time/time.h"
10#include "components/lens/lens_entrypoints.h"
Duncan Mercer9c46b902022-08-19 17:55:1111#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
Duncan Mercerfeb830f2024-11-25 18:46:4119TEST(LensUrlUtilsTest, GetRegionSearchParameterTest) {
Jason Hu941e938492023-05-11 23:35:4620 lens::EntryPoint lens_region_search_ep =
21 lens::EntryPoint::CHROME_REGION_SEARCH_MENU_ITEM;
Duncan Mercerbfe13b832024-11-18 18:08:2622 std::string query_param =
Duncan Mercerfeb830f2024-11-25 18:46:4123 lens::GetQueryParametersForLensRequest(lens_region_search_ep);
Jason Hu941e938492023-05-11 23:35:4624 EXPECT_THAT(query_param, MatchesRegex("ep=crs&re=df&s=4&st=\\d+"));
25}
26
Duncan Mercerfeb830f2024-11-25 18:46:4127TEST(LensUrlUtilsTest, GetImageSearcParameterTest) {
Duncan Mercer9c46b902022-08-19 17:55:1128 lens::EntryPoint lens_image_search_ep =
29 lens::EntryPoint::CHROME_SEARCH_WITH_GOOGLE_LENS_CONTEXT_MENU_ITEM;
Duncan Mercerbfe13b832024-11-18 18:08:2630 std::string query_param =
Duncan Mercerfeb830f2024-11-25 18:46:4131 lens::GetQueryParametersForLensRequest(lens_image_search_ep);
Duncan Mercer14dd5c022023-01-11 19:57:4632 EXPECT_THAT(query_param, MatchesRegex("ep=ccm&re=df&s=4&st=\\d+"));
Duncan Mercer9c46b902022-08-19 17:55:1133}
34
Xiaohan Wang70e9d652023-11-27 22:30:2535TEST(LensUrlUtilsTest, GetVideoFrameSearchQueryParameterTest) {
36 auto lens_ep = lens::EntryPoint::CHROME_VIDEO_FRAME_SEARCH_CONTEXT_MENU_ITEM;
Duncan Mercerfeb830f2024-11-25 18:46:4137 std::string query_param = lens::GetQueryParametersForLensRequest(lens_ep);
Xiaohan Wang70e9d652023-11-27 22:30:2538 EXPECT_THAT(query_param, MatchesRegex("ep=cvfs&re=df&s=4&st=\\d+"));
39}
40
Duncan Mercer9c46b902022-08-19 17:55:1141TEST(LensUrlUtilsTest, GetUnknownEntryPointTest) {
Duncan Mercerbfe13b832024-11-18 18:08:2642 std::string query_param =
Duncan Mercerfeb830f2024-11-25 18:46:4143 lens::GetQueryParametersForLensRequest(lens::EntryPoint::UNKNOWN);
Duncan Mercer14dd5c022023-01-11 19:57:4644 EXPECT_THAT(query_param, MatchesRegex("re=df&s=4&st=\\d+"));
Duncan Mercer9c46b902022-08-19 17:55:1145}
46
Duncan Mercer9c46b902022-08-19 17:55:1147} // namespace lens