refactor(server): view repository (#12755)

This commit is contained in:
Jason Rasmussen
2024-09-17 16:32:09 -04:00
committed by GitHub
parent f53e4721cf
commit 1e6ef5c9e4
11 changed files with 159 additions and 166 deletions

View File

@@ -1,21 +1,20 @@
import { mapAsset } from 'src/dtos/asset-response.dto';
import { IAssetRepository } from 'src/interfaces/asset.interface';
import { IViewRepository } from 'src/interfaces/view.interface';
import { ViewService } from 'src/services/view.service';
import { assetStub } from 'test/fixtures/asset.stub';
import { authStub } from 'test/fixtures/auth.stub';
import { newAssetRepositoryMock } from 'test/repositories/asset.repository.mock';
import { newViewRepositoryMock } from 'test/repositories/view.repository.mock';
import { Mocked } from 'vitest';
describe(ViewService.name, () => {
let sut: ViewService;
let assetMock: Mocked<IAssetRepository>;
let viewMock: Mocked<IViewRepository>;
beforeEach(() => {
assetMock = newAssetRepositoryMock();
viewMock = newViewRepositoryMock();
sut = new ViewService(assetMock);
sut = new ViewService(viewMock);
});
it('should work', () => {
@@ -25,12 +24,12 @@ describe(ViewService.name, () => {
describe('getUniqueOriginalPaths', () => {
it('should return unique original paths', async () => {
const mockPaths = ['path1', 'path2', 'path3'];
assetMock.getUniqueOriginalPaths.mockResolvedValue(mockPaths);
viewMock.getUniqueOriginalPaths.mockResolvedValue(mockPaths);
const result = await sut.getUniqueOriginalPaths(authStub.admin);
expect(result).toEqual(mockPaths);
expect(assetMock.getUniqueOriginalPaths).toHaveBeenCalledWith(authStub.admin.user.id);
expect(viewMock.getUniqueOriginalPaths).toHaveBeenCalledWith(authStub.admin.user.id);
});
});
@@ -45,11 +44,11 @@ describe(ViewService.name, () => {
const mockAssetReponseDto = mockAssets.map((a) => mapAsset(a, { auth: authStub.admin }));
assetMock.getAssetsByOriginalPath.mockResolvedValue(mockAssets);
viewMock.getAssetsByOriginalPath.mockResolvedValue(mockAssets);
const result = await sut.getAssetsByOriginalPath(authStub.admin, path);
expect(result).toEqual(mockAssetReponseDto);
await expect(assetMock.getAssetsByOriginalPath(authStub.admin.user.id, path)).resolves.toEqual(mockAssets);
await expect(viewMock.getAssetsByOriginalPath(authStub.admin.user.id, path)).resolves.toEqual(mockAssets);
});
});
});