public void MapperDoesNotNotifyDettachedObservers() { var airspace = Substitute.For <SWT_ATM.IObserver <List <Data> > >(); var format = new TransponderDataFormat(); var mapper = new CoordinateMapper(format); var simulator = new TrackSimulator(mapper, Substitute.For <ITransponderReceiver>()); mapper.Attach(airspace); mapper.Deattach(airspace); var testData = new List <string>(); testData.Add("ATR423;39045;12932;14000;20151006213456789"); simulator.OnDataReceieved(null, new RawTransponderDataEventArgs(testData)); airspace.DidNotReceive().Update(Arg.Any <List <Data> >()); }