chore: import DH V2 D5.6.4 production baseline
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
import assert from 'node:assert/strict';
|
||||
import test from 'node:test';
|
||||
import { plainToInstance } from 'class-transformer';
|
||||
import { validate } from 'class-validator';
|
||||
import { CreateAssetMediaDto } from '../../src/asset-master/dto/create-asset-media.dto';
|
||||
import { AssetMediaKind } from '../../src/database/entities';
|
||||
|
||||
test('multipart media metadata transforms valid numeric coordinates', async () => {
|
||||
const dto = plainToInstance(CreateAssetMediaDto, {
|
||||
kind: AssetMediaKind.PHOTO,
|
||||
title: 'Cabezal del pozo',
|
||||
capturedAt: '2026-08-14T12:00:00.000Z',
|
||||
latitude: '-32.889500',
|
||||
longitude: '-68.845800',
|
||||
accuracyM: '3.250',
|
||||
});
|
||||
|
||||
assert.deepEqual(await validate(dto), []);
|
||||
assert.equal(dto.latitude, -32.8895);
|
||||
assert.equal(dto.longitude, -68.8458);
|
||||
assert.equal(dto.accuracyM, 3.25);
|
||||
});
|
||||
|
||||
test('media metadata rejects unknown kinds and coordinate ranges', async () => {
|
||||
const dto = plainToInstance(CreateAssetMediaDto, {
|
||||
kind: 'VIDEO',
|
||||
latitude: '91',
|
||||
longitude: '-181',
|
||||
});
|
||||
const properties = new Set((await validate(dto)).map((error) => error.property));
|
||||
assert.equal(properties.has('kind'), true);
|
||||
assert.equal(properties.has('latitude'), true);
|
||||
assert.equal(properties.has('longitude'), true);
|
||||
});
|
||||
Reference in New Issue
Block a user