public void Map_Properties() { // Arrange var mapperConfiguration = new MapperConfiguration(expression => { expression.AddProfile <ApiResourceMapperProfile>(); }); var mapper = new AutoMapperWrapper(new Mapper(mapperConfiguration)); var model = new Models.ApiResource { Description = "description", DisplayName = "displayname", Name = "foo", Scopes = { new Models.Scope("foo1"), new Models.Scope("foo2") }, Enabled = false }; // Act var mappedEntity = mapper.Map <Entities.ApiResource>(model); var mappedModel = mapper.Map <Models.ApiResource>(mappedEntity); // Assert Assert.NotNull(mappedEntity); Assert.Equal(2, mappedEntity.Scopes.Count); Assert.NotNull(mappedEntity.Scopes.FirstOrDefault(x => x.Name == "foo1")); Assert.NotNull(mappedEntity.Scopes.FirstOrDefault(x => x.Name == "foo2")); Assert.NotNull(model); Assert.Equal("description", mappedModel.Description); Assert.Equal("displayname", mappedModel.DisplayName); Assert.False(mappedModel.Enabled); Assert.Equal("foo", mappedModel.Name); }
public void Map_Use_Defaults() { // Arrange var mapperConfiguration = new MapperConfiguration(expression => { expression.AddProfile <ApiResourceMapperProfile>(); }); var mapper = new AutoMapperWrapper(new Mapper(mapperConfiguration)); var entity = new Entities.ApiResource { Secrets = new System.Collections.Generic.List <Entities.ApiSecret> { new Entities.ApiSecret { } } }; var def = new Models.ApiResource { ApiSecrets = { new Models.Secret("foo") } }; // Act var mappedModel = mapper.Map <Models.ApiResource>(entity); // Assert Assert.Equal(def.ApiSecrets.First().Type, mappedModel.ApiSecrets.First().Type); }
public void Map_Use_Defaults() { // Arrange var mapperConfiguration = new MapperConfiguration(expression => { expression.AddProfile <ClientMapperProfile>(); }); var mapper = new AutoMapperWrapper(new Mapper(mapperConfiguration)); var entity = new Entities.Client { ClientSecrets = new List <Entities.ClientSecret> { new Entities.ClientSecret { } } }; var def = new Models.Client { ClientSecrets = { new Models.Secret("foo") } }; // Act var mappedModel = mapper.Map <Models.Client>(entity); // Assert Assert.Equal(def.ProtocolType, mappedModel.ProtocolType); Assert.Equal(def.ClientSecrets.First().Type, mappedModel.ClientSecrets.First().Type); }
public void Map() { // Arrange var mapperConfiguration = new MapperConfiguration(expression => { expression.AddProfile <IdentityResourceMapperProfile>(); }); var mapper = new AutoMapperWrapper(new Mapper(mapperConfiguration)); var model = new Models.IdentityResource(); // Act var entity = mapper.Map <Entities.IdentityResource>(model); model = mapper.Map <Models.IdentityResource>(entity); // Assert Assert.NotNull(entity); Assert.NotNull(model); mapperConfiguration.AssertConfigurationIsValid(); }
public void UpdateFrom(IEntity <TKey> entity) { if (entity == null) { throw new ArgumentNullException("Input argument is null."); } if (this.GetType() != entity.GetType()) { throw new ArgumentException($"Input argument should be type of {this.GetType().Name}"); } AutoMapperWrapper.Map(entity, this); }
public void Map_Properties() { // Arrange var mapperConfiguration = new MapperConfiguration(expression => { expression.AddProfile <ClientMapperProfile>(); }); var mapper = new AutoMapperWrapper(new Mapper(mapperConfiguration)); var model = new Models.Client { Properties = { { "foo1", "bar1" }, { "foo2", "bar2" } } }; // Act var mappedEntity = mapper.Map <Entities.Client>(model); var mappedModel = mapper.Map <Models.Client>(mappedEntity); // Assert Assert.NotNull(mappedEntity); Assert.Equal(2, mappedEntity.Properties.Count); var foo1 = mappedEntity.Properties.FirstOrDefault(x => x.Key == "foo1"); Assert.NotNull(foo1); Assert.Equal("bar1", foo1.Value); var foo2 = mappedEntity.Properties.FirstOrDefault(x => x.Key == "foo2"); Assert.NotNull(foo2); Assert.Equal("bar2", foo2.Value); Assert.NotNull(mappedModel); Assert.Equal(2, mappedModel.Properties.Count); Assert.True(mappedModel.Properties.ContainsKey("foo1")); Assert.True(mappedModel.Properties.ContainsKey("foo2")); Assert.Equal("bar1", mappedModel.Properties["foo1"]); Assert.Equal("bar2", mappedModel.Properties["foo2"]); }
public void Map_Duplicated_Properties_ThorwsException() { // Arrange var mapperConfiguration = new MapperConfiguration(expression => { expression.AddProfile <ClientMapperProfile>(); }); var mapper = new AutoMapperWrapper(new Mapper(mapperConfiguration)); var entity = new Entities.Client { Properties = new System.Collections.Generic.List <Entities.ClientProperty> { new Entities.ClientProperty { Key = "foo1", Value = "bar1" }, new Entities.ClientProperty { Key = "foo1", Value = "bar2" }, } }; // Act & Assert Assert.Throws <AutoMapperMappingException>(() => mapper.Map <Models.Client>(entity)); }