Skip to content

Commit

Permalink
test(social): define query test
Browse files Browse the repository at this point in the history
  • Loading branch information
vladjerca committed Feb 13, 2025
1 parent c2bb8b6 commit c02216d
Show file tree
Hide file tree
Showing 4 changed files with 68 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
import { socialActivityQuery } from '$lib/requests/queries/users/socialActivityQuery.ts';
import { SocialActivityMappedMock } from '$mocks/data/users/mapped/SocialActivityMappedMock.ts';
import { runQuery } from '$test/beds/query/runQuery.ts';
import { createQuery } from '@tanstack/svelte-query';
import { describe, expect, it } from 'vitest';

describe('socialActivityQuery', () => {
it('should social activity', async () => {
const result = await runQuery({
factory: () =>
createQuery(
socialActivityQuery(),
),
mapper: (response) => response?.data,
});

expect(result).to.deep.equal(SocialActivityMappedMock);
});
});
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import type { SocialActivity } from '$lib/requests/models/SocialActivity.ts';
import { EpisodeSiloMappedMock } from '$mocks/data/summary/episodes/silo/mapped/EpisodeSiloMappedMock.ts';
import { MovieHereticMappedMock } from '$mocks/data/summary/movies/heretic/mapped/MovieHereticMappedMock.ts';
import { ShowSiloMappedMock } from '$mocks/data/summary/shows/silo/mapped/ShowSiloMappedMock.ts';
import { UserProfileHarryMappedMock } from '$mocks/data/users/mapped/UserProfileHarryMappedMock.ts';

export const SocialActivityMappedMock: SocialActivity[] = [
{
id: 1,
activityAt: new Date('2025-01-31T23:12:41.000Z'),
user: UserProfileHarryMappedMock,
type: 'movie',
movie: MovieHereticMappedMock,
},
{
id: 2,
activityAt: new Date('2025-01-31T23:12:41.000Z'),
user: UserProfileHarryMappedMock,
type: 'episode',
show: ShowSiloMappedMock,
episode: EpisodeSiloMappedMock,
},
];
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import type { SocialActivityResponse } from '$lib/api.ts';
import { EpisodeSiloResponseMock } from '$mocks/data/summary/episodes/silo/response/EpisodeSiloResponseMock.ts';
import { MovieHereticResponseMock } from '$mocks/data/summary/movies/heretic/response/MovieHereticResponseMock.ts';
import { ShowSiloResponseMock } from '$mocks/data/summary/shows/silo/response/ShowSiloResponseMock.ts';
import { UserProfileHarryResponseMock } from '$mocks/data/users/response/UserProfileHarryResponseMock.ts';

export const SocialActivityResponseMock: SocialActivityResponse[] = [{
id: 1,
type: 'movie',
action: 'watch',
activity_at: '2025-01-31T23:12:41.000Z',
user: UserProfileHarryResponseMock,
movie: MovieHereticResponseMock,
}, {
id: 2,
type: 'episode',
action: 'scrobble',
activity_at: '2025-01-31T23:12:41.000Z',
user: UserProfileHarryResponseMock,
show: ShowSiloResponseMock,
episode: EpisodeSiloResponseMock,
}];
4 changes: 4 additions & 0 deletions projects/client/src/mocks/handlers/users.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import { HistoryMoviesResponseMock } from '../data/users/response/HistoryMoviesR
import { HistoryShowsResponseMock } from '../data/users/response/HistoryShowsResponseMock.ts';
import { RatedEpisodesResponseMock } from '../data/users/response/RatedEpisodesResponseMock.ts';
import { RatedMoviesResponseMock } from '../data/users/response/RatedMoviesResponseMock.ts';
import { SocialActivityResponseMock } from '../data/users/response/SocialActivityResponseMock.ts';
import { WatchedMoviesResponseMock } from '../data/users/response/WatchedMoviesResponseMock.ts';
import { WatchedShowsResponseMock } from '../data/users/response/WatchedShowsResponseMock.ts';
import { WatchlistMoviesResponseMock } from '../data/users/response/WatchlistMoviesResponseMock.ts';
Expand Down Expand Up @@ -42,4 +43,7 @@ export const users = [
http.get('http://localhost/users/me/history/episodes*', () => {
return HttpResponse.json(HistoryEpisodesResponseMock);
}),
http.get('http://localhost/users/me/following/activities', () => {
return HttpResponse.json(SocialActivityResponseMock);
}),
];

0 comments on commit c02216d

Please sign in to comment.