mirror of https://github.com/apache/superset.git
Avoid fetch fav dashboard stat not logged in (#8527)
* Avoid fetch fav dashboard stat not logged in * Fix old Header tests and add a new one * Add userId to other Header tests to be consistent * Format code to make 'prettier' tests pass
This commit is contained in:
parent
fd9a713c7e
commit
5f499b9545
|
@ -31,7 +31,12 @@ describe('Header', () => {
|
|||
const props = {
|
||||
addSuccessToast: () => {},
|
||||
addDangerToast: () => {},
|
||||
dashboardInfo: { id: 1, dash_edit_perm: true, dash_save_perm: true },
|
||||
dashboardInfo: {
|
||||
id: 1,
|
||||
dash_edit_perm: true,
|
||||
dash_save_perm: true,
|
||||
userId: 1,
|
||||
},
|
||||
dashboardTitle: 'title',
|
||||
charts: {},
|
||||
layout: {},
|
||||
|
@ -74,7 +79,12 @@ describe('Header', () => {
|
|||
|
||||
describe('read-only-user', () => {
|
||||
const overrideProps = {
|
||||
dashboardInfo: { id: 1, dash_edit_perm: false, dash_save_perm: false },
|
||||
dashboardInfo: {
|
||||
id: 1,
|
||||
dash_edit_perm: false,
|
||||
dash_save_perm: false,
|
||||
userId: 1,
|
||||
},
|
||||
};
|
||||
|
||||
it('should render the EditableTitle', () => {
|
||||
|
@ -111,7 +121,12 @@ describe('Header', () => {
|
|||
describe('write-user', () => {
|
||||
const overrideProps = {
|
||||
editMode: false,
|
||||
dashboardInfo: { id: 1, dash_edit_perm: true, dash_save_perm: true },
|
||||
dashboardInfo: {
|
||||
id: 1,
|
||||
dash_edit_perm: true,
|
||||
dash_save_perm: true,
|
||||
userId: 1,
|
||||
},
|
||||
};
|
||||
|
||||
it('should render the EditableTitle', () => {
|
||||
|
@ -148,7 +163,12 @@ describe('Header', () => {
|
|||
describe('write-user-with-edit-mode', () => {
|
||||
const overrideProps = {
|
||||
editMode: true,
|
||||
dashboardInfo: { id: 1, dash_edit_perm: true, dash_save_perm: true },
|
||||
dashboardInfo: {
|
||||
id: 1,
|
||||
dash_edit_perm: true,
|
||||
dash_save_perm: true,
|
||||
userId: 1,
|
||||
},
|
||||
};
|
||||
|
||||
it('should render the EditableTitle', () => {
|
||||
|
@ -181,4 +201,45 @@ describe('Header', () => {
|
|||
expect(wrapper.find(UndoRedoKeylisteners)).toHaveLength(1);
|
||||
});
|
||||
});
|
||||
|
||||
describe('logged-out-user', () => {
|
||||
const overrideProps = {
|
||||
dashboardInfo: {
|
||||
id: 1,
|
||||
dash_edit_perm: false,
|
||||
dash_save_perm: false,
|
||||
userId: null,
|
||||
},
|
||||
};
|
||||
|
||||
it('should render the EditableTitle', () => {
|
||||
const wrapper = setup(overrideProps);
|
||||
expect(wrapper.find(EditableTitle)).toHaveLength(1);
|
||||
});
|
||||
|
||||
it('should render the PublishedStatus', () => {
|
||||
const wrapper = setup(overrideProps);
|
||||
expect(wrapper.find(PublishedStatus)).toHaveLength(1);
|
||||
});
|
||||
|
||||
it('should not render the FaveStar', () => {
|
||||
const wrapper = setup(overrideProps);
|
||||
expect(wrapper.find(FaveStar)).toHaveLength(0);
|
||||
});
|
||||
|
||||
it('should render the HeaderActionsDropdown', () => {
|
||||
const wrapper = setup(overrideProps);
|
||||
expect(wrapper.find(HeaderActionsDropdown)).toHaveLength(1);
|
||||
});
|
||||
|
||||
it('should render one Button', () => {
|
||||
const wrapper = setup(overrideProps);
|
||||
expect(wrapper.find(Button)).toHaveLength(1);
|
||||
});
|
||||
|
||||
it('should not set up undo/redo', () => {
|
||||
const wrapper = setup(overrideProps);
|
||||
expect(wrapper.find(UndoRedoKeylisteners)).toHaveLength(0);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
|
@ -317,14 +317,16 @@ class Header extends React.PureComponent {
|
|||
canSave={userCanSaveAs}
|
||||
/>
|
||||
</span>
|
||||
<span className="favstar">
|
||||
<FaveStar
|
||||
itemId={dashboardInfo.id}
|
||||
fetchFaveStar={this.props.fetchFaveStar}
|
||||
saveFaveStar={this.props.saveFaveStar}
|
||||
isStarred={this.props.isStarred}
|
||||
/>
|
||||
</span>
|
||||
{dashboardInfo.userId && (
|
||||
<span className="favstar">
|
||||
<FaveStar
|
||||
itemId={dashboardInfo.id}
|
||||
fetchFaveStar={this.props.fetchFaveStar}
|
||||
saveFaveStar={this.props.saveFaveStar}
|
||||
isStarred={this.props.isStarred}
|
||||
/>
|
||||
</span>
|
||||
)}
|
||||
</div>
|
||||
|
||||
<div className="button-container">
|
||||
|
|
Loading…
Reference in New Issue