mirror of
https://gitlab.nic.cz/turris/reforis/foris-js.git
synced 2025-12-15 04:13:36 +01:00
Global alert
This commit is contained in:
@@ -5,14 +5,19 @@
|
||||
* See /LICENSE for more information.
|
||||
*/
|
||||
|
||||
import React, { useContext } from "react";
|
||||
import React from "react";
|
||||
import { render, getByText, queryByText, fireEvent } from "customTestRender";
|
||||
|
||||
import { AlertContext, AlertContextProvider } from "../AlertContext";
|
||||
import { useAlert, AlertContextProvider } from "../AlertContext";
|
||||
|
||||
function AlertTest() {
|
||||
const setAlert = useContext(AlertContext);
|
||||
return <button onClick={() => setAlert("Alert content")}>Set alert</button>;
|
||||
const [setAlert, dismissAlert] = useAlert();
|
||||
return (
|
||||
<>
|
||||
<button onClick={() => setAlert("Alert content")}>Set alert</button>
|
||||
<button onClick={dismissAlert}>Dismiss alert</button>
|
||||
</>
|
||||
);
|
||||
};
|
||||
|
||||
describe("AlertContext", () => {
|
||||
@@ -36,7 +41,7 @@ describe("AlertContext", () => {
|
||||
expect(componentContainer).toMatchSnapshot();
|
||||
});
|
||||
|
||||
it("should dismiss alert", () => {
|
||||
it("should dismiss alert with alert button", () => {
|
||||
fireEvent.click(getByText(componentContainer, "Set alert"));
|
||||
// Alert is present
|
||||
expect(getByText(componentContainer, "Alert content")).toBeDefined();
|
||||
@@ -45,4 +50,14 @@ describe("AlertContext", () => {
|
||||
// Alert is gone
|
||||
expect(queryByText(componentContainer, "Alert content")).toBeNull();
|
||||
});
|
||||
|
||||
it("should dismiss alert with external button", () => {
|
||||
fireEvent.click(getByText(componentContainer, "Set alert"));
|
||||
// Alert is present
|
||||
expect(getByText(componentContainer, "Alert content")).toBeDefined();
|
||||
|
||||
fireEvent.click(getByText(componentContainer, "Dismiss alert"));
|
||||
// Alert is gone
|
||||
expect(queryByText(componentContainer, "Alert content")).toBeNull();
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user