To be honest I'm not entirely sure why
CASServer::Utils.random_string always starts with an "r". I suspect this is a vestige, and has something to do with the way that function evolved. If I had to guess, the random string part of the tickets generated by the original Java server always started with "r", so we copied that behaviour in the original ticket-generating code. The guy who wrote the Utils specs then ended up using this as a sanity check of some sort.
I'm not 100% sure, but I don't think anything would blow up if we stopped using "r" in those ticket strings, so it probably doesn't make sense to check for that in the spec.
I'm looking through the code and am confused by the spec that requires the random_string util function to include the character 'r'. I don't understand what the requirement is intended to accomplish, can someone explain it to me?