11import { afterEach , beforeEach , describe , expect , it , vi } from 'vitest'
22import { mountSuspended , registerEndpoint } from '@nuxt/test-utils/runtime'
33import type { VueWrapper } from '@vue/test-utils'
4+ import { createLikesLeaderboardEntry } from '~~/test/fixtures/likes-leaderboard'
45import LikesLeaderboardPage from '~/pages/leaderboard/likes.vue'
56
67describe ( 'likes leaderboard page' , ( ) => {
@@ -18,10 +19,8 @@ describe('likes leaderboard page', () => {
1819
1920 it ( 'renders ranked rows from the local leaderboard API' , async ( ) => {
2021 registerEndpoint ( '/api/leaderboard/likes' , ( ) => [
21- {
22+ createLikesLeaderboardEntry ( 'vue' , {
2223 rank : 1 ,
23- packageName : 'vue' ,
24- subjectRef : 'https://npmx.dev/package/vue' ,
2524 totalLikes : 120 ,
2625 packageDescription : 'The Progressive JavaScript Framework.' ,
2726 weeklyDownloads : 1200 ,
@@ -32,52 +31,34 @@ describe('likes leaderboard page', () => {
3231 homepageLogoUrl : 'https://images.example.com/vue-logo.svg' ,
3332 homepageLogoWidth : 256 ,
3433 homepageLogoHeight : 256 ,
35- } ,
36- {
34+ } ) ,
35+ createLikesLeaderboardEntry ( '@nuxt/kit' , {
3736 rank : 2 ,
38- packageName : '@nuxt/kit' ,
39- subjectRef : 'https://npmx.dev/package/@nuxt/kit' ,
4037 totalLikes : 90 ,
4138 packageDescription : 'Nuxt internals for module authors.' ,
4239 weeklyDownloads : 900 ,
4340 repositoryStars : 59000 ,
44- homepagePreviewUrl : null ,
45- homepagePreviewWidth : null ,
46- homepagePreviewHeight : null ,
4741 homepageLogoUrl : 'https://images.example.com/nuxt-logo.svg' ,
4842 homepageLogoWidth : 256 ,
4943 homepageLogoHeight : 256 ,
50- } ,
51- {
44+ } ) ,
45+ createLikesLeaderboardEntry ( 'react' , {
5246 rank : 3 ,
53- packageName : 'react' ,
54- subjectRef : 'https://npmx.dev/package/react' ,
5547 totalLikes : 80 ,
5648 packageDescription : 'The library for web and native user interfaces.' ,
5749 weeklyDownloads : 800 ,
5850 repositoryStars : 230000 ,
59- homepagePreviewUrl : null ,
60- homepagePreviewWidth : null ,
61- homepagePreviewHeight : null ,
62- homepageLogoUrl : null ,
63- homepageLogoWidth : null ,
64- homepageLogoHeight : null ,
65- } ,
66- {
51+ } ) ,
52+ createLikesLeaderboardEntry ( 'svelte' , {
6753 rank : 4 ,
68- packageName : 'svelte' ,
69- subjectRef : 'https://npmx.dev/package/svelte' ,
7054 totalLikes : 70 ,
7155 packageDescription : 'Cybernetically enhanced web apps.' ,
7256 weeklyDownloads : 700 ,
7357 repositoryStars : 82000 ,
74- homepagePreviewUrl : null ,
75- homepagePreviewWidth : null ,
76- homepagePreviewHeight : null ,
7758 homepageLogoUrl : 'https://images.example.com/svelte-logo.svg' ,
7859 homepageLogoWidth : 256 ,
7960 homepageLogoHeight : 256 ,
80- } ,
61+ } ) ,
8162 ] )
8263
8364 wrapper = await mountSuspended ( LikesLeaderboardPage , {
0 commit comments