@@ -272,27 +272,47 @@ def test_renders_quick_filters
272272 assert_selector ( ".SubHeader-leftPane .MyQuickFilter" , count : 2 )
273273 end
274274
275- def test_quick_filters_are_hidden_on_mobile
275+ def test_quick_filters_are_hidden_on_mobile_when_multiple
276276 render_inline ( Primer ::OpenProject ::SubHeader . new ) do |component |
277277 component . with_filter_button { "Filter" }
278278 component . with_quick_filter { "<span class='MyQuickFilter'>Status</span>" . html_safe }
279+ component . with_quick_filter { "<span class='MyQuickFilter'>Assignee</span>" . html_safe }
279280 end
280281
281282 # Each quick_filter wrapper has d-none d-md-flex (hidden on mobile, visible on desktop)
282- assert_selector ( ".d-none.d-md-flex .MyQuickFilter" )
283+ assert_selector ( ".d-none.d-md-flex .MyQuickFilter" , count : 2 )
284+ end
285+
286+ def test_single_quick_filter_is_visible_on_all_screen_sizes
287+ render_inline ( Primer ::OpenProject ::SubHeader . new ) do |component |
288+ component . with_quick_filter { "<span class='MyQuickFilter'>Status</span>" . html_safe }
289+ end
290+
291+ assert_selector ( ".MyQuickFilter" )
292+ assert_no_selector ( ".d-none .MyQuickFilter" )
283293 end
284294
285- def test_quick_filters_require_filter_button
295+ def test_quick_filters_require_filter_button_when_multiple_quick_filters
286296 err = assert_raises ArgumentError do
287297 render_inline ( Primer ::OpenProject ::SubHeader . new ) do |component |
288298 component . with_filter_input ( name : "filter" , label : "Filter" )
289299 component . with_quick_filter { "Status" }
300+ component . with_quick_filter { "Status" }
290301 end
291302 end
292303
293304 assert_equal "You must provide a filter_button when using quick_filters." , err . message
294305 end
295306
307+
308+ def test_quick_filters_require_no_filter_button_for_single_quick_filter
309+ render_inline ( Primer ::OpenProject ::SubHeader . new ) do |component |
310+ component . with_quick_filter { "<span class='MyQuickFilter'>Status</span>" . html_safe }
311+ end
312+
313+ assert_selector ( ".MyQuickFilter" )
314+ end
315+
296316 def test_quick_filters_maximum_is_five
297317 err = assert_raises ArgumentError do
298318 render_inline ( Primer ::OpenProject ::SubHeader . new ) do |component |
0 commit comments