Not sure if you have seen my previous comment but my idea was wrong...

> Nevermind, my condition is totally wrong :) It is very late in my country :) Maybe something like that?
>
> ``` php
> if ((!is_string($language) || !((strlen($language) === 2) || (strlen($language) === 5))) && ($language !== null)) {
> ```

Maybe travis tests will pass but it is wrong because if we pass 5 chars then the condition will pass as `strlen($language) !== 2` is true and then, throw an exception...