public void MapToDto_ValidMetadata_Succeeds() { const string propertyWithMetadata = "PatientAddressType"; Mapper.CreateMap <PatientAddress, PatientAddressDtoTest> (); Mapper.CreateMap <IMetadataItem, IMetadataItemDto>() .Include <ReadonlyMetadataItem, ReadonlyMetadataItemDto>() .Include <RequiredMetadataItem, RequiredMetadataItemDto>() .Include <HiddenMetadataItem, HiddenMetadataItemDto>() .Include <DisplayNameMetadataItem, DisplayNameMetadataItemDto>(); var metaDataRepository = new Mock <IMetadataRepository> (); var metaDataRoot = new MetadataRoot(typeof(PatientAddress).FullName, 1); metaDataRoot.AddChild(propertyWithMetadata); metaDataRoot.Children[0].MetadataItems.Add(new DisplayNameMetadataItem()); metaDataRepository.Setup(m => m.GetMetadata(typeof(PatientAddress).FullName)).Returns(metaDataRoot); var metadataMapper = new MetadataMapper(metaDataRepository.Object); var metaDataDto = new MetadataDto(typeof(PatientAddressDtoTest).FullName); metadataMapper.MapToDto(typeof(PatientAddress), typeof(PatientAddressDtoTest), metaDataDto); Assert.AreEqual(1, metaDataDto.Children.Count); Assert.AreEqual(1, metaDataDto.Children[0].MetadataItemDtos.Count); Assert.AreEqual(typeof(DisplayNameMetadataItemDto), metaDataDto.Children[0].MetadataItemDtos[0].GetType()); }
public void MapToDto_NullMetadataDto_ThrowsArgumentException() { var metaDataRepository = new Mock <IMetadataRepository>(); var metadataMapper = new MetadataMapper(metaDataRepository.Object); metadataMapper.MapToDto(typeof(PatientAddress), typeof(PatientAddressDtoTest), null); }
public void MapToDto_NullEntityType_ThrowsArgumentException() { var metaDataRepository = new Mock <IMetadataRepository>(); var metadataMapper = new MetadataMapper(metaDataRepository.Object); var metaDataDto = new MetadataDto(typeof(PatientAddressDtoTest).FullName); metadataMapper.MapToDto(null, typeof(PatientAddressDtoTest), metaDataDto); }
public override void Load() { // there must only be a single metadata mapper and output writer var metadataMapper = new MetadataMapper(); var outputWriter = new StructuedTextOutputWriter(metadataMapper); Bind<IMetadataMapper>().ToConstant(metadataMapper); Bind<IConsistencyChecker>().To<ConsistencyChecker>(); Bind<IConfigurationMapper>().To<ConfigurationMapper>().InSingletonScope(); Bind<IConfigurationLoader>().To<ConfigurationLoader>(); Bind<IFileSystemLoader>().To<FileSystemLoader>(); Bind<IMetadataLoader>().To<MetaDataLoader>(); Bind<IMetadataFactory>().To<MetadataFactory>().InSingletonScope(); Bind<IConfigurationWriter>().To<ConfigurationWriter>(); Bind<IRuleSet>().To<RuleSet>().InSingletonScope(); Bind<StructuedTextOutputWriter>().ToConstant(outputWriter); Bind<ITextOutputWriter>().ToConstant(outputWriter); Bind<IOutputWriter<IFile>>().ToConstant(outputWriter); Bind<IOutputWriter<IDirectory>>().ToConstant(outputWriter); Bind<IOutputWriter<IArtist>>().ToConstant(outputWriter); Bind<IOutputWriter<IAlbum>>().ToConstant(outputWriter); Bind<IOutputWriter<IDisk>>().ToConstant(outputWriter); Bind<IOutputWriter<ITrack>>().ToConstant(outputWriter); Bind<IDynamicConfigurator>().To<DynamicConfigurator>(); // default configuration node (only a single instance) var mutableDefaultConfigNode = new MutableConfigurationNode(); var defaultConfigNode = new DefaultConfigurationNode(mutableDefaultConfigNode); Bind<IMutableConfigurationNode>().ToConstant(mutableDefaultConfigNode).WhenInjectedExactlyInto<DynamicConfigurator>(); Bind<IDefaultConfigurationNode>().ToConstant(defaultConfigNode); }
public override void Load() { // there must only be a single metadata mapper and output writer var metadataMapper = new MetadataMapper(); var outputWriter = new StructuedTextOutputWriter(metadataMapper); Bind <IMetadataMapper>().ToConstant(metadataMapper); Bind <IConsistencyChecker>().To <ConsistencyChecker>(); Bind <IConfigurationMapper>().To <ConfigurationMapper>().InSingletonScope(); Bind <IConfigurationLoader>().To <ConfigurationLoader>(); Bind <IFileSystemLoader>().To <FileSystemLoader>(); Bind <IMetadataLoader>().To <MetaDataLoader>(); Bind <IMetadataFactory>().To <MetadataFactory>().InSingletonScope(); Bind <IConfigurationWriter>().To <ConfigurationWriter>(); Bind <IRuleSet>().To <RuleSet>().InSingletonScope(); Bind <StructuedTextOutputWriter>().ToConstant(outputWriter); Bind <ITextOutputWriter>().ToConstant(outputWriter); Bind <IOutputWriter <IFile> >().ToConstant(outputWriter); Bind <IOutputWriter <IDirectory> >().ToConstant(outputWriter); Bind <IOutputWriter <IArtist> >().ToConstant(outputWriter); Bind <IOutputWriter <IAlbum> >().ToConstant(outputWriter); Bind <IOutputWriter <IDisk> >().ToConstant(outputWriter); Bind <IOutputWriter <ITrack> >().ToConstant(outputWriter); Bind <IDynamicConfigurator>().To <DynamicConfigurator>(); // default configuration node (only a single instance) var mutableDefaultConfigNode = new MutableConfigurationNode(); var defaultConfigNode = new DefaultConfigurationNode(mutableDefaultConfigNode); Bind <IMutableConfigurationNode>().ToConstant(mutableDefaultConfigNode).WhenInjectedExactlyInto <DynamicConfigurator>(); Bind <IDefaultConfigurationNode>().ToConstant(defaultConfigNode); }