mirror of
https://github.com/apache/superset.git
synced 2026-04-19 08:04:53 +00:00
[explore] fix missing CacheLabel (#4326)
Also adding a basic unit test.
This commit is contained in:
committed by
Grace Guo
parent
75a2b4f610
commit
1f8fccc0f9
@@ -74,7 +74,7 @@ class ExploreChartHeader extends React.PureComponent {
|
||||
json_endpoint: getExploreUrl(formData, 'json'),
|
||||
standalone_endpoint: getExploreUrl(formData, 'standalone'),
|
||||
};
|
||||
|
||||
const chartSucceeded = ['success', 'rendered'].indexOf(this.props.chart.chartStatus) > 0;
|
||||
return (
|
||||
<div
|
||||
id="slice-header"
|
||||
@@ -115,21 +115,16 @@ class ExploreChartHeader extends React.PureComponent {
|
||||
/>
|
||||
}
|
||||
<div className="pull-right">
|
||||
{this.props.chart.chartStatus === 'success' && queryResponse &&
|
||||
{chartSucceeded && queryResponse &&
|
||||
<RowCountLabel
|
||||
rowcount={queryResponse.rowcount}
|
||||
limit={formData.row_limit}
|
||||
/>
|
||||
}
|
||||
{this.props.chart.chartStatus === 'success' &&
|
||||
queryResponse &&
|
||||
queryResponse.is_cached &&
|
||||
|
||||
<CachedLabel
|
||||
onClick={this.runQuery.bind(this)}
|
||||
cachedTimestamp={queryResponse.cached_dttm}
|
||||
/>
|
||||
}
|
||||
/>}
|
||||
{chartSucceeded && queryResponse && queryResponse.is_cached &&
|
||||
<CachedLabel
|
||||
onClick={this.runQuery.bind(this)}
|
||||
cachedTimestamp={queryResponse.cached_dttm}
|
||||
/>}
|
||||
<Timer
|
||||
startTime={this.props.chart.chartUpdateStartTime}
|
||||
endTime={this.props.chart.chartUpdateEndTime}
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
import React from 'react';
|
||||
import { expect } from 'chai';
|
||||
import { describe, it } from 'mocha';
|
||||
import { shallow } from 'enzyme';
|
||||
|
||||
import ExploreChartHeader from '../../../../javascripts/explore/components/ExploreChartHeader';
|
||||
import ExploreActionButtons from '../../../../javascripts/explore/components/ExploreActionButtons';
|
||||
import EditableTitle from '../../../../javascripts/components/EditableTitle';
|
||||
|
||||
const mockProps = {
|
||||
actions: {},
|
||||
can_overwrite: true,
|
||||
can_download: true,
|
||||
isStarred: true,
|
||||
slice: {},
|
||||
table_name: 'foo',
|
||||
form_data: {},
|
||||
timeout: 1000,
|
||||
chart: {
|
||||
queryResponse: {},
|
||||
},
|
||||
};
|
||||
|
||||
describe('ExploreChartHeader', () => {
|
||||
let wrapper;
|
||||
beforeEach(() => {
|
||||
wrapper = shallow(<ExploreChartHeader {...mockProps} />);
|
||||
});
|
||||
|
||||
it('is valid', () => {
|
||||
expect(
|
||||
React.isValidElement(<ExploreChartHeader {...mockProps} />),
|
||||
).to.equal(true);
|
||||
});
|
||||
|
||||
it('renders', () => {
|
||||
expect(wrapper.find(EditableTitle)).to.have.lengthOf(1);
|
||||
expect(wrapper.find(ExploreActionButtons)).to.have.lengthOf(1);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user