Skip to content
Snippets Groups Projects
Unverified Commit 43205e1e authored by Aleksandr Lesnenko's avatar Aleksandr Lesnenko Committed by GitHub
Browse files

fix excluding empty or non-empty date values (#23828)

parent dc1cb1f4
Branches
Tags
No related merge requests found
......@@ -128,19 +128,19 @@ export default function ExcludeDatePicker({
<>
<Separator />
<OptionButton
selected={operator === "is-null"}
selected={operator === "not-null"}
primaryColor={primaryColor}
onClick={() => {
onCommit(["is-null", getDateTimeField(filter[1])]);
onCommit(["not-null", getDateTimeField(filter[1])]);
}}
>
{t`Is empty`}
</OptionButton>
<OptionButton
selected={operator === "not-null"}
selected={operator === "is-null"}
primaryColor={primaryColor}
onClick={() => {
onCommit(["not-null", getDateTimeField(filter[1])]);
onCommit(["is-null", getDateTimeField(filter[1])]);
}}
>
{t`Is not empty`}
......
import React from "react";
import { render, fireEvent, screen } from "@testing-library/react";
import Filter from "metabase-lib/lib/queries/structured/Filter";
import { ORDERS } from "__support__/sample_database_fixture";
import ExcludeDatePicker from "./ExcludeDatePicker";
const query = ORDERS.query();
const filter = new Filter(
[null, ["field", ORDERS.CREATED_AT.id, null]],
null,
query,
);
describe("ExcludeDatePicker", () => {
it("is empty option should exclude empty values by applying not-null filter", () => {
const commitMock = jest.fn();
render(
<ExcludeDatePicker
onFilterChange={jest.fn()}
onCommit={commitMock}
filter={filter}
/>,
);
fireEvent.click(screen.getByText("Is empty"));
expect(commitMock).toHaveBeenCalledWith([
"not-null",
["field", ORDERS.CREATED_AT.id, null],
]);
});
it("is not empty option should exclude non-empty values by applying is-null filter", () => {
const commitMock = jest.fn();
render(
<ExcludeDatePicker
onFilterChange={jest.fn()}
onCommit={commitMock}
filter={filter}
/>,
);
fireEvent.click(screen.getByText("Is not empty"));
expect(commitMock).toHaveBeenCalledWith([
"is-null",
["field", ORDERS.CREATED_AT.id, null],
]);
});
});
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment