summaryrefslogtreecommitdiffstats
path: root/devtools/client/inspector/compatibility/test/node/components/components-compatibility-IssueItem.test.js
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
commit6bf0a5cb5034a7e684dcc3500e841785237ce2dd (patch)
treea68f146d7fa01f0134297619fbe7e33db084e0aa /devtools/client/inspector/compatibility/test/node/components/components-compatibility-IssueItem.test.js
parentInitial commit. (diff)
downloadthunderbird-upstream.tar.xz
thunderbird-upstream.zip
Adding upstream version 1:115.7.0.upstream/1%115.7.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'devtools/client/inspector/compatibility/test/node/components/components-compatibility-IssueItem.test.js')
-rw-r--r--devtools/client/inspector/compatibility/test/node/components/components-compatibility-IssueItem.test.js167
1 files changed, 167 insertions, 0 deletions
diff --git a/devtools/client/inspector/compatibility/test/node/components/components-compatibility-IssueItem.test.js b/devtools/client/inspector/compatibility/test/node/components/components-compatibility-IssueItem.test.js
new file mode 100644
index 0000000000..caec522e17
--- /dev/null
+++ b/devtools/client/inspector/compatibility/test/node/components/components-compatibility-IssueItem.test.js
@@ -0,0 +1,167 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+"use strict";
+
+/**
+ * Unit tests for the IssueItem component.
+ */
+
+const { shallow } = require("enzyme");
+const React = require("react");
+
+const {
+ COMPATIBILITY_ISSUE_TYPE,
+} = require("resource://devtools/shared/constants.js");
+const IssueItem = React.createFactory(
+ require("resource://devtools/client/inspector/compatibility/components/IssueItem.js")
+);
+
+describe("IssueItem component", () => {
+ it("renders an unsupported issue of CSS property", () => {
+ const targetComponent = shallow(
+ IssueItem({
+ type: COMPATIBILITY_ISSUE_TYPE.CSS_PROPERTY,
+ property: "test-property",
+ url: "test-url",
+ deprecated: false,
+ experimental: false,
+ prefixNeeded: false,
+ unsupportedBrowsers: [
+ { id: "firefox", name: "Firefox", version: "70", status: "nightly" },
+ ],
+ })
+ );
+ expect(targetComponent).toMatchSnapshot();
+ });
+
+ it("renders a deprecated issue of CSS property", () => {
+ const targetComponent = shallow(
+ IssueItem({
+ type: COMPATIBILITY_ISSUE_TYPE.CSS_PROPERTY,
+ property: "test-property",
+ url: "test-url",
+ deprecated: true,
+ experimental: false,
+ prefixNeeded: false,
+ unsupportedBrowsers: [],
+ })
+ );
+ expect(targetComponent).toMatchSnapshot();
+ });
+
+ it("renders an experimental issue of CSS property", () => {
+ const targetComponent = shallow(
+ IssueItem({
+ type: COMPATIBILITY_ISSUE_TYPE.CSS_PROPERTY,
+ property: "test-property",
+ url: "test-url",
+ deprecated: false,
+ experimental: true,
+ prefixNeeded: false,
+ unsupportedBrowsers: [],
+ })
+ );
+ expect(targetComponent).toMatchSnapshot();
+ });
+
+ it("renders a prefixNeeded issue of CSS property", () => {
+ const targetComponent = shallow(
+ IssueItem({
+ type: COMPATIBILITY_ISSUE_TYPE.CSS_PROPERTY,
+ property: "test-property",
+ url: "test-url",
+ aliases: ["test-alias-1", "test-alias-2"],
+ deprecated: false,
+ experimental: false,
+ prefixNeeded: true,
+ unsupportedBrowsers: [],
+ })
+ );
+ expect(targetComponent).toMatchSnapshot();
+ });
+
+ it("renders an issue which has deprecated and experimental", () => {
+ const targetComponent = shallow(
+ IssueItem({
+ type: COMPATIBILITY_ISSUE_TYPE.CSS_PROPERTY,
+ property: "test-property",
+ url: "test-url",
+ aliases: ["test-alias-1", "test-alias-2"],
+ deprecated: true,
+ experimental: true,
+ prefixNeeded: false,
+ unsupportedBrowsers: [],
+ })
+ );
+ expect(targetComponent).toMatchSnapshot();
+ });
+
+ it("renders an issue which has deprecated and prefixNeeded", () => {
+ const targetComponent = shallow(
+ IssueItem({
+ type: COMPATIBILITY_ISSUE_TYPE.CSS_PROPERTY,
+ property: "test-property",
+ url: "test-url",
+ aliases: ["test-alias-1", "test-alias-2"],
+ deprecated: true,
+ experimental: false,
+ prefixNeeded: true,
+ unsupportedBrowsers: [],
+ })
+ );
+ expect(targetComponent).toMatchSnapshot();
+ });
+
+ it("renders an issue which has experimental and prefixNeeded", () => {
+ const targetComponent = shallow(
+ IssueItem({
+ type: COMPATIBILITY_ISSUE_TYPE.CSS_PROPERTY,
+ property: "test-property",
+ url: "test-url",
+ aliases: ["test-alias-1", "test-alias-2"],
+ deprecated: false,
+ experimental: true,
+ prefixNeeded: true,
+ unsupportedBrowsers: [],
+ })
+ );
+ expect(targetComponent).toMatchSnapshot();
+ });
+
+ it("renders an issue which has deprecated, experimental and prefixNeeded", () => {
+ const targetComponent = shallow(
+ IssueItem({
+ type: COMPATIBILITY_ISSUE_TYPE.CSS_PROPERTY,
+ property: "test-property",
+ url: "test-url",
+ aliases: ["test-alias-1", "test-alias-2"],
+ deprecated: true,
+ experimental: true,
+ prefixNeeded: true,
+ unsupportedBrowsers: [],
+ })
+ );
+ expect(targetComponent).toMatchSnapshot();
+ });
+
+ it("renders an issue which has nodes that caused this issue", () => {
+ const targetComponent = shallow(
+ IssueItem({
+ type: COMPATIBILITY_ISSUE_TYPE.CSS_PROPERTY,
+ property: "test-property",
+ url: "test-url",
+ unsupportedBrowsers: [],
+ nodes: [
+ {
+ actorID: "test-actor",
+ attributes: [],
+ nodeName: "test-element",
+ nodeType: 1,
+ },
+ ],
+ })
+ );
+ expect(targetComponent).toMatchSnapshot();
+ });
+});