I would have thought that this wouldn't compile because the expression i1 = j1 + x1 doesn't return a boolean, it returns an int. I thought that the assert() method needed to receive a boolean. So what is going on here? I'm a little confused.
You're right that (i1 = j1 + x1) doesn't return a boolean, but (i1 = j1 + x1) < 6 does. It's saying "assign i1 the value of j1 plus x1 and then compare the result to see if it's less than 6.