public FieldMetadataProviderCollection(
     TypeMetadataProvider typeMetadataProvider,
     ValidationMetadataProvider validationMetaProvider
     )
 {
     this._typeMetadataProvider   = typeMetadataProvider;
     this._validationMetaProvider = validationMetaProvider;
 }
Esempio n. 2
0
        public void BuildStoredProcedureName <T>(string operation)
        {
            if (string.IsNullOrEmpty(operation))
            {
                throw new ArgumentException("Operation can't be null or empty");
            }
            string typeName = TypeMetadataProvider.GetTypeSqlName <T>();

            _storedProcedureName = string.Format(StoredProcedureConstants.ProcedureNamePattern, operation, typeName);
        }
Esempio n. 3
0
        private void ShouldIterateOverTypeMetaProviders(
            Mock <IEnumerable <ITypeMetaProvider> > typeMetaProviders,
            FieldGenerationContext context
            )
        {
            var sut  = new TypeMetadataProvider(typeMetaProviders.Object);
            var meta = sut.GetMetadata(context).ToArray();

            typeMetaProviders.Verify(e => e.GetEnumerator(), Times.Once);
        }
Esempio n. 4
0
        private void ShouldCallGetMetadataForEachProvider(
            List <Mock <ITypeMetaProvider> > typeMetaProviderMocks,
            FieldGenerationContext context
            )
        {
            var typeMetaProviders = typeMetaProviderMocks.Select(m => m.Object).ToArray();

            var sut  = new TypeMetadataProvider(typeMetaProviders);
            var meta = sut.GetMetadata(context).ToArray();

            foreach (var typeMetaProviderMock in typeMetaProviderMocks)
            {
                typeMetaProviderMock.Verify(m => m.GetMetadata(context), Times.Once);
            }
        }
Esempio n. 5
0
        private List <SqlParameter> GetParametersFromObject <T>(T obj)
        {
            if (obj == null)
            {
                throw new ArgumentException();
            }

            IEnumerable <TypePropery> typeMetadata = TypeMetadataProvider.GetPropertiesSqlName <T>();
            List <SqlParameter>       parameters   = new List <SqlParameter>();

            foreach (TypePropery typeProperty in typeMetadata)
            {
                parameters.Add(new SqlParameter(string.Format(StoredProcedureConstants.ParameterNamePattern, typeProperty.SqlName), //Add parameter name from Attribute
                                                obj.GetType().GetProperty(typeProperty.PropertyName).GetValue(obj)));               // Add parameter value
            }
            return(parameters);
        }
Esempio n. 6
0
        private void ShouldForwardGetMetadataForEachProviderAsReturn(
            List <IEnumerable <KeyValuePair <string, object> > > expectedKeyValuePairs,
            List <Mock <ITypeMetaProvider> > typeMetaProviderMocks,
            FieldGenerationContext context
            )
        {
            var typeMetaProviders = typeMetaProviderMocks.Select(m => m.Object).ToArray();

            for (var index = 0; index < typeMetaProviderMocks.Count; index++)
            {
                var typeMetaProviderMock = typeMetaProviderMocks[index];

                typeMetaProviderMock
                .Setup(m => m.GetMetadata(context))
                .Returns(expectedKeyValuePairs[index]);
            }

            var sut  = new TypeMetadataProvider(typeMetaProviders);
            var meta = sut.GetMetadata(context).ToArray();

            Assert.Equal(meta, expectedKeyValuePairs.SelectMany(kvp => kvp));
        }
Esempio n. 7
0
 private void ShouldThrowArgumentNullExceptionWhenContextIsNull(
     TypeMetadataProvider sut
     )
 {
     Assert.Throws <ArgumentNullException>(() => sut.GetMetadata(null).ToArray());
 }
Esempio n. 8
0
        private void ShouldCreateInstance(IEnumerable <ITypeMetaProvider> typeMetaProviders)
        {
            var sut = new TypeMetadataProvider(typeMetaProviders);

            Assert.NotNull(sut);
        }