Modernize CPDF_LinkExtractTest code.

Use range-based for-loops to iterate through the test cases. Name
constants kFoo.

Change-Id: Ia77e72660aac14883ba7d77742fd9f6e843e4e43
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/86570
Reviewed-by: Hui Yingst <nigi@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
diff --git a/core/fpdftext/cpdf_linkextract_unittest.cpp b/core/fpdftext/cpdf_linkextract_unittest.cpp
index f1528fa..66b30f4 100644
--- a/core/fpdftext/cpdf_linkextract_unittest.cpp
+++ b/core/fpdftext/cpdf_linkextract_unittest.cpp
@@ -5,7 +5,6 @@
 #include "core/fpdftext/cpdf_linkextract.h"
 
 #include "testing/gtest/include/gtest/gtest.h"
-#include "third_party/base/cxx17_backports.h"
 
 // Class to help test functions in CPDF_LinkExtract class.
 class CPDF_TestLinkExtract final : public CPDF_LinkExtract {
@@ -22,7 +21,7 @@
 TEST(CPDF_LinkExtractTest, CheckMailLink) {
   CPDF_TestLinkExtract extractor;
   // Check cases that fail to extract valid mail link.
-  const wchar_t* const invalid_strs[] = {
+  const wchar_t* const kInvalidStrings[] = {
       L"",
       L"peter.pan",       // '@' is required.
       L"abc@server",      // Domain name needs at least one '.'.
@@ -31,15 +30,14 @@
       L"abc@.xyz.org",    // Domain name should not start with '.'.
       L"fan@g..com"       // Domain name should not have consecutive '.'
   };
-  for (size_t i = 0; i < pdfium::size(invalid_strs); ++i) {
-    const wchar_t* const input = invalid_strs[i];
+  for (const wchar_t* input : kInvalidStrings) {
     WideString text_str(input);
     EXPECT_FALSE(extractor.CheckMailLink(&text_str)) << input;
   }
 
   // Check cases that can extract valid mail link.
   // An array of {input_string, expected_extracted_email_address}.
-  const wchar_t* const valid_strs[][2] = {
+  const wchar_t* const kValidStrings[][2] = {
       {L"peter@abc.d", L"peter@abc.d"},
       {L"red.teddy.b@abc.com", L"red.teddy.b@abc.com"},
       {L"abc_@gmail.com", L"abc_@gmail.com"},  // '_' is ok before '@'.
@@ -52,11 +50,11 @@
       {L"fan@g.com..", L"fan@g.com"},           // Trim the ending periods.
       {L"CAP.cap@Gmail.Com", L"CAP.cap@Gmail.Com"},  // Keep the original case.
   };
-  for (size_t i = 0; i < pdfium::size(valid_strs); ++i) {
-    const wchar_t* const input = valid_strs[i][0];
+  for (const auto& it : kValidStrings) {
+    const wchar_t* const input = it[0];
     WideString text_str(input);
     WideString expected_str(L"mailto:");
-    expected_str += valid_strs[i][1];
+    expected_str += it[1];
     EXPECT_TRUE(extractor.CheckMailLink(&text_str)) << input;
     EXPECT_STREQ(expected_str.c_str(), text_str.c_str());
   }
@@ -66,7 +64,7 @@
   CPDF_TestLinkExtract extractor;
   // Check cases that fail to extract valid web link.
   // The last few are legit web addresses that we don't handle now.
-  const wchar_t* const invalid_cases[] = {
+  const wchar_t* const kInvalidCases[] = {
       L"", L"http", L"www.", L"https-and-www",
       L"http:/abc.com",             // Missing slash.
       L"http://((()),",             // Only invalid chars in host name.
@@ -78,16 +76,15 @@
       // Web addresses that in correct format that we don't handle.
       L"abc.example.com",  // URL without scheme.
   };
-  const int32_t DEFAULT_VALUE = -42;
-  for (size_t i = 0; i < pdfium::size(invalid_cases); ++i) {
-    const wchar_t* const input = invalid_cases[i];
+  constexpr int32_t kDefaultValue = -42;
+  for (const wchar_t* input : kInvalidCases) {
     WideString text_str(input);
-    int32_t start_offset = DEFAULT_VALUE;
-    int32_t count = DEFAULT_VALUE;
+    int32_t start_offset = kDefaultValue;
+    int32_t count = kDefaultValue;
     EXPECT_FALSE(extractor.CheckWebLink(&text_str, &start_offset, &count))
         << input;
-    EXPECT_EQ(DEFAULT_VALUE, start_offset) << input;
-    EXPECT_EQ(DEFAULT_VALUE, count) << input;
+    EXPECT_EQ(kDefaultValue, start_offset) << input;
+    EXPECT_EQ(kDefaultValue, count) << input;
   }
 
   // Check cases that can extract valid web link.
@@ -98,7 +95,7 @@
     const int32_t start_offset;
     const int32_t count;
   };
-  const ValidCase valid_cases[] = {
+  const ValidCase kValidCases[] = {
       {L"http://www.example.com", L"http://www.example.com", 0,
        22},  // standard URL.
       {L"http://www.example.com:88", L"http://www.example.com:88", 0,
@@ -174,15 +171,15 @@
       {L"www.测试。net。", L"http://www.测试。net。", 0, 11},
       {L"www.测试.net;", L"http://www.测试.net;", 0, 11},
   };
-  for (size_t i = 0; i < pdfium::size(valid_cases); ++i) {
-    const wchar_t* const input = valid_cases[i].input_string;
+  for (const auto& it : kValidCases) {
+    const wchar_t* const input = it.input_string;
     WideString text_str(input);
-    int32_t start_offset = DEFAULT_VALUE;
-    int32_t count = DEFAULT_VALUE;
+    int32_t start_offset = kDefaultValue;
+    int32_t count = kDefaultValue;
     EXPECT_TRUE(extractor.CheckWebLink(&text_str, &start_offset, &count))
         << input;
-    EXPECT_STREQ(valid_cases[i].url_extracted, text_str.c_str());
-    EXPECT_EQ(valid_cases[i].start_offset, start_offset) << input;
-    EXPECT_EQ(valid_cases[i].count, count) << input;
+    EXPECT_STREQ(it.url_extracted, text_str.c_str());
+    EXPECT_EQ(it.start_offset, start_offset) << input;
+    EXPECT_EQ(it.count, count) << input;
   }
 }