forked from mirrored/github-readme-stats
Separate PRs and issues
This commit is contained in:
+51
-37
@@ -5,13 +5,13 @@ describe("Test calculateRank", () => {
|
||||
it("new user gets B rank", () => {
|
||||
expect(
|
||||
calculateRank({
|
||||
totalRepos: 0,
|
||||
totalCommits: 0,
|
||||
contributions: 0,
|
||||
followers: 0,
|
||||
all_commits: false,
|
||||
commits: 0,
|
||||
prs: 0,
|
||||
issues: 0,
|
||||
stargazers: 0,
|
||||
repos: 0,
|
||||
stars: 0,
|
||||
followers: 0,
|
||||
}),
|
||||
).toStrictEqual({ level: "B", score: 100 });
|
||||
});
|
||||
@@ -19,13 +19,27 @@ describe("Test calculateRank", () => {
|
||||
it("average user gets A rank", () => {
|
||||
expect(
|
||||
calculateRank({
|
||||
totalRepos: 10,
|
||||
totalCommits: 500,
|
||||
contributions: 500,
|
||||
followers: 50,
|
||||
prs: 12,
|
||||
issues: 13,
|
||||
stargazers: 100,
|
||||
all_commits: false,
|
||||
commits: 100,
|
||||
prs: 50,
|
||||
issues: 10,
|
||||
repos: 0,
|
||||
stars: 100,
|
||||
followers: 25,
|
||||
}),
|
||||
).toStrictEqual({ level: "A", score: 50 });
|
||||
});
|
||||
|
||||
it("average user gets A rank (include_all_commits)", () => {
|
||||
expect(
|
||||
calculateRank({
|
||||
all_commits: true,
|
||||
commits: 500,
|
||||
prs: 50,
|
||||
issues: 10,
|
||||
repos: 0,
|
||||
stars: 100,
|
||||
followers: 25,
|
||||
}),
|
||||
).toStrictEqual({ level: "A", score: 50 });
|
||||
});
|
||||
@@ -33,42 +47,42 @@ describe("Test calculateRank", () => {
|
||||
it("more than average user gets A+ rank", () => {
|
||||
expect(
|
||||
calculateRank({
|
||||
totalRepos: 50,
|
||||
totalCommits: 1500,
|
||||
contributions: 1500,
|
||||
followers: 150,
|
||||
prs: 50,
|
||||
issues: 50,
|
||||
stargazers: 300,
|
||||
all_commits: false,
|
||||
commits: 200,
|
||||
prs: 100,
|
||||
issues: 20,
|
||||
repos: 0,
|
||||
stars: 200,
|
||||
followers: 50,
|
||||
}),
|
||||
).toStrictEqual({ level: "A+", score: 11.458333333333332 });
|
||||
).toStrictEqual({ level: "A+", score: 25 });
|
||||
});
|
||||
|
||||
it("expert user gets S rank", () => {
|
||||
expect(
|
||||
calculateRank({
|
||||
totalRepos: 100,
|
||||
totalCommits: 2000,
|
||||
contributions: 2000,
|
||||
followers: 500,
|
||||
prs: 100,
|
||||
issues: 100,
|
||||
stargazers: 500,
|
||||
all_commits: false,
|
||||
commits: 400,
|
||||
prs: 200,
|
||||
issues: 40,
|
||||
repos: 0,
|
||||
stars: 400,
|
||||
followers: 100,
|
||||
}),
|
||||
).toStrictEqual({ level: "S", score: 2.685546875 });
|
||||
).toStrictEqual({ level: "S", score: 6.25 });
|
||||
});
|
||||
|
||||
it("Linus Torvalds gets S+ rank", () => {
|
||||
it("ezyang gets S+ rank", () => {
|
||||
expect(
|
||||
calculateRank({
|
||||
totalRepos: 4,
|
||||
totalCommits: 20000,
|
||||
contributions: 20000,
|
||||
followers: 132000,
|
||||
prs: 71,
|
||||
issues: 2,
|
||||
stargazers: 109100,
|
||||
all_commits: false,
|
||||
commits: 1000,
|
||||
prs: 4000,
|
||||
issues: 2000,
|
||||
repos: 0,
|
||||
stars: 5000,
|
||||
followers: 2000,
|
||||
}),
|
||||
).toStrictEqual({ level: "S+", score: 2.2021209178513677 });
|
||||
).toStrictEqual({ level: "S+", score: 0.012207031250033307 });
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user