summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorJulian Andres Klode <julian.klode@canonical.com>2024-04-19 15:57:23 +0200
committerJulian Andres Klode <julian.klode@canonical.com>2024-04-19 16:58:24 +0200
commit58ee0fabc9028fcdf86faab3bb9c1db2b27e3644 (patch)
treec437646c2a6e69f2d2d242369969f766f197816a /test
parent633f6d67a28b375cf1f225f14d3c926e618d46af (diff)
Add APT::Configuration::color helper to colorize things
Diffstat (limited to 'test')
-rw-r--r--test/libapt/configuration_test.cc30
1 files changed, 30 insertions, 0 deletions
diff --git a/test/libapt/configuration_test.cc b/test/libapt/configuration_test.cc
index 4d297a9f2..61c7348a2 100644
--- a/test/libapt/configuration_test.cc
+++ b/test/libapt/configuration_test.cc
@@ -230,3 +230,33 @@ List::Option2 { "Multi";
EXPECT_TRUE(Cnf.FindB("Trailing"));
EXPECT_FALSE(Cnf.Exists("Commented::Out"));
}
+
+TEST(ConfigurationTest, Color)
+{
+ _config->Clear();
+ _config->Set("APT::Color::Neutral", "\x1B[N");
+ _config->Set("APT::Color::Green", "\x1B[G");
+ // This is escaped for extra fun
+ _config->Set("APT::Color::Bold", "\\x1B[B");
+ _config->Set("APT::Color::BoldGreen", "bold green");
+ _config->Set("APT::Color::BoldGreenRef", "boldgreen");
+ _config->Set("APT::Color::BoldGreenNeutral", "boldgreen neutral");
+ _config->Set("APT::Color::BoldGreenRefNeutral", "boldgreenref neutral");
+
+ EXPECT_EQ("", APT::Configuration::color("bold"));
+ EXPECT_EQ("", APT::Configuration::color("green"));
+ EXPECT_EQ("content", APT::Configuration::color("green", "content"));
+ EXPECT_EQ("", APT::Configuration::color("boldgreen"));
+ EXPECT_EQ("", APT::Configuration::color("boldgreenref"));
+ EXPECT_EQ("", APT::Configuration::color("boldgreenneutral"));
+ EXPECT_EQ("", APT::Configuration::color("boldgreenrefneutral"));
+
+ _config->Set("APT::Color", "true");
+ EXPECT_EQ("\x1B[B", APT::Configuration::color("bold"));
+ EXPECT_EQ("\x1B[G", APT::Configuration::color("green"));
+ EXPECT_EQ("\x1B[Gcontent\x1B[N", APT::Configuration::color("green", "content"));
+ EXPECT_EQ("\x1B[B\x1B[G", APT::Configuration::color("boldgreen"));
+ EXPECT_EQ("\x1B[B\x1B[G", APT::Configuration::color("boldgreenref"));
+ EXPECT_EQ("\x1B[B\x1B[G\x1B[N", APT::Configuration::color("boldgreenneutral"));
+ EXPECT_EQ("\x1B[B\x1B[G\x1B[N", APT::Configuration::color("boldgreenrefneutral"));
+}