public void GetClrType_ThrowsArgumentNull_ForInputParameters()
        {
            // Arrange & Act & Assert
            IODataTypeMapper mapper = null;

            ExceptionAssert.ThrowsArgumentNull(() => mapper.GetClrType(null, null), "mapper");

            // Arrange & Act & Assert
            mapper = new Mock <IODataTypeMapper>().Object;
            ExceptionAssert.ThrowsArgumentNull(() => mapper.GetClrType(null, null), "edmType");
        }
        /// <summary>
        /// Gets the corresponding <see cref="Type"/> for a given Edm type <see cref="IEdmTypeReference"/>.
        /// </summary>
        /// <param name="mapper">The type mapper.</param>
        /// <param name="edmModel">The Edm model.</param>
        /// <param name="edmType">The Edm type.</param>
        /// <param name="assembliesResolver">The assembly resolver.</param>
        /// <returns>Null or the CLR type.</returns>
        public static Type GetClrType(this IODataTypeMapper mapper, IEdmModel edmModel, IEdmTypeReference edmType, IAssemblyResolver assembliesResolver)
        {
            if (mapper == null)
            {
                throw Error.ArgumentNull(nameof(mapper));
            }

            if (edmType == null)
            {
                throw Error.ArgumentNull(nameof(edmType));
            }

            return(mapper.GetClrType(edmModel, edmType.Definition, edmType.IsNullable, assembliesResolver));
        }
 /// <summary>
 /// Gets the corresponding <see cref="Type"/> for a given Edm type <see cref="IEdmTypeReference"/>.
 /// </summary>
 /// <param name="mapper">The type mapper.</param>
 /// <param name="edmModel">The Edm model.</param>
 /// <param name="edmType">The Edm type reference.</param>
 /// <returns>Null or the CLR type.</returns>
 public static Type GetClrType(this IODataTypeMapper mapper, IEdmModel edmModel, IEdmTypeReference edmType)
 {
     return(mapper.GetClrType(edmModel, edmType, AssemblyResolverHelper.Default));
 }