Export of internal Abseil changes
-- 167cd2647144583746311129b0cc98a89a9897e1 by Andy Soffer <asoffer@google.com>: Internal Changes PiperOrigin-RevId: 268000987 -- ab44fea7dfdaf763c69609a08ddfac22480ce520 by Derek Mauro <dmauro@google.com>: Fix flags Cmake tests on Windows PiperOrigin-RevId: 267859442 -- d7ec9f7611370b01bc9a5aed7e18460df2a15429 by Abseil Team <absl-team@google.com>: Fix undefined behavior in symbolize_elf.inc PiperOrigin-RevId: 267684904 -- e7c5f8e472a91ed99bdf4876942f2bda5751aa6c by Abseil Team <absl-team@google.com>: Turn off ABSL_HAS_ALARM on Fuchsia. PiperOrigin-RevId: 267666090 -- b7d25d5c71a49e697a8bf6440ed30f2e3f036420 by Chris Kennelly <ckennelly@google.com>: Mark once initialization function as no inline. We expect this code to run infrequently. PiperOrigin-RevId: 267649713 -- dc2a5e5f1e39a03fff837d34a319033fde55d9ba by Derek Mauro <dmauro@google.com>: Fix the MSVC CMake random build PiperOrigin-RevId: 267624074 -- ba2751b67fa17d1b6c53e5ba79f81a5371e4a03a by Abseil Team <absl-team@google.com>: Move "internal/flag.*" files to the "internal" build target. PiperOrigin-RevId: 267588996 -- 05b985a33eec4f8acff1809ad9218a1e22220f34 by Abseil Team <absl-team@google.com>: Move "internal/flag.*" files to the "internal" build target. PiperOrigin-RevId: 267580412 GitOrigin-RevId: 167cd2647144583746311129b0cc98a89a9897e1 Change-Id: Ibd334f46a5671c7c1d3fcf5354029e2fbb7ba91f
This commit is contained in:
		
							parent
							
								
									325fd7b042
								
							
						
					
					
						commit
						97c1664b4b
					
				
					 14 changed files with 154 additions and 62 deletions
				
			
		|  | @ -15,9 +15,13 @@ | |||
| 
 | ||||
| #include "absl/flags/internal/commandlineflag.h" | ||||
| 
 | ||||
| #include <algorithm> | ||||
| #include <string> | ||||
| 
 | ||||
| #include "gtest/gtest.h" | ||||
| #include "absl/flags/flag.h" | ||||
| #include "absl/flags/internal/registry.h" | ||||
| #include "absl/flags/usage_config.h" | ||||
| #include "absl/memory/memory.h" | ||||
| #include "absl/strings/match.h" | ||||
| #include "absl/strings/str_cat.h" | ||||
|  | @ -33,10 +37,26 @@ namespace flags = absl::flags_internal; | |||
| 
 | ||||
| class CommandLineFlagTest : public testing::Test { | ||||
|  protected: | ||||
|   static void SetUpTestSuite() { | ||||
|     // Install a function to normalize filenames before this test is run.
 | ||||
|     absl::FlagsUsageConfig default_config; | ||||
|     default_config.normalize_filename = &CommandLineFlagTest::NormalizeFileName; | ||||
|     absl::SetFlagsUsageConfig(default_config); | ||||
|   } | ||||
| 
 | ||||
|   void SetUp() override { flag_saver_ = absl::make_unique<flags::FlagSaver>(); } | ||||
|   void TearDown() override { flag_saver_.reset(); } | ||||
| 
 | ||||
|  private: | ||||
|   static std::string NormalizeFileName(absl::string_view fname) { | ||||
| #ifdef _WIN32 | ||||
|     std::string normalized(fname); | ||||
|     std::replace(normalized.begin(), normalized.end(), '\\', '/'); | ||||
|     fname = normalized; | ||||
| #endif | ||||
|     return std::string(fname); | ||||
|   } | ||||
| 
 | ||||
|   std::unique_ptr<flags::FlagSaver> flag_saver_; | ||||
| }; | ||||
| 
 | ||||
|  | @ -49,9 +69,10 @@ TEST_F(CommandLineFlagTest, TestAttributesAccessMethods) { | |||
|   EXPECT_EQ(flag_01->Typename(), ""); | ||||
|   EXPECT_TRUE(!flag_01->IsRetired()); | ||||
|   EXPECT_TRUE(flag_01->IsOfType<int>()); | ||||
|   EXPECT_TRUE(absl::EndsWith( | ||||
|       flag_01->Filename(), | ||||
|       "absl/flags/internal/commandlineflag_test.cc")); | ||||
|   EXPECT_TRUE( | ||||
|       absl::EndsWith(flag_01->Filename(), | ||||
|                      "absl/flags/internal/commandlineflag_test.cc")) | ||||
|       << flag_01->Filename(); | ||||
| 
 | ||||
|   auto* flag_02 = flags::FindCommandLineFlag("string_flag"); | ||||
| 
 | ||||
|  | @ -61,9 +82,10 @@ TEST_F(CommandLineFlagTest, TestAttributesAccessMethods) { | |||
|   EXPECT_EQ(flag_02->Typename(), ""); | ||||
|   EXPECT_TRUE(!flag_02->IsRetired()); | ||||
|   EXPECT_TRUE(flag_02->IsOfType<std::string>()); | ||||
|   EXPECT_TRUE(absl::EndsWith( | ||||
|       flag_02->Filename(), | ||||
|       "absl/flags/internal/commandlineflag_test.cc")); | ||||
|   EXPECT_TRUE( | ||||
|       absl::EndsWith(flag_02->Filename(), | ||||
|                      "absl/flags/internal/commandlineflag_test.cc")) | ||||
|       << flag_02->Filename(); | ||||
| 
 | ||||
|   auto* flag_03 = flags::FindRetiredFlag("bool_retired_flag"); | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue