Sha256: 84acc2aad73b842552de0433e68207f1b381ef76b1138f1452003bfce7c0c6fc

Contents?: true

Size: 1.68 KB

Versions: 250

Compression:

Stored size: 1.68 KB

Contents

import React from "react";
import { render, screen } from "../utilities/test-utils";

import StarRating from "./_star_rating";

const testId = "star-rating-kit";

describe("Star Rating Kit", () => {
  test("Expects to have correct classname", () => {
    render(
      <StarRating
          data={{ testid: testId }}
          rating={2}
      />
    );


    const kit = screen.getByTestId(testId);
    expect(kit).toHaveClass("pb_star_rating_kit");

  });

  test('should render aria-label', () => {
    render(
      <StarRating
          aria={{ label: testId }}
          data={{ testid: testId }}
          rating={2}
      />
    );

    const kit = screen.getByTestId(testId)
    expect(kit).toHaveAttribute('aria-label', testId)
  });

  test("Displays two highlighted stars", () => {
    render(
      <StarRating
          data={{ testid: testId }}
          rating={2}
      />
    );


    const kit = screen.getByTestId(testId);
    const highlight = kit.querySelector(".pb_star_rating_highlight");
    const stars = highlight.querySelectorAll(".far.fa-star");
    const count = stars.length;

    expect(count).toBe(2);
  });

  test("Displays three highlighted stars and a half star", () => {
    render(
      <StarRating
          data={{ testid: testId }}
          rating={3.5}
      />
    );

    const kit = screen.getByTestId(testId);
    const highlight = kit.querySelector(".pb_star_rating_highlight");
    const stars = highlight.querySelectorAll(".far.fa-star");
    const halfStars = highlight.querySelectorAll(".far.fa-star-half");
    const starCount = stars.length;
    const halfStarCount = halfStars.length;

    expect(starCount).toBe(3);
    expect(halfStarCount).toBe(1);
  });
});

Version data entries

250 entries across 250 versions & 1 rubygems

Version Path
playbook_ui-13.13.0.pre.alpha.PLAY1097linterenhancedelement1728 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.13.0.pre.alpha.play10821727 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.13.0.pre.alpha.play10821726 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.13.0.pre.alpha.play10221678 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.13.0.pre.alpha.PLAY1090csstokens1675 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.13.0 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.12.0.pre.alpha.PLAY880cardkithighlightzindex1655 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.12.0.pre.alpha.PLAY1081exportingtypes1627 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.12.0.pre.alpha.PLAY1081exportingtypes1626 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.12.0.pre.alpha.PLAY1081exporttypes1624 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.12.0.pre.alpha.PLAY1081exporttypes1623 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.12.0.pre.alpha.PLAY1081exporttypes1611 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.12.0.pre.alpha.PLAY1081exporttypes1609 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.12.0.pre.alpha.PLAY1081exporttypes1608 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.12.0.pre.alpha.play10281596 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.12.0.pre.alpha.play1051testhighcharts1581 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.12.0.pre.alpha.play1051testhighcharts1580 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.12.0.pre.alpha.play1051testhighcharts1579 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.12.0.pre.alpha.PLAY1093typeaheadkitdocbug1577 app/pb_kits/playbook/pb_star_rating/star_rating.test.js
playbook_ui-13.12.0.pre.alpha.play1051testhighcharts1574 app/pb_kits/playbook/pb_star_rating/star_rating.test.js