Skip to content
Snippets Groups Projects
Unverified Commit 81f2bd1f authored by Dalton's avatar Dalton Committed by GitHub
Browse files

Hide explore results button for no-data users (#20065)

parent 385fa88f
No related branches found
No related tags found
No related merge requests found
...@@ -398,8 +398,12 @@ function ViewTitleHeaderRightSide(props) { ...@@ -398,8 +398,12 @@ function ViewTitleHeaderRightSide(props) {
onCollapseFilters, onCollapseFilters,
} = props; } = props;
const isShowingNotebook = queryBuilderMode === "notebook"; const isShowingNotebook = queryBuilderMode === "notebook";
const canRunAdhocQueries = !question.query().readOnly();
const hasExploreResultsLink = const hasExploreResultsLink =
isNative && isSaved && MetabaseSettings.get("enable-nested-queries"); isNative &&
isSaved &&
canRunAdhocQueries &&
MetabaseSettings.get("enable-nested-queries");
return ( return (
<div <div
......
...@@ -455,6 +455,29 @@ describe("View Header | Saved GUI question", () => { ...@@ -455,6 +455,29 @@ describe("View Header | Saved GUI question", () => {
}); });
}); });
describe("View Header | native question without write permissions on database (eg user without self serve data permissions)", () => {
let originalNativePermissions;
beforeEach(() => {
setupNative();
originalNativePermissions = SAMPLE_DATABASE.native_permissions;
SAMPLE_DATABASE.native_permissions = "none";
});
afterEach(() => {
SAMPLE_DATABASE.native_permissions = originalNativePermissions;
});
it("does not display question database", () => {
const { question } = setupNative();
const databaseName = question.database().displayName();
expect(screen.queryByText(databaseName)).not.toBeInTheDocument();
});
it("does not offer to explore query results", () => {
expect(screen.queryByText("Explore results")).not.toBeInTheDocument();
});
});
describe("View Header | Not saved native question", () => { describe("View Header | Not saved native question", () => {
it("does not display question database", () => { it("does not display question database", () => {
const { question } = setupNative(); const { question } = setupNative();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment