@@ -101,61 +101,76 @@ jest.mock('../style_panel/tooltip/tooltip', () => ({
101101} ) ) ;
102102
103103jest . mock ( '../style_panel/axes/axes' , ( ) => ( {
104- AxesOptions : jest . fn ( ( { categoryAxes, valueAxes, onCategoryAxesChange, onValueAxesChange } ) => (
105- < div data-test-subj = "axes-panel" >
106- < button
107- data-test-subj = "update-category-axes"
108- onClick = { ( ) =>
109- onCategoryAxesChange ( [
110- ...categoryAxes ,
111- {
112- id : 'new-category' ,
113- type : 'category' as const ,
114- position : 'bottom' ,
115- show : true ,
116- labels : {
104+ AxesOptions : jest . fn (
105+ ( {
106+ categoryAxes,
107+ valueAxes,
108+ onCategoryAxesChange,
109+ onValueAxesChange,
110+ onShowFullTimeRangeChange,
111+ showFullTimeRange,
112+ } ) => (
113+ < div data-test-subj = "axes-panel" >
114+ < button
115+ data-test-subj = "update-category-axes"
116+ onClick = { ( ) =>
117+ onCategoryAxesChange ( [
118+ ...categoryAxes ,
119+ {
120+ id : 'new-category' ,
121+ type : 'category' as const ,
122+ position : 'bottom' ,
117123 show : true ,
118- filter : true ,
119- rotate : 0 ,
120- truncate : 100 ,
124+ labels : {
125+ show : true ,
126+ filter : true ,
127+ rotate : 0 ,
128+ truncate : 100 ,
129+ } ,
130+ title : {
131+ text : 'New Category' ,
132+ } ,
121133 } ,
122- title : {
123- text : 'New Category' ,
124- } ,
125- } ,
126- ] )
127- }
128- >
129- Update Category Axes
130- </ button >
131- < button
132- data-test-subj = "update-value-axes"
133- onClick = { ( ) =>
134- onValueAxesChange ( [
135- ...valueAxes ,
136- {
137- id : 'new-value' ,
138- name : 'NewAxis' ,
139- type : 'value' as const ,
140- position : 'left' ,
141- show : true ,
142- labels : {
134+ ] )
135+ }
136+ >
137+ Update Category Axes
138+ </ button >
139+ < button
140+ data-test-subj = "update-value-axes"
141+ onClick = { ( ) =>
142+ onValueAxesChange ( [
143+ ...valueAxes ,
144+ {
145+ id : 'new-value' ,
146+ name : 'NewAxis' ,
147+ type : 'value' as const ,
148+ position : 'left' ,
143149 show : true ,
144- rotate : 0 ,
145- filter : false ,
146- truncate : 100 ,
147- } ,
148- title : {
149- text : 'New Value' ,
150+ labels : {
151+ show : true ,
152+ rotate : 0 ,
153+ filter : false ,
154+ truncate : 100 ,
155+ } ,
156+ title : {
157+ text : 'New Value' ,
158+ } ,
150159 } ,
151- } ,
152- ] )
153- }
154- >
155- Update Value Axes
156- </ button >
157- </ div >
158- ) ) ,
160+ ] )
161+ }
162+ >
163+ Update Value Axes
164+ </ button >
165+ < button
166+ data-test-subj = "toggle-full-time-range"
167+ onClick = { ( ) => onShowFullTimeRangeChange ( ! showFullTimeRange ) }
168+ >
169+ Toggle Full Time Range
170+ </ button >
171+ </ div >
172+ )
173+ ) ,
159174} ) ) ;
160175
161176jest . mock ( '../style_panel/title/title' , ( ) => ( {
@@ -235,6 +250,7 @@ describe('AreaVisStyleControls', () => {
235250 show : true ,
236251 titleName : '' ,
237252 } ,
253+ showFullTimeRange : false ,
238254 } ,
239255 onStyleChange : jest . fn ( ) ,
240256 axisColumnMappings : {
@@ -304,6 +320,10 @@ describe('AreaVisStyleControls', () => {
304320 test ( 'shows legend when FACET mapping is present' , ( ) => {
305321 const props = {
306322 ...defaultProps ,
323+ styleOptions : {
324+ ...defaultProps . styleOptions ,
325+ showFullTimeRange : false ,
326+ } ,
307327 axisColumnMappings : {
308328 ...defaultProps . axisColumnMappings ,
309329 [ AxisRole . FACET ] : {
@@ -546,4 +566,14 @@ describe('AreaVisStyleControls', () => {
546566 } ) ;
547567 } ) ;
548568 } ) ;
569+
570+ test ( 'updates showFullTimeRange correctly' , async ( ) => {
571+ render ( < AreaVisStyleControls { ...defaultProps } /> ) ;
572+
573+ await userEvent . click ( screen . getByTestId ( 'toggle-full-time-range' ) ) ;
574+
575+ expect ( defaultProps . onStyleChange ) . toHaveBeenCalledWith ( {
576+ showFullTimeRange : true , // Default is false, so toggling sets it to true
577+ } ) ;
578+ } ) ;
549579} ) ;
0 commit comments