Python 3 uses unicode strings by default. This bug was caused by
attempting to join a byte string to a unicode string when running
with the Python 3 interpreter.
A unit test was added to reproduce the problem.
Whilst this fix allows alarm definitions to be listed, it doesn't
fix the formatting problem in Python 3. A better fix may be
to return unicode strings in Python 3 as part of a wider code
audit.
Story: 2004972
Task: 29427
Change-Id: Ib008ed2aacd93f499b15094cf5a7e1bb0bb50a1f