mirror of
https://github.com/System-End/github-readme-stats.git
synced 2026-04-19 22:15:15 +00:00
* feat: added option to hide languages * feat: recalculate percentages for hidden languages * refactor: reverted langs_count and did some formatting * doc: added hide to readme * feat: make languages var mutable and improve filter logic Co-authored-by: Adrian Kunz <clashsoft@hotmail.com> * refactor: improve code and added tests Co-authored-by: Adrian Kunz <clashsoft@hotmail.com> Co-authored-by: Anurag <hazru.anurag@gmail.com>
49 lines
1.7 KiB
JavaScript
49 lines
1.7 KiB
JavaScript
require("@testing-library/jest-dom");
|
|
const { queryByTestId } = require("@testing-library/dom");
|
|
|
|
const renderWakatimeCard = require("../src/cards/wakatime-card");
|
|
const { wakaTimeData } = require("./fetchWakatime.test");
|
|
|
|
describe("Test Render Wakatime Card", () => {
|
|
it("should render correctly", () => {
|
|
const card = renderWakatimeCard(wakaTimeData.data);
|
|
|
|
expect(card).toMatchSnapshot();
|
|
});
|
|
|
|
it("should render correctly with compact layout", () => {
|
|
const card = renderWakatimeCard(wakaTimeData.data, { layout: "compact" });
|
|
|
|
expect(card).toMatchSnapshot();
|
|
});
|
|
|
|
it("should hide languages when hide is passed", () => {
|
|
document.body.innerHTML = renderWakatimeCard(wakaTimeData.data, {
|
|
hide: ["YAML", "Other"],
|
|
});
|
|
|
|
expect(queryByTestId(document.body, /YAML/i)).toBeNull();
|
|
expect(queryByTestId(document.body, /Other/i)).toBeNull();
|
|
expect(queryByTestId(document.body, /TypeScript/i)).not.toBeNull();
|
|
});
|
|
|
|
it("should render translations", () => {
|
|
document.body.innerHTML = renderWakatimeCard({}, { locale: "cn" });
|
|
expect(document.getElementsByClassName("header")[0].textContent).toBe(
|
|
"Wakatime 周统计",
|
|
);
|
|
expect(
|
|
document.querySelector('g[transform="translate(0, 0)"]>text.stat.bold')
|
|
.textContent,
|
|
).toBe("本周没有编程活动");
|
|
});
|
|
|
|
it("should render without rounding", () => {
|
|
document.body.innerHTML = renderWakatimeCard(wakaTimeData.data, {
|
|
border_radius: "0",
|
|
});
|
|
expect(document.querySelector("rect")).toHaveAttribute("rx", "0");
|
|
document.body.innerHTML = renderWakatimeCard(wakaTimeData.data, {});
|
|
expect(document.querySelector("rect")).toHaveAttribute("rx", "4.5");
|
|
});
|
|
});
|