@@ -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,16 @@ 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_inline ( Primer ::OpenProject ::FilterableTreeView . new ) do |tree |
98+ tree . with_sub_tree ( label : "Foo" , select_variant : :single )
99+ end
100+
101+ assert_selector ( ".FormControl-checkbox-wrap" , visible : :hidden )
102+ assert_selector ( "input[name=include_sub_items]:not([checked=false])" , visible : :hidden )
103+ assert_selector ( "segmented-control" , visible : :hidden )
104+ end
105+
96106 def test_has_filter_input
97107 render_preview ( :default )
98108
@@ -119,6 +129,26 @@ def test_filter_input_arguments_can_be_overridden
119129 assert_selector ( "label[for='#{ id } '].sr-only" , text : "Filtern" )
120130 end
121131
132+ def test_leaf_cannot_render_with_select_variant_none
133+ error = assert_raises ( ArgumentError ) do
134+ render_inline ( Primer ::OpenProject ::FilterableTreeView . new ) do |tree |
135+ tree . with_leaf ( label : "Foo" , select_variant : :none )
136+ end
137+ end
138+
139+ assert_equal error . message , "FilterableTreeView only supports `:multiple` or `:single` as select_variant"
140+ end
141+
142+ def test_sub_trees_cannot_render_with_select_variant_none
143+ error = assert_raises ( ArgumentError ) do
144+ render_inline ( Primer ::OpenProject ::FilterableTreeView . new ) do |tree |
145+ tree . with_sub_tree ( label : "Foo" , select_variant : :none )
146+ end
147+ end
148+
149+ assert_equal error . message , "FilterableTreeView only supports `:multiple` or `:single` as select_variant"
150+ end
151+
122152 def test_sub_trees_cannot_load_with_async_spinner
123153 error = assert_raises ( ArgumentError ) do
124154 render_inline ( Primer ::OpenProject ::FilterableTreeView . new ) do |tree |
@@ -128,7 +158,7 @@ def test_sub_trees_cannot_load_with_async_spinner
128158 end
129159 end
130160
131- assert_equal error . message , "FilteredTreeView does not support asynchronous loading"
161+ assert_equal error . message , "FilterableTreeView does not support asynchronous loading"
132162 end
133163
134164 def test_sub_trees_cannot_load_with_async_skeleton
@@ -140,7 +170,7 @@ def test_sub_trees_cannot_load_with_async_skeleton
140170 end
141171 end
142172
143- assert_equal error . message , "FilteredTreeView does not support asynchronous loading"
173+ assert_equal error . message , "FilterableTreeView does not support asynchronous loading"
144174 end
145175
146176 def test_custom_filter_modes
0 commit comments