@@ -51,7 +51,7 @@ def test_filter_mode_control_label_can_be_overridden
5151 assert_selector ( "segmented-control [role=list][aria-label='Filtermodus']" )
5252 end
5353
54- def test_segmented_control_can_be_hidden
54+ def test_filter_mode_control_can_be_hidden
5555 render_inline (
5656 Primer ::OpenProject ::FilterableTreeView . new (
5757 filter_mode_control_arguments : { hidden : true }
@@ -93,6 +93,14 @@ def test_include_sub_items_can_have_a_different_default
9393 assert_selector ( "input[name=include_sub_items][checked=checked]" , visible : :visible )
9494 end
9595
96+ def test_include_sub_items_and_filter_mode_are_hidden_for_single_select_variant
97+ render_preview ( :form_input , params : { select_variant : :single } )
98+
99+ assert_selector ( ".FormControl-checkbox-wrap" , visible : :hidden )
100+ assert_selector ( "input[name=include_sub_items]:not([checked=false])" , visible : :hidden )
101+ assert_selector ( "segmented-control" , visible : :hidden )
102+ end
103+
96104 def test_has_filter_input
97105 render_preview ( :default )
98106
@@ -119,6 +127,26 @@ def test_filter_input_arguments_can_be_overridden
119127 assert_selector ( "label[for='#{ id } '].sr-only" , text : "Filtern" )
120128 end
121129
130+ def test_leaf_cannot_render_with_select_variant_none
131+ error = assert_raises ( ArgumentError ) do
132+ render_inline ( Primer ::OpenProject ::FilterableTreeView . new ) do |tree |
133+ tree . with_leaf ( label : "Foo" , select_variant : :none )
134+ end
135+ end
136+
137+ assert_equal error . message , "FilterableTreeView only supports `:multiple` or `:single` as select_variant"
138+ end
139+
140+ def test_sub_trees_cannot_render_with_select_variant_none
141+ error = assert_raises ( ArgumentError ) do
142+ render_inline ( Primer ::OpenProject ::FilterableTreeView . new ) do |tree |
143+ tree . with_sub_tree ( label : "Foo" , select_variant : :none )
144+ end
145+ end
146+
147+ assert_equal error . message , "FilterableTreeView only supports `:multiple` or `:single` as select_variant"
148+ end
149+
122150 def test_sub_trees_cannot_load_with_async_spinner
123151 error = assert_raises ( ArgumentError ) do
124152 render_inline ( Primer ::OpenProject ::FilterableTreeView . new ) do |tree |
@@ -128,7 +156,7 @@ def test_sub_trees_cannot_load_with_async_spinner
128156 end
129157 end
130158
131- assert_equal error . message , "FilteredTreeView does not support asynchronous loading"
159+ assert_equal error . message , "FilterableTreeView does not support asynchronous loading"
132160 end
133161
134162 def test_sub_trees_cannot_load_with_async_skeleton
@@ -140,7 +168,7 @@ def test_sub_trees_cannot_load_with_async_skeleton
140168 end
141169 end
142170
143- assert_equal error . message , "FilteredTreeView does not support asynchronous loading"
171+ assert_equal error . message , "FilterableTreeView does not support asynchronous loading"
144172 end
145173
146174 def test_custom_filter_modes
0 commit comments