type validation adjusted

This one is related with this [issue](https://github.com/yiisoft/yii2/issues/3774) .
nope, as you can see check for extension type also was very simple, yet adding some if-conditions to case would make it more unreadeble and unusable. So we need to make `validateType` method, same for others. Here we have correct behavior, it is not overcoding as it can be seen. It only helps.