@@ -135,7 +135,7 @@ public void Select_Lookup()
135135 }
136136
137137 [ Fact ]
138- public void IsClearable_Ok ( )
138+ public async Task IsClearable_Ok ( )
139139 {
140140 var val = "Test2" ;
141141 var cut = Context . RenderComponent < Select < string > > ( pb =>
@@ -155,8 +155,8 @@ public void IsClearable_Ok()
155155 } ) ;
156156 } ) ;
157157 var clearButton = cut . Find ( ".clear-icon" ) ;
158- cut . InvokeAsync ( ( ) => clearButton . Click ( ) ) ;
159- Assert . Empty ( val ) ;
158+ await cut . InvokeAsync ( ( ) => clearButton . Click ( ) ) ;
159+ Assert . Null ( val ) ;
160160
161161 // 提高代码覆盖率
162162 var select = cut ;
@@ -175,6 +175,21 @@ public void IsClearable_Ok()
175175 validPi . SetValue ( select . Instance , false ) ;
176176 val = pi . GetValue ( select . Instance , null ) ! . ToString ( ) ;
177177 Assert . Contains ( "text-danger" , val ) ;
178+
179+ // 更改数据类型为不可为空 int
180+ // IsClearable 参数无效
181+ var cut1 = Context . RenderComponent < Select < int > > ( pb =>
182+ {
183+ pb . Add ( a => a . IsClearable , true ) ;
184+ pb . Add ( a => a . Items , new List < SelectedItem > ( )
185+ {
186+ new ( "1" , "Test1" ) ,
187+ new ( "2" , "Test2" ) ,
188+ new ( "3" , "Test3" )
189+ } ) ;
190+ pb . Add ( a => a . Value , 1 ) ;
191+ } ) ;
192+ cut1 . DoesNotContain ( "clear-icon" ) ;
178193 }
179194
180195 [ Fact ]
@@ -811,8 +826,8 @@ public async Task IsVirtualize_Items_Clearable_Ok()
811826 var button = cut . Find ( ".clear-icon" ) ;
812827 await cut . InvokeAsync ( ( ) => button . Click ( ) ) ;
813828
814- // UI 恢复 Test1
815- Assert . Equal ( "Test1 " , el . Value ) ;
829+ // 可为空数据类型 UI 为 ""
830+ Assert . Equal ( "" , el . Value ) ;
816831
817832 // 下拉框显示所有选项
818833 items = cut . FindAll ( ".dropdown-item" ) ;
@@ -870,8 +885,8 @@ public async Task IsVirtualize_OnQueryAsync_Clearable_Ok()
870885 var button = cut . Find ( ".clear-icon" ) ;
871886 await cut . InvokeAsync ( ( ) => button . Click ( ) ) ;
872887
873- // UI 恢复 Test1
874- Assert . Equal ( "All " , el . Value ) ;
888+ // 可为空数据类型 UI 为 ""
889+ Assert . Equal ( "" , el . Value ) ;
875890
876891 // 下拉框显示所有选项
877892 Assert . True ( query ) ;
0 commit comments