add duplicate id check, re.moveAllMocks added - used to clear state between tests