From c63aa07fb888f8ad4ad4b7ee2e59cf7fecd8477e Mon Sep 17 00:00:00 2001 From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com> Date: Tue, 27 Oct 2026 21:02:19 +0100 Subject: [PATCH] fix: give the setup list the site's select arrow The install box's select had a rule of its own that dropped the arrow and read as a text field. It now takes the shared select rule and --rb-select-arrow in both themes. --- tests/test_site_density_cards.py | 26 ++++++++++++++++++++++++++ website/src/styles/retrobios.css | 12 ++---------- 2 files changed, 28 insertions(+), 10 deletions(-) diff --git a/tests/test_site_density_cards.py b/tests/test_site_density_cards.py index 6d924ad31..adf141516 100644 --- a/tests/test_site_density_cards.py +++ b/tests/test_site_density_cards.py @@ -228,6 +228,32 @@ class AnInstallBoxShowsOneCommand(unittest.TestCase): self.assertEqual(text.count("install.sh | sh"), 3) +class TheSetupListLooksLikeAList(unittest.TestCase): + """The setup list had a rule of its own without the arrow, and read as + a text field at 390 and 1440 px.""" + + def test_the_select_takes_the_site_arrow(self) -> None: + css = (REPO_ROOT / "website" / "src" / "styles" / "retrobios.css").read_text(encoding="utf-8") + shared = re.search(r"\.sl-markdown-content select \{([^}]*)\}", css) + self.assertIsNotNone(shared) + self.assertIn("appearance: none", shared.group(1)) + self.assertIn("var(--rb-select-arrow)", shared.group(1)) + # No rule for the install box's select overrides it. + self.assertNotRegex(css, r"rb-install-setup select") + # The arrow is defined for both themes. + self.assertEqual(len(re.findall(r"--rb-select-arrow:", css)), 2) + # The box's select sits in Markdown content, where the shared rule applies. + box = "\n".join(gs._console_install_block("PlayStation Portable", PAIRS)) + self.assertIn('