Ejemplo n.º 1
0
        public void PersistenceEntityDtoViaPocoMapperTest()
        {
            var mapper = DependencyResolver.Current.Resolve <ITypeMapper>();

            PersistenceEntityDto entityDto = new PersistenceEntityDto();

            entityDto.ConcurrencyToken = new TickConcurrencyToken();
            entityDto.Id                        = Guid.NewGuid();
            entityDto.Revision                  = new RevisionData();
            entityDto.Revision.Changeset        = new Changeset();
            entityDto.Revision.Changeset.Id     = Guid.NewGuid();
            entityDto.Revision.Changeset.Branch = new Branch();
            entityDto.Revision.RevisionId       = Guid.NewGuid();
            entityDto.UtcCreated                = entityDto.UtcModified = entityDto.UtcStatusChanged = DateTime.UtcNow;
            entityDto.Status                    = new PersistenceEntityStatus();


            //Mapper.CreateMap<IPersistenceEntityStatus, PersistenceEntityStatus>();
            //Mapper.CreateMap<RevisionData, Persistence.Model.Versioning.RevisionData>();

            //Mapper.CreateMap<PersistenceEntityDto, Persistence.Model.PersistenceEntityDto>()
            //    //.ForMember(dest => dest.Id, opt => opt.ResolveUsing(new DtoGuidToEntityUriResolver()))
            //    .ForMember(dest => dest.Revision, opt => opt.ResolveUsing(new ProxyResolver<PersistenceEntityDto>(a=>a.Revision)));

            Mapper.AssertConfigurationIsValid();

            //Mapper.CreateMap<IRevisionData, Persistence.Model.Versioning.RevisionData>();

            var mappedEntity = mapper.Map <PersistenceEntityDto, IPersistenceEntity>(entityDto);

            //var mappedEntity2 = Mapper.Map<IPersistenceEntity, Persistence.Model.PersistenceEntityDto>(mappedEntity);

            var hydration = new PersistenceEntity();

            //entityDto.Hydrate(hydration);
            mapper.Map(entityDto, hydration);

            Assert.IsNotNull(mappedEntity);
            Assert.IsInstanceOfType(mappedEntity, typeof(IPersistenceEntity));
            Assert.AreEqual(entityDto.Id, hydration.Id.AsGuid);
            Assert.AreEqual(entityDto.Id, mappedEntity.Id.AsGuid);
        }
Ejemplo n.º 2
0
        public void PersistenceEntityDtoViaPocoMapperTest()
        {
            var mapper = DependencyResolver.Current.Resolve<ITypeMapper>();

            PersistenceEntityDto entityDto = new PersistenceEntityDto();
            entityDto.ConcurrencyToken = new TickConcurrencyToken();
            entityDto.Id = Guid.NewGuid();
            entityDto.Revision = new RevisionData();
            entityDto.Revision.Changeset = new Changeset();
            entityDto.Revision.Changeset.Id = Guid.NewGuid();
            entityDto.Revision.Changeset.Branch = new Branch();
            entityDto.Revision.RevisionId = Guid.NewGuid();
            entityDto.UtcCreated = entityDto.UtcModified = entityDto.UtcStatusChanged = DateTime.UtcNow;
            entityDto.Status = new PersistenceEntityStatus();
            

            //Mapper.CreateMap<IPersistenceEntityStatus, PersistenceEntityStatus>();
            //Mapper.CreateMap<RevisionData, Persistence.Model.Versioning.RevisionData>();

            //Mapper.CreateMap<PersistenceEntityDto, Persistence.Model.PersistenceEntityDto>()
            //    //.ForMember(dest => dest.Id, opt => opt.ResolveUsing(new DtoGuidToEntityUriResolver()))
            //    .ForMember(dest => dest.Revision, opt => opt.ResolveUsing(new ProxyResolver<PersistenceEntityDto>(a=>a.Revision)));

            Mapper.AssertConfigurationIsValid();

            //Mapper.CreateMap<IRevisionData, Persistence.Model.Versioning.RevisionData>();

            var mappedEntity = mapper.Map<PersistenceEntityDto, IPersistenceEntity>(entityDto);

            //var mappedEntity2 = Mapper.Map<IPersistenceEntity, Persistence.Model.PersistenceEntityDto>(mappedEntity);

            var hydration = new PersistenceEntity();
            //entityDto.Hydrate(hydration);
            mapper.Map(entityDto, hydration);

            Assert.IsNotNull(mappedEntity);
            Assert.IsInstanceOfType(mappedEntity, typeof(IPersistenceEntity));
            Assert.AreEqual(entityDto.Id, hydration.Id.AsGuid);
            Assert.AreEqual(entityDto.Id, mappedEntity.Id.AsGuid);
        }