|
@@ -31,6 +31,20 @@ describe("ClickToCopy", () => {
|
|
|
expect(document.execCommand).toBeCalledWith("copy");
|
|
|
});
|
|
|
|
|
|
+ it("copies text when receives keydown Enter", () => {
|
|
|
+ document.execCommand = jest.fn();
|
|
|
+ const rendered = mount(<ClickToCopy text="test-text" />);
|
|
|
+ rendered.find("span").first().simulate("keydown", { key: "Enter" });
|
|
|
+ expect(document.execCommand).toBeCalledWith("copy");
|
|
|
+ });
|
|
|
+
|
|
|
+ it("does not copy text when receives other keydowns", () => {
|
|
|
+ document.execCommand = jest.fn();
|
|
|
+ const rendered = mount(<ClickToCopy text="test-text" />);
|
|
|
+ rendered.find("span").first().simulate("keydown", { key: "Escape" });
|
|
|
+ expect(document.execCommand).not.toHaveBeenCalled();
|
|
|
+ });
|
|
|
+
|
|
|
it("shows tooltip when hovered", () => {
|
|
|
const rendered = mount(<ClickToCopy text="test-text" />);
|
|
|
rendered.find("span").first().simulate("mouseover");
|
|
@@ -38,4 +52,11 @@ describe("ClickToCopy", () => {
|
|
|
rendered.find("span").first().simulate("click");
|
|
|
expect(rendered).toMatchSnapshot();
|
|
|
});
|
|
|
+
|
|
|
+ it("resets when focused", () => {
|
|
|
+ const rendered = mount(<ClickToCopy text="test-text" />);
|
|
|
+ rendered.find("span").first().simulate("click");
|
|
|
+ rendered.find("span").first().simulate("focus");
|
|
|
+ expect(rendered).toMatchSnapshot();
|
|
|
+ });
|
|
|
});
|