import { jsx, jsxs } from "react/jsx-runtime";
import React from "react";
import { render } from "@testing-library/react";
import {
  FlagArgentina,
  FlagBrazil,
  FlagChile,
  HomeFilled,
  MenuList
} from "@gympass/yoga-icons";
import { ThemeProvider, Menu, Button } from "../..";
describe("<Menu />", () => {
  it("should match snapshot in default Menu", () => {
    const { container } = render(
      /* @__PURE__ */ jsx(ThemeProvider, { children: /* @__PURE__ */ jsxs(Menu, { children: [
        /* @__PURE__ */ jsx(Menu.Action, { children: /* @__PURE__ */ jsx(Button.Icon, { icon: MenuList }) }),
        /* @__PURE__ */ jsxs(Menu.List, { children: [
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 1" }),
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 2" }),
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 3" })
        ] })
      ] }) })
    );
    expect(container).toMatchSnapshot();
  });
  it("should match snapshot Menu.Item with icon", () => {
    const { container } = render(
      /* @__PURE__ */ jsx(ThemeProvider, { children: /* @__PURE__ */ jsxs(Menu, { children: [
        /* @__PURE__ */ jsx(Menu.Action, { children: /* @__PURE__ */ jsx(Button.Icon, { icon: MenuList }) }),
        /* @__PURE__ */ jsxs(Menu.List, { children: [
          /* @__PURE__ */ jsx(Menu.Item, { icon: FlagBrazil, children: "Item 1" }),
          /* @__PURE__ */ jsx(Menu.Item, { icon: FlagArgentina, children: "Item 2" }),
          /* @__PURE__ */ jsx(Menu.Item, { icon: FlagChile, children: "Item 3" })
        ] })
      ] }) })
    );
    expect(container).toMatchSnapshot();
  });
  it("should match snapshot Menu.Item with link", () => {
    const { container } = render(
      /* @__PURE__ */ jsx(ThemeProvider, { children: /* @__PURE__ */ jsxs(Menu, { children: [
        /* @__PURE__ */ jsx(Menu.Action, { children: /* @__PURE__ */ jsx(Button.Icon, { icon: MenuList }) }),
        /* @__PURE__ */ jsxs(Menu.List, { children: [
          /* @__PURE__ */ jsx(Menu.Item, { href: "http://www.gympass.com", target: "blank", children: "Item 1" }),
          /* @__PURE__ */ jsx(Menu.Item, { href: "http://www.gympass.com", target: "blank", children: "Item 2" }),
          /* @__PURE__ */ jsx(Menu.Item, { href: "http://www.gympass.com", target: "blank", children: "Item 3" })
        ] })
      ] }) })
    );
    expect(container).toMatchSnapshot();
  });
  it("should match snapshot Menu.Item with active", () => {
    const { container } = render(
      /* @__PURE__ */ jsx(ThemeProvider, { children: /* @__PURE__ */ jsxs(Menu, { children: [
        /* @__PURE__ */ jsx(Menu.Action, { children: /* @__PURE__ */ jsx(Button.Icon, { icon: MenuList }) }),
        /* @__PURE__ */ jsxs(Menu.List, { children: [
          /* @__PURE__ */ jsx(Menu.Item, { active: true, children: "Item 1" }),
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 2" }),
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 3" })
        ] })
      ] }) })
    );
    expect(container).toMatchSnapshot();
  });
  it("should match snapshot Menu.Item with disabled", () => {
    const { container } = render(
      /* @__PURE__ */ jsx(ThemeProvider, { children: /* @__PURE__ */ jsxs(Menu, { children: [
        /* @__PURE__ */ jsx(Menu.Action, { children: /* @__PURE__ */ jsx(Button.Icon, { icon: MenuList }) }),
        /* @__PURE__ */ jsxs(Menu.List, { children: [
          /* @__PURE__ */ jsx(Menu.Item, { disabled: true, children: "Item 1" }),
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 2" }),
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 3" })
        ] })
      ] }) })
    );
    expect(container).toMatchSnapshot();
  });
  it("should match snapshot Menu.Item with disabled and icon", () => {
    const { container } = render(
      /* @__PURE__ */ jsx(ThemeProvider, { children: /* @__PURE__ */ jsxs(Menu, { children: [
        /* @__PURE__ */ jsx(Menu.Action, { children: /* @__PURE__ */ jsx(Button.Icon, { icon: MenuList }) }),
        /* @__PURE__ */ jsxs(Menu.List, { children: [
          /* @__PURE__ */ jsx(Menu.Item, { icon: HomeFilled, disabled: true, children: "Item 1" }),
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 2" }),
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 3" })
        ] })
      ] }) })
    );
    expect(container).toMatchSnapshot();
  });
  it("should match snapshot Menu with a onMouseHover props false", () => {
    const { container } = render(
      /* @__PURE__ */ jsx(ThemeProvider, { children: /* @__PURE__ */ jsxs(Menu, { onMouseHover: false, children: [
        /* @__PURE__ */ jsx(Menu.Action, { children: /* @__PURE__ */ jsx(Button.Icon, { icon: MenuList }) }),
        /* @__PURE__ */ jsxs(Menu.List, { children: [
          /* @__PURE__ */ jsx(Menu.Item, { icon: HomeFilled, disabled: true, children: "Item 1" }),
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 2" }),
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 3" })
        ] })
      ] }) })
    );
    expect(container).toMatchSnapshot();
  });
  it("should match snapshot Menu with an align props start", () => {
    const { container } = render(
      /* @__PURE__ */ jsx(ThemeProvider, { children: /* @__PURE__ */ jsxs(Menu, { children: [
        /* @__PURE__ */ jsx(Menu.Action, { children: /* @__PURE__ */ jsx(Button.Icon, { icon: MenuList }) }),
        /* @__PURE__ */ jsxs(Menu.List, { align: "start", children: [
          /* @__PURE__ */ jsx(Menu.Item, { icon: HomeFilled, disabled: true, children: "Item 1" }),
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 2" }),
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 3" })
        ] })
      ] }) })
    );
    expect(container).toMatchSnapshot();
  });
  it("should match snapshot Menu with an align props end", () => {
    const { container } = render(
      /* @__PURE__ */ jsx(ThemeProvider, { children: /* @__PURE__ */ jsxs(Menu, { children: [
        /* @__PURE__ */ jsx(Menu.Action, { children: /* @__PURE__ */ jsx(Button.Icon, { icon: MenuList }) }),
        /* @__PURE__ */ jsxs(Menu.List, { align: "end", children: [
          /* @__PURE__ */ jsx(Menu.Item, { icon: HomeFilled, disabled: true, children: "Item 1" }),
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 2" }),
          /* @__PURE__ */ jsx(Menu.Item, { children: "Item 3" })
        ] })
      ] }) })
    );
    expect(container).toMatchSnapshot();
  });
});
