import { AlbumEntity } from '@app/infra/entities'; import { assetStub } from './asset.stub'; import { authStub } from './auth.stub'; import { userStub } from './user.stub'; export const albumStub = { empty: Object.freeze({ id: 'album-1', albumName: 'Empty album', ownerId: authStub.admin.id, owner: userStub.admin, assets: [], albumThumbnailAsset: null, albumThumbnailAssetId: null, createdAt: new Date(), updatedAt: new Date(), sharedLinks: [], sharedUsers: [], }), sharedWithUser: Object.freeze({ id: 'album-2', albumName: 'Empty album shared with user', ownerId: authStub.admin.id, owner: userStub.admin, assets: [], albumThumbnailAsset: null, albumThumbnailAssetId: null, createdAt: new Date(), updatedAt: new Date(), sharedLinks: [], sharedUsers: [userStub.user1], }), sharedWithMultiple: Object.freeze({ id: 'album-3', albumName: 'Empty album shared with users', ownerId: authStub.admin.id, owner: userStub.admin, assets: [], albumThumbnailAsset: null, albumThumbnailAssetId: null, createdAt: new Date(), updatedAt: new Date(), sharedLinks: [], sharedUsers: [userStub.user1, userStub.user2], }), sharedWithAdmin: Object.freeze({ id: 'album-3', albumName: 'Empty album shared with admin', ownerId: authStub.user1.id, owner: userStub.user1, assets: [], albumThumbnailAsset: null, albumThumbnailAssetId: null, createdAt: new Date(), updatedAt: new Date(), sharedLinks: [], sharedUsers: [userStub.admin], }), oneAsset: Object.freeze({ id: 'album-4', albumName: 'Album with one asset', ownerId: authStub.admin.id, owner: userStub.admin, assets: [assetStub.image], albumThumbnailAsset: null, albumThumbnailAssetId: null, createdAt: new Date(), updatedAt: new Date(), sharedLinks: [], sharedUsers: [], }), twoAssets: Object.freeze({ id: 'album-4a', albumName: 'Album with two assets', ownerId: authStub.admin.id, owner: userStub.admin, assets: [assetStub.image, assetStub.withLocation], albumThumbnailAsset: assetStub.image, albumThumbnailAssetId: assetStub.image.id, createdAt: new Date(), updatedAt: new Date(), sharedLinks: [], sharedUsers: [], }), emptyWithInvalidThumbnail: Object.freeze({ id: 'album-5', albumName: 'Empty album with invalid thumbnail', ownerId: authStub.admin.id, owner: userStub.admin, assets: [], albumThumbnailAsset: assetStub.image, albumThumbnailAssetId: assetStub.image.id, createdAt: new Date(), updatedAt: new Date(), sharedLinks: [], sharedUsers: [], }), emptyWithValidThumbnail: Object.freeze({ id: 'album-5', albumName: 'Empty album with invalid thumbnail', ownerId: authStub.admin.id, owner: userStub.admin, assets: [], albumThumbnailAsset: null, albumThumbnailAssetId: null, createdAt: new Date(), updatedAt: new Date(), sharedLinks: [], sharedUsers: [], }), oneAssetInvalidThumbnail: Object.freeze({ id: 'album-6', albumName: 'Album with one asset and invalid thumbnail', ownerId: authStub.admin.id, owner: userStub.admin, assets: [assetStub.image], albumThumbnailAsset: assetStub.livePhotoMotionAsset, albumThumbnailAssetId: assetStub.livePhotoMotionAsset.id, createdAt: new Date(), updatedAt: new Date(), sharedLinks: [], sharedUsers: [], }), oneAssetValidThumbnail: Object.freeze({ id: 'album-6', albumName: 'Album with one asset and invalid thumbnail', ownerId: authStub.admin.id, owner: userStub.admin, assets: [assetStub.image], albumThumbnailAsset: assetStub.image, albumThumbnailAssetId: assetStub.image.id, createdAt: new Date(), updatedAt: new Date(), sharedLinks: [], sharedUsers: [], }), };