2024-03-20 23:02:51 +02:00
|
|
|
import { AssetFaceEntity } from 'src/entities/asset-face.entity';
|
2024-09-05 00:23:58 +02:00
|
|
|
import { SourceType } from 'src/enum';
|
2024-03-20 20:32:04 +02:00
|
|
|
import { assetStub } from 'test/fixtures/asset.stub';
|
|
|
|
import { personStub } from 'test/fixtures/person.stub';
|
2023-08-01 03:28:07 +02:00
|
|
|
|
2024-01-18 07:08:48 +02:00
|
|
|
type NonNullableProperty<T> = { [P in keyof T]: NonNullable<T[P]> };
|
|
|
|
|
2023-08-01 03:28:07 +02:00
|
|
|
export const faceStub = {
|
2024-01-18 07:08:48 +02:00
|
|
|
face1: Object.freeze<NonNullableProperty<AssetFaceEntity>>({
|
|
|
|
id: 'assetFaceId1',
|
2023-08-01 03:28:07 +02:00
|
|
|
assetId: assetStub.image.id,
|
|
|
|
asset: assetStub.image,
|
|
|
|
personId: personStub.withName.id,
|
|
|
|
person: personStub.withName,
|
|
|
|
boundingBoxX1: 0,
|
|
|
|
boundingBoxY1: 0,
|
|
|
|
boundingBoxX2: 1,
|
|
|
|
boundingBoxY2: 1,
|
|
|
|
imageHeight: 1024,
|
|
|
|
imageWidth: 1024,
|
2024-09-05 00:23:58 +02:00
|
|
|
sourceType: SourceType.MACHINE_LEARNING,
|
2024-06-16 21:25:27 +02:00
|
|
|
faceSearch: { faceId: 'assetFaceId1', embedding: [1, 2, 3, 4] },
|
2023-08-01 03:28:07 +02:00
|
|
|
}),
|
2024-01-18 07:08:48 +02:00
|
|
|
primaryFace1: Object.freeze<NonNullableProperty<AssetFaceEntity>>({
|
|
|
|
id: 'assetFaceId2',
|
2023-08-01 03:28:07 +02:00
|
|
|
assetId: assetStub.image.id,
|
|
|
|
asset: assetStub.image,
|
|
|
|
personId: personStub.primaryPerson.id,
|
|
|
|
person: personStub.primaryPerson,
|
|
|
|
boundingBoxX1: 0,
|
|
|
|
boundingBoxY1: 0,
|
|
|
|
boundingBoxX2: 1,
|
|
|
|
boundingBoxY2: 1,
|
|
|
|
imageHeight: 1024,
|
|
|
|
imageWidth: 1024,
|
2024-09-05 00:23:58 +02:00
|
|
|
sourceType: SourceType.MACHINE_LEARNING,
|
2024-06-16 21:25:27 +02:00
|
|
|
faceSearch: { faceId: 'assetFaceId2', embedding: [1, 2, 3, 4] },
|
2023-08-01 03:28:07 +02:00
|
|
|
}),
|
2024-01-18 07:08:48 +02:00
|
|
|
mergeFace1: Object.freeze<NonNullableProperty<AssetFaceEntity>>({
|
|
|
|
id: 'assetFaceId3',
|
2023-08-01 03:28:07 +02:00
|
|
|
assetId: assetStub.image.id,
|
|
|
|
asset: assetStub.image,
|
|
|
|
personId: personStub.mergePerson.id,
|
|
|
|
person: personStub.mergePerson,
|
|
|
|
boundingBoxX1: 0,
|
|
|
|
boundingBoxY1: 0,
|
|
|
|
boundingBoxX2: 1,
|
|
|
|
boundingBoxY2: 1,
|
|
|
|
imageHeight: 1024,
|
|
|
|
imageWidth: 1024,
|
2024-09-05 00:23:58 +02:00
|
|
|
sourceType: SourceType.MACHINE_LEARNING,
|
2024-06-16 21:25:27 +02:00
|
|
|
faceSearch: { faceId: 'assetFaceId3', embedding: [1, 2, 3, 4] },
|
2023-08-01 03:28:07 +02:00
|
|
|
}),
|
2024-01-18 07:08:48 +02:00
|
|
|
mergeFace2: Object.freeze<NonNullableProperty<AssetFaceEntity>>({
|
|
|
|
id: 'assetFaceId4',
|
2023-08-01 03:28:07 +02:00
|
|
|
assetId: assetStub.image1.id,
|
|
|
|
asset: assetStub.image1,
|
|
|
|
personId: personStub.mergePerson.id,
|
|
|
|
person: personStub.mergePerson,
|
|
|
|
boundingBoxX1: 0,
|
|
|
|
boundingBoxY1: 0,
|
|
|
|
boundingBoxX2: 1,
|
|
|
|
boundingBoxY2: 1,
|
|
|
|
imageHeight: 1024,
|
|
|
|
imageWidth: 1024,
|
2024-09-05 00:23:58 +02:00
|
|
|
sourceType: SourceType.MACHINE_LEARNING,
|
2024-06-16 21:25:27 +02:00
|
|
|
faceSearch: { faceId: 'assetFaceId4', embedding: [1, 2, 3, 4] },
|
2023-08-01 03:28:07 +02:00
|
|
|
}),
|
2024-01-18 07:08:48 +02:00
|
|
|
start: Object.freeze<NonNullableProperty<AssetFaceEntity>>({
|
|
|
|
id: 'assetFaceId5',
|
2023-09-26 09:03:22 +02:00
|
|
|
assetId: assetStub.image.id,
|
|
|
|
asset: assetStub.image,
|
|
|
|
personId: personStub.newThumbnail.id,
|
|
|
|
person: personStub.newThumbnail,
|
|
|
|
boundingBoxX1: 5,
|
|
|
|
boundingBoxY1: 5,
|
|
|
|
boundingBoxX2: 505,
|
|
|
|
boundingBoxY2: 505,
|
2024-06-16 17:45:58 +02:00
|
|
|
imageHeight: 2880,
|
|
|
|
imageWidth: 2160,
|
2024-09-05 00:23:58 +02:00
|
|
|
sourceType: SourceType.MACHINE_LEARNING,
|
2024-06-16 21:25:27 +02:00
|
|
|
faceSearch: { faceId: 'assetFaceId5', embedding: [1, 2, 3, 4] },
|
2023-09-26 09:03:22 +02:00
|
|
|
}),
|
2024-01-18 07:08:48 +02:00
|
|
|
middle: Object.freeze<NonNullableProperty<AssetFaceEntity>>({
|
|
|
|
id: 'assetFaceId6',
|
2023-09-26 09:03:22 +02:00
|
|
|
assetId: assetStub.image.id,
|
|
|
|
asset: assetStub.image,
|
|
|
|
personId: personStub.newThumbnail.id,
|
|
|
|
person: personStub.newThumbnail,
|
|
|
|
boundingBoxX1: 100,
|
|
|
|
boundingBoxY1: 100,
|
|
|
|
boundingBoxX2: 200,
|
|
|
|
boundingBoxY2: 200,
|
|
|
|
imageHeight: 500,
|
|
|
|
imageWidth: 400,
|
2024-09-05 00:23:58 +02:00
|
|
|
sourceType: SourceType.MACHINE_LEARNING,
|
2024-06-16 21:25:27 +02:00
|
|
|
faceSearch: { faceId: 'assetFaceId6', embedding: [1, 2, 3, 4] },
|
2023-09-26 09:03:22 +02:00
|
|
|
}),
|
2024-01-18 07:08:48 +02:00
|
|
|
end: Object.freeze<NonNullableProperty<AssetFaceEntity>>({
|
|
|
|
id: 'assetFaceId7',
|
2023-09-26 09:03:22 +02:00
|
|
|
assetId: assetStub.image.id,
|
|
|
|
asset: assetStub.image,
|
|
|
|
personId: personStub.newThumbnail.id,
|
|
|
|
person: personStub.newThumbnail,
|
|
|
|
boundingBoxX1: 300,
|
|
|
|
boundingBoxY1: 300,
|
|
|
|
boundingBoxX2: 495,
|
|
|
|
boundingBoxY2: 495,
|
|
|
|
imageHeight: 500,
|
|
|
|
imageWidth: 500,
|
2024-09-05 00:23:58 +02:00
|
|
|
sourceType: SourceType.MACHINE_LEARNING,
|
2024-06-16 21:25:27 +02:00
|
|
|
faceSearch: { faceId: 'assetFaceId7', embedding: [1, 2, 3, 4] },
|
2023-09-26 09:03:22 +02:00
|
|
|
}),
|
2024-01-18 07:08:48 +02:00
|
|
|
noPerson1: Object.freeze<AssetFaceEntity>({
|
|
|
|
id: 'assetFaceId8',
|
|
|
|
assetId: assetStub.image.id,
|
|
|
|
asset: assetStub.image,
|
|
|
|
personId: null,
|
|
|
|
person: null,
|
|
|
|
boundingBoxX1: 0,
|
|
|
|
boundingBoxY1: 0,
|
|
|
|
boundingBoxX2: 1,
|
|
|
|
boundingBoxY2: 1,
|
|
|
|
imageHeight: 1024,
|
|
|
|
imageWidth: 1024,
|
2024-09-05 00:23:58 +02:00
|
|
|
sourceType: SourceType.MACHINE_LEARNING,
|
2024-06-16 21:25:27 +02:00
|
|
|
faceSearch: { faceId: 'assetFaceId8', embedding: [1, 2, 3, 4] },
|
2024-01-18 07:08:48 +02:00
|
|
|
}),
|
|
|
|
noPerson2: Object.freeze<AssetFaceEntity>({
|
|
|
|
id: 'assetFaceId9',
|
|
|
|
assetId: assetStub.image.id,
|
|
|
|
asset: assetStub.image,
|
|
|
|
personId: null,
|
|
|
|
person: null,
|
|
|
|
boundingBoxX1: 0,
|
|
|
|
boundingBoxY1: 0,
|
|
|
|
boundingBoxX2: 1,
|
|
|
|
boundingBoxY2: 1,
|
|
|
|
imageHeight: 1024,
|
|
|
|
imageWidth: 1024,
|
2024-09-05 00:23:58 +02:00
|
|
|
sourceType: SourceType.MACHINE_LEARNING,
|
2024-06-16 21:25:27 +02:00
|
|
|
faceSearch: { faceId: 'assetFaceId9', embedding: [1, 2, 3, 4] },
|
2024-01-18 07:08:48 +02:00
|
|
|
}),
|
2023-08-01 03:28:07 +02:00
|
|
|
};
|