I disagree on readability, I prefer the extra variable, too, so it's indeed more likely to be a personal preference. Storing a long line of code into a variable with a meaningful name is (IMO) much more explicit and verbose. It reduces the cognitive burden on the reader, because he doesn't have to figure out, what the code nested in the assert() call does - instead, the result of a nested method call already has a meaningful descriptive name.

Just my 2 ¢ ...