File tree Expand file tree Collapse file tree 4 files changed +93
-3
lines changed
e2e/testcafe-devextreme/tests
devextreme/js/__internal/grids/grid_core/column_chooser Expand file tree Collapse file tree 4 files changed +93
-3
lines changed Original file line number Diff line number Diff line change @@ -145,3 +145,40 @@ testsFactory({
145145 ) . eql ( 'A' ) ;
146146 } ,
147147} ) ;
148+
149+ test ( 'ColumnChooser should receive and render custom texts' , async ( t ) => {
150+ const cardView = new CardView ( '#container' ) ;
151+
152+ const columnChooserBtn = cardView . getColumnChooserButton ( ) ;
153+ await t . click ( columnChooserBtn ) ;
154+ const columnChooser = cardView . getColumnChooser ( ) ;
155+ const title = columnChooser . getTitle ( ) ;
156+ const emptyMessage = columnChooser . getEmptyMessage ( ) ;
157+ const titleText = await title . innerText ;
158+ const emptyMessageText = await emptyMessage . innerText ;
159+
160+ await t . expect ( titleText ) . eql ( 'customTitle' ) ;
161+ await t . expect ( emptyMessageText ) . eql ( 'customEmptyText' ) ;
162+ } ) . before ( async ( t ) => {
163+ await t . eval ( ( ) => {
164+ ( window as any ) . DevExpress . localization . loadMessages ( {
165+ en : {
166+ 'dxDataGrid-columnChooserTitle' : 'customTitle' ,
167+ 'dxDataGrid-columnChooserEmptyText' : 'customEmptyText' ,
168+ } ,
169+ } ) ;
170+ } ) ;
171+
172+ return createWidget ( 'dxCardView' , {
173+ dataSource : [ ] ,
174+ keyExpr : 'ID' ,
175+ cardsPerRow : 'auto' ,
176+ cardMinWidth : 300 ,
177+ columnChooser : {
178+ enabled : true ,
179+ mode : 'dragAndDrop' ,
180+ height : '340px' ,
181+ } ,
182+ columns : [ ] ,
183+ } ) ;
184+ } ) ;
Original file line number Diff line number Diff line change @@ -237,3 +237,41 @@ test(
237237 component . columnOption ( lastColumnDataField , 'allowHiding' , false ) ;
238238 } ,
239239} ) ) ;
240+
241+ test ( 'ColumnChooser should receive and render custom texts' , async ( t ) => {
242+ const dataGrid = new DataGrid ( '#container' ) ;
243+ await dataGrid . isReady ( ) ;
244+ const columnChooserBtn = dataGrid . getColumnChooserButton ( ) ;
245+ await t . click ( columnChooserBtn ) ;
246+ const columnChooser = dataGrid . getColumnChooser ( ) ;
247+ const title = columnChooser . getTitle ( ) ;
248+ const emptyMessage = columnChooser . getEmptyMessage ( ) ;
249+ const titleText = await title . innerText ;
250+ const emptyMessageText = await emptyMessage . innerText ;
251+ await t . expect ( titleText ) . eql ( 'customTitle' ) ;
252+ await t . expect ( emptyMessageText ) . eql ( 'customEmptyText' ) ;
253+ } ) . before ( async ( t ) => {
254+ await t . eval ( ( ) => {
255+ ( window as any ) . DevExpress . localization . loadMessages ( {
256+ en : {
257+ 'dxDataGrid-columnChooserTitle' : 'customTitle' ,
258+ 'dxDataGrid-columnChooserEmptyText' : 'customEmptyText' ,
259+ } ,
260+ } ) ;
261+ } ) ;
262+
263+ return createWidget ( 'dxDataGrid' , {
264+ columnChooser : {
265+ height : '340px' ,
266+ enabled : true ,
267+ mode : 'dragAndDrop' ,
268+ position : {
269+ my : 'right top' ,
270+ at : 'right bottom' ,
271+ of : '.dx-datagrid-column-chooser-button' ,
272+ } ,
273+ } ,
274+ dataSource : [ ] ,
275+ columns : [ ] ,
276+ } ) ;
277+ } ) ;
Original file line number Diff line number Diff line change @@ -19,8 +19,12 @@ export const defaultOptions = {
1919 mode : 'dragAndDrop' ,
2020 width : 250 ,
2121 height : 260 ,
22- title : messageLocalization . format ( 'dxDataGrid-columnChooserTitle' ) ,
23- emptyPanelText : messageLocalization . format ( 'dxDataGrid-columnChooserEmptyText' ) ,
22+ get title ( ) {
23+ return messageLocalization . format ( 'dxDataGrid-columnChooserTitle' ) ;
24+ } ,
25+ get emptyPanelText ( ) {
26+ return messageLocalization . format ( 'dxDataGrid-columnChooserEmptyText' ) ;
27+ } ,
2428 container : undefined ,
2529 } as ColumnChooser ,
2630} ;
Original file line number Diff line number Diff line change @@ -11,6 +11,9 @@ const CLASS = {
1111 checkbox : 'dx-checkbox' ,
1212 treeViewItem : 'dx-treeview-item' ,
1313 treeView : 'dx-treeview' ,
14+ itemContent : 'dx-item-content' ,
15+ itemContentToolbar : 'dx-toolbar-item-content' ,
16+ emptyMessage : 'dx-empty-message' ,
1417} ;
1518
1619export default class ColumnChooser extends FocusableElement {
@@ -61,4 +64,12 @@ export default class ColumnChooser extends FocusableElement {
6164 getColumn ( index = 0 ) : Selector {
6265 return this . content . find ( `.${ CLASS . treeViewItem } ` ) . nth ( index ) ;
6366 }
64- }
67+
68+ getTitle ( ) : Selector {
69+ return this . content . find ( `.${ CLASS . itemContent } .${ CLASS . itemContentToolbar } ` ) . nth ( 0 ) ;
70+ }
71+
72+ getEmptyMessage ( ) : Selector {
73+ return this . content . find ( `.${ CLASS . emptyMessage } ` ) ;
74+ }
75+ }
You can’t perform that action at this time.
0 commit comments