@@ -174,7 +174,7 @@ describe("veTable edit", () => {
174174 ) ;
175175 } ) ;
176176
177- it ( "full row edit 存在bug " , async ( ) => {
177+ it ( "full row edit" , async ( ) => {
178178 const wrapper = mount ( veTable , {
179179 propsData : {
180180 columns : COLUMNS ,
@@ -206,14 +206,27 @@ describe("veTable edit", () => {
206206
207207 expect ( wrapper . findAll ( ".ve-table-body-td-edit-input" ) . length ) . toBe ( 4 ) ;
208208
209- // second cell
210- const secondCell = wrapper
209+ // second row cell
210+ const firstRowCell = wrapper
211+ . findAll ( ".ve-table-body-tr" )
212+ . at ( 0 )
213+ . findAll ( ".ve-table-body-td" )
214+ . at ( 1 ) ;
215+
216+ firstRowCell . trigger ( "click" ) ;
217+
218+ await later ( ) ;
219+
220+ expect ( wrapper . findAll ( ".ve-table-body-td-edit-input" ) . length ) . toBe ( 4 ) ;
221+
222+ // second row cell
223+ const secondRowCell = wrapper
211224 . findAll ( ".ve-table-body-tr" )
212225 . at ( 1 )
213226 . findAll ( ".ve-table-body-td" )
214227 . at ( 1 ) ;
215228
216- secondCell . trigger ( "click" ) ;
229+ secondRowCell . trigger ( "click" ) ;
217230
218231 await later ( ) ;
219232
@@ -472,7 +485,7 @@ describe("veTable edit", () => {
472485 expect ( mockFn ) . toHaveBeenCalledTimes ( 2 ) ;
473486 } ) ;
474487
475- it ( "cell value change " , async ( ) => {
488+ it ( "cellValueChange callback function " , async ( ) => {
476489 const mockFn = jest . fn ( ) ;
477490
478491 const wrapper = mount ( veTable , {
@@ -544,6 +557,60 @@ describe("veTable edit", () => {
544557 ) ;
545558 } ) ;
546559
547- // full row edit
548- // rowValueChange
560+ it ( "rowValueChange callback function" , async ( ) => {
561+ const mockFn = jest . fn ( ) ;
562+
563+ const wrapper = mount ( veTable , {
564+ propsData : {
565+ columns : COLUMNS ,
566+ tableData : TABLE_DATA ,
567+ editOption : {
568+ doubleClickEdit : true ,
569+ fullRowEdit : true ,
570+ // cell value change
571+ rowValueChange : ( { row } ) => {
572+ mockFn ( row ) ;
573+ } ,
574+ } ,
575+ rowKeyFieldName : "rowKey" ,
576+ } ,
577+ } ) ;
578+
579+ // first cell
580+ const firstCell = wrapper
581+ . findAll ( ".ve-table-body-tr" )
582+ . at ( 0 )
583+ . findAll ( ".ve-table-body-td" )
584+ . at ( 0 ) ;
585+
586+ firstCell . trigger ( "dblclick" ) ;
587+
588+ await later ( ) ;
589+
590+ expect ( wrapper . findAll ( ".ve-table-body-td-edit-input" ) . length ) . toBe ( 4 ) ;
591+
592+ // set value
593+ const textInput = firstCell . find ( ".ve-table-body-td-edit-input" ) ;
594+ textInput . setValue ( "AAA" ) ;
595+
596+ // second cell
597+ const secondCell = wrapper
598+ . findAll ( ".ve-table-body-tr" )
599+ . at ( 1 )
600+ . findAll ( ".ve-table-body-td" )
601+ . at ( 0 ) ;
602+
603+ secondCell . trigger ( "click" ) ;
604+
605+ await later ( ) ;
606+
607+ expect ( mockFn ) . toHaveBeenCalled ( ) ;
608+ expect ( mockFn ) . toHaveBeenCalledWith ( {
609+ address : "No.1 Century Avenue, Shanghai" ,
610+ date : "1900-05-20" ,
611+ hobby : "coding and coding repeat" ,
612+ name : "AAA" ,
613+ rowKey : 0 ,
614+ } ) ;
615+ } ) ;
549616} ) ;
0 commit comments