changed TestListener to use RecordingCanges and added a retry mechanims to give the veent time to propagate