@@ -7,9 +7,11 @@ import { addressOptions } from './demoOptions';
77describe ( 'Cascader.Keyboard' , ( ) => {
88 let wrapper ;
99 let selectedValue ;
10+ let selectedOptions ;
1011 let menus ;
11- const onChange = value => {
12+ const onChange = ( value , options ) => {
1213 selectedValue = value ;
14+ selectedOptions = options ;
1315 } ;
1416
1517 beforeEach ( ( ) => {
@@ -18,6 +20,7 @@ describe('Cascader.Keyboard', () => {
1820
1921 afterEach ( ( ) => {
2022 selectedValue = null ;
23+ selectedOptions = null ;
2124 menus = null ;
2225 } ) ;
2326
@@ -73,6 +76,24 @@ describe('Cascader.Keyboard', () => {
7376 wrapper . find ( 'input' ) . simulate ( 'keyDown' , { which : KeyCode . ENTER } ) ;
7477 expect ( wrapper . isOpen ( ) ) . toBeFalsy ( ) ;
7578 expect ( selectedValue ) . toEqual ( [ 'zj' , 'hangzhou' , 'yuhang' ] ) ;
79+ expect ( selectedOptions ) . toEqual ( [
80+ addressOptions [ 1 ] ,
81+ addressOptions [ 1 ] . children [ 0 ] ,
82+ addressOptions [ 1 ] . children [ 0 ] . children [ 0 ] ,
83+ ] ) ;
84+ } ) ;
85+
86+ it ( 'enter on search' , ( ) => {
87+ wrapper . find ( 'input' ) . simulate ( 'change' , { target : { value : '余杭' } } ) ;
88+ wrapper . find ( 'input' ) . simulate ( 'keyDown' , { which : KeyCode . DOWN } ) ;
89+ wrapper . find ( 'input' ) . simulate ( 'keyDown' , { which : KeyCode . ENTER } ) ;
90+
91+ expect ( selectedValue ) . toEqual ( [ 'zj' , 'hangzhou' , 'yuhang' ] ) ;
92+ expect ( selectedOptions ) . toEqual ( [
93+ addressOptions [ 1 ] ,
94+ addressOptions [ 1 ] . children [ 0 ] ,
95+ addressOptions [ 1 ] . children [ 0 ] . children [ 0 ] ,
96+ ] ) ;
7697 } ) ;
7798
7899 it ( 'rtl' , ( ) => {
0 commit comments