These are edge-cases we should make sure are covered so we don't
accidentally change how they behave.
Change-Id: Iddd08a7e752ad1fe813ed42b665e4f656c9f516c
It's impossible that explode() returns an empty array. This is dead
code.
Also add tests for the previously untested #titleparts function to
make sure this patch doesn't change any behavior. Including weird
usages with negative numbers.
Change-Id: Ib0d2503fdb0900bf6db3ebbc26d2ff648dbfc86d