summaryrefslogtreecommitdiffstats
path: root/browser/components/aboutwelcome/tests/unit/HeroImage.test.jsx
blob: 244e64f906ed251e977f211352a42565171f5667 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import React from "react";
import { shallow } from "enzyme";
import { HeroImage } from "content-src/components/HeroImage";

describe("HeroImage component", () => {
  const imageUrl = "https://example.com";
  const imageHeight = "100px";
  const imageAlt = "Alt text";

  let wrapper;
  beforeEach(() => {
    wrapper = shallow(
      <HeroImage url={imageUrl} alt={imageAlt} height={imageHeight} />
    );
  });

  it("should render HeroImage component", () => {
    assert.ok(wrapper.exists());
  });

  it("should render an image element with src prop", () => {
    let imgEl = wrapper.find("img");
    assert.strictEqual(imgEl.prop("src"), imageUrl);
  });

  it("should render image element with alt text prop", () => {
    let imgEl = wrapper.find("img");
    assert.equal(imgEl.prop("alt"), imageAlt);
  });

  it("should render an image with a set height prop", () => {
    let imgEl = wrapper.find("img");
    assert.propertyVal(imgEl.prop("style"), "height", imageHeight);
  });

  it("should not render HeroImage component", () => {
    wrapper.setProps({ url: null });
    assert.ok(wrapper.isEmptyRender());
  });
});