Update tests to increase coverage

The biggest addition is the set of tests for when join_sep is not
defined. Arguably, this case should fail instead of silently defaulting
to an empty string.