Ok I see.
There can be 2 cases here.
1) r1.getBytes() can be null (before your patch).
2) r1.getBytes() can be different than expected.
If r1.getBytes() send null, Result() constructor will still work but the comparison will fail. If r1.getBytes() works but send a differenlt result that expected, the comparison will faile too. So you don't really have a differentiation between the 2 cases. Adding Assert.assertNotNull(r1.getBytes()) will allow to differentiate that. In both cases, test will fail, but that will help to know what failed in it.
So, forget what I said about " instead of Result r2 = new", it should have been " in addition of Result.compareResults(r1, r2);" (just before).