public OracleParameterExpressions(Type oracleParameterType)
            {
                if (!oracleParameterType.Namespace.StartsWith("Oracle"))
                {
                    throw new NotSupportedException($"Whoopsies! This library will only work with Oracle types, you are attempting to use type {oracleParameterType.FullName}.");
                }

                OraDbType      = new ObjectEnumWrapper <IDbDataParameter, OracleMappingType>("OracleDbType", "OracleDbType", oracleParameterType);
                ArrayBindSize  = new ObjectWrapper <IDbDataParameter, int[]>("ArrayBindSize", oracleParameterType);
                CollectionType = new ObjectEnumWrapper <IDbDataParameter, OracleMappingCollectionType>("OracleCollectionType", "CollectionType", oracleParameterType);
                Status         = new ObjectEnumWrapper <IDbDataParameter, OracleParameterMappingStatus>("Status", "Status", oracleParameterType);
                IsNullable     = new ObjectWrapper <IDbDataParameter, bool>("IsNullable", oracleParameterType);
            }
        public void BasicTest(IDbCommand cmd)
        {
            var param = cmd.CreateParameter();

            var setter =
                new ObjectEnumWrapper <IDbDataParameter, OracleMappingType>("OracleDbType", "OracleDbType",
                                                                            param.GetType());

            setter.SetValue(param, OracleMappingType.Date);
            var value = setter.GetValue(param);

            value.ToString().Should().Be("Date");
        }