Skip to content

Commit 70acb5a

Browse files
arkid15rkasya
andauthored
Revamp top contributor list component (#1730)
* Revamp top contributor list component * Update code * Update frontend/src/components/TopContributorsList.tsx Co-authored-by: Kate Golovanova <[email protected]> --------- Co-authored-by: Kate Golovanova <[email protected]>
1 parent b759841 commit 70acb5a

39 files changed

+82
-126
lines changed

backend/apps/github/graphql/queries/repository_contributor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ class RepositoryContributorQuery:
1313
@strawberry.field
1414
def top_contributors(
1515
self,
16-
limit: int = 15,
16+
limit: int = 20,
1717
chapter: str | None = None,
1818
committee: str | None = None,
1919
excluded_usernames: list[str] | None = None,

frontend/__tests__/e2e/data/mockHomeData.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,19 +80,16 @@ export const mockHomeData = {
8080
name: 'Contributor 1',
8181
login: 'contributor_1',
8282
avatarUrl: 'https://avatars.githubusercontent.com/u/3531020?v=4',
83-
contributionsCount: 150,
8483
},
8584
{
8685
name: 'Contributor 2',
8786
login: 'contributor_2',
8887
avatarUrl: 'https://avatars.githubusercontent.com/u/862914?v=4',
89-
contributionsCount: 181,
9088
},
9189
{
9290
name: 'Contributor 3',
9391
login: 'contributor_3',
9492
avatarUrl: 'https://avatars.githubusercontent.com/u/103866?v=4',
95-
contributionsCount: 12,
9693
},
9794
],
9895
recentIssues: [

frontend/__tests__/e2e/pages/About.spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,8 @@ test.describe('About Page', () => {
4242
})
4343

4444
test('displays contributor information when data is loaded', async ({ page }) => {
45-
await expect(page.getByText('Contributor 1')).toBeVisible()
46-
await expect(page.getByText('Contributor 2')).toBeVisible()
45+
await expect(page.getByText('Contributor 1', { exact: true })).toBeVisible()
46+
await expect(page.getByText('Contributor 2', { exact: true })).toBeVisible()
4747
})
4848

4949
test('displays leaders data when data is loaded', async ({ page }) => {

frontend/__tests__/e2e/pages/ChapterDetails.spec.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,10 @@ test.describe('Chapter Details Page', () => {
4242

4343
test('should have top contributors', async ({ page }) => {
4444
await expect(page.getByRole('heading', { name: 'Top Contributors' })).toBeVisible()
45-
await expect(page.getByRole('img', { name: 'Contributor 1' })).toBeVisible()
46-
await expect(page.getByText('Contributor 1')).toBeVisible()
47-
await expect(page.getByText('29 Contributions')).toBeVisible()
48-
await expect(page.getByRole('img', { name: 'Contributor 2' })).toBeVisible()
49-
await expect(page.getByText('Contributor 2')).toBeVisible()
50-
await expect(page.getByText('28 Contributions')).toBeVisible()
45+
await expect(page.getByRole('img', { name: 'Contributor 1', exact: true })).toBeVisible()
46+
await expect(page.getByText('Contributor 1', { exact: true })).toBeVisible()
47+
await expect(page.getByRole('img', { name: 'Contributor 2', exact: true })).toBeVisible()
48+
await expect(page.getByText('Contributor 2', { exact: true })).toBeVisible()
5149
})
5250

5351
test('toggle top contributors', async ({ page }) => {

frontend/__tests__/e2e/pages/CommitteeDetails.spec.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,7 @@ test.describe('Committee Details Page', () => {
3636
await expect(page.getByRole('heading', { name: 'Top Contributors' })).toBeVisible()
3737
await expect(page.getByRole('img', { name: 'Contributor 1' })).toBeVisible()
3838
await expect(page.getByText('Contributor 1')).toBeVisible()
39-
await expect(page.getByText('2157 Contributions')).toBeVisible()
4039
await expect(page.getByRole('img', { name: 'Contributor 2' })).toBeVisible()
4140
await expect(page.getByText('Contributor 2')).toBeVisible()
42-
await expect(page.getByText('309 Contributions')).toBeVisible()
4341
})
4442
})

frontend/__tests__/e2e/pages/Home.spec.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,8 @@ test.describe('Home Page', () => {
5757

5858
test('should have top contributors', async ({ page }) => {
5959
await expect(page.getByRole('heading', { name: 'Top Contributors' })).toBeVisible()
60-
await expect(page.getByRole('img', { name: 'Contributor 1' })).toBeVisible()
61-
await expect(page.getByText('Contributor 1')).toBeVisible()
62-
await expect(page.getByText('150 contributions')).toBeVisible()
60+
await expect(page.getByRole('img', { name: 'Contributor 1', exact: true })).toBeVisible()
61+
await expect(page.getByText('Contributor 1', { exact: true })).toBeVisible()
6362
})
6463

6564
test('should have recent issues', async ({ page }) => {

frontend/__tests__/e2e/pages/ProjectDetails.spec.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -59,12 +59,10 @@ test.describe('Project Details Page', () => {
5959

6060
test('should have top contributors', async ({ page }) => {
6161
await expect(page.getByRole('heading', { name: 'Top Contributors' })).toBeVisible()
62-
await expect(page.getByRole('img', { name: 'Contributor 1' })).toBeVisible()
63-
await expect(page.getByText('Contributor 1')).toBeVisible()
64-
await expect(page.getByText('30 Contributions')).toBeVisible()
65-
await expect(page.getByRole('img', { name: 'Contributor 2' })).toBeVisible()
66-
await expect(page.getByText('Contributor 2')).toBeVisible()
67-
await expect(page.getByText('29 Contributions')).toBeVisible()
62+
await expect(page.getByRole('img', { name: 'Contributor 1', exact: true })).toBeVisible()
63+
await expect(page.getByText('Contributor 1', { exact: true })).toBeVisible()
64+
await expect(page.getByRole('img', { name: 'Contributor 2', exact: true })).toBeVisible()
65+
await expect(page.getByText('Contributor 2', { exact: true })).toBeVisible()
6866
})
6967

7068
test('toggle top contributors', async ({ page }) => {

frontend/__tests__/e2e/pages/RepositoryDetails.spec.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,10 @@ test.describe('Repository Details Page', () => {
5555

5656
test('should have top contributors', async ({ page }) => {
5757
await expect(page.getByRole('heading', { name: 'Top Contributors' })).toBeVisible()
58-
await expect(page.getByRole('img', { name: 'Contributor 1' })).toBeVisible()
59-
await expect(page.getByText('Contributor 1')).toBeVisible()
60-
await expect(page.getByText('30 Contributions')).toBeVisible()
61-
await expect(page.getByRole('img', { name: 'Contributor 2' })).toBeVisible()
62-
await expect(page.getByText('Contributor 2')).toBeVisible()
63-
await expect(page.getByText('29 Contributions')).toBeVisible()
58+
await expect(page.getByRole('img', { name: 'Contributor 1', exact: true })).toBeVisible()
59+
await expect(page.getByText('Contributor 1', { exact: true })).toBeVisible()
60+
await expect(page.getByRole('img', { name: 'Contributor 2', exact: true })).toBeVisible()
61+
await expect(page.getByText('Contributor 2', { exact: true })).toBeVisible()
6462
})
6563

6664
test('toggle top contributors', async ({ page }) => {

frontend/__tests__/e2e/pages/UserDetails.spec.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@ test.describe('User Details Page', () => {
3535
await expect(page.getByText('10 Followers')).toBeVisible()
3636
await expect(page.getByText('5 Following')).toBeVisible()
3737
await expect(page.getByText('3 Repositories')).toBeVisible()
38-
await expect(page.getByText('100 Contributions')).toBeVisible()
3938
})
4039

4140
test('should have user issues', async ({ page }) => {

frontend/__tests__/unit/data/mockAboutData.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ export const mockAboutData = {
2727
},
2828
topContributors: Array.from({ length: 15 }, (_, i) => ({
2929
avatarUrl: `https://avatars.githubusercontent.com/avatar${i + 1}.jpg`,
30-
contributionsCount: 30 - i,
3130
login: `contributor${i + 1}`,
3231
name: `Contributor ${i + 1}`,
3332
})),

0 commit comments

Comments
 (0)