Why call clock.nanotime() once?
If you want to make tests more deterministic and don't rely on assumption that 
between two commands there will be less time than 100000 nanoseconds.
Then it's good intention, I think it makes tests less intuitive, but it's good.
But your changes don't achieve this goal. For example:

map.put(25, new LWWSet.Timestamps(nano + 100000 + 100000, 0));
lww = new LWWSet<>(map);
lww = lww.remove(25);
Assert.assertEquals(lww, new LWWSet<>(25));

lww.remove get clock.nanotime() so you rely that nano + 100000 + 100000 >= 
clock.nanotime() it isn't fair.

Reply via email to