If the assertion that the two objects are "equals" fails, then the first place to look is at the equals() method of the Module class. That's what the assertion is testing, right? And yet you haven't posted that method.
Thanks Paul for pointing me in the right direction, I didn't realise you were required to write your own equals method (still learning JAVA). After overriding the equals method in all classes the assertEquals now evaluates to true.
All that thinking. Doesn't it hurt? What do you think about this tiny ad?
a bit of art, as a gift, the permaculture playing cards