getName fully working and throwing appropriate exceptions