public void Entity_to_dto_works()
        {
            var entity = createTestEntity();

            var dto = new FileItemLinkDTO(entity);

            compareEntityToDto(entity, dto);
        }
        public void Dto_to_entity_works()
        {
            var dto = new FileItemLinkDTO(createTestEntity());

            var entity = dto.ToEntity();

            compareEntityToDto(entity, dto);
        }
        void compareEntityToDto(FileItemLink entity, FileItemLinkDTO dto)
        {
            Assert.AreEqual((Guid)entity.Id, dto.Id, "faulty id");
            Assert.AreEqual(entity.Created, dto.Created, "faulty creation timestamp");
            Assert.AreEqual(entity.LastChange, dto.LastChange, "faulty last change timestamp");

            Assert.AreEqual((Guid)entity.ItemId, dto.ItemId, "faulty item-id");
            Assert.AreEqual(entity.FileKey, dto.FileKey.ToEntity(), "faulty FileHash");
            Assert.AreEqual(entity.Version, dto.Version.ToEntity(), "faulty version");
        }
        public void serialization_works()
        {
            var srcEntity = createTestEntity();
            var srcDto    = new FileItemLinkDTO(srcEntity);

            var str       = JsonSerializer.Serialize(srcDto);
            var dstDto    = JsonSerializer.Deserialize <FileItemLinkDTO>(str);
            var dstEntity = dstDto.ToEntity();

            compareEntities(srcEntity, dstEntity);
        }