generateRandom() does not support generating random Date32 value:

```
SELECT *
FROM generateRandom('Date32 Date32', NULL, 10, 2)
LIMIT 10

Received exception from server (version 21.11.5):
Code: 48. DB::Exception: Received from localhost:9000. DB::Exception: The 'GenerateRandom' is not implemented for type Date32: While executing GenerateRandom. (NOT_IMPLEMENTED)
```

auto values = typeid_cast<const DataTypeEnum<Int16> *>(type.get())->getValues();
            auto & data = column->getData();
            data.resize(limit);
            UInt16 size = values.size();
            UInt8 off;
            for (UInt64 i = 0; i < limit; ++i)
            {
                off = static_cast<UInt16>(rng()) % size;
                data[i] = values[off].second;
            }
            return column;
        }
        case TypeIndex::Array:
        {
            auto nested_type = typeid_cast<const DataTypeArray *>(type.get())->getNestedType();
            auto offsets_column = ColumnVector<ColumnArray::Offset>::create();
            auto & offsets = offsets_column->getData();
            UInt64 offset = 0;
            offsets.resize(limit);
            for (UInt64 i = 0; i < limit; ++i)
            {
                offset += static_cast<UInt64>(rng()) % (max_array_length + 1);
                offsets[i] = offset;
            }
            auto data_column = fillColumnWithRandomData(nested_type, offset, max_array_length, max_string_length, rng, context);
            return ColumnArray::create(std::move(data_column), std::move(offsets_column));
        }
        case TypeIndex::Tuple:
        {
            auto elements = typeid_cast<const DataTypeTuple *>(type.get())->getElements();