BUG/TST: TimeGrouper has erroneous groups if key length is too short
- [x] closes #8542
- [x] tests added / passed
- [x] passes `git diff upstream/master | flake8 --diff`
- ~~whatsnew entry~~

No what's new as the fixed timing is unclear.

**NOTE** Different from `TimeGrouper` with single key, it doesn't interpolate missing datetimes between existing keys (same as current behavior of key length >= 3).
