public void TestInitialise() { _Snapshot = Factory.TakeSnapshot(); _FetchedRecorder = new EventRecorder <AircraftOnlineLookupEventArgs>(); _Clock = new ClockMock(); Factory.Singleton.RegisterInstance <IClock>(_Clock.Object); _Lookup = TestUtilities.CreateMockSingleton <IAircraftOnlineLookup>(); _LookupUsed = new List <string>(); _LookupIcaos = new List <string>(); _LookupResponds = true; _Lookup.Setup(r => r.Lookup(It.IsAny <string>())).Callback((string icao) => { _LookupUsed.Add(icao); if (_LookupResponds) { var args = BuildAircraftOnlineLookupEventArgs(new string[] { icao }, _LookupIcaos); _Lookup.Raise(r => r.AircraftFetched += null, args); } }); _Lookup.Setup(r => r.LookupMany(It.IsAny <IEnumerable <string> >())).Callback((IEnumerable <string> icaos) => { _LookupUsed.AddRange(icaos); if (_LookupResponds) { var args = BuildAircraftOnlineLookupEventArgs(icaos, _LookupIcaos); _Lookup.Raise(r => r.AircraftFetched += null, args); } }); _Cache1 = TestUtilities.CreateMockInstance <IAircraftOnlineLookupCache>(); _Cache2 = TestUtilities.CreateMockInstance <IAircraftOnlineLookupCache>(); _Cache1Icaos = new List <string>(); _Cache2Icaos = new List <string>(); _SavedDetails = new List <AircraftOnlineLookupDetail>(); _RecordedMissingIcaos = new List <string>(); _LookupCacheUsed = new List <int>(); _SaveCacheUsed = new List <int>(); _SaveCallback = null; _CreateCacheRecordCallback = null; SetupCache(1, _Cache1, _Cache1Icaos); SetupCache(2, _Cache2, _Cache2Icaos); _Manager = Factory.Singleton.Resolve <IAircraftOnlineLookupManager>(); _Manager.RegisterCache(_Cache1.Object, 1, false); _Manager.RegisterCache(_Cache2.Object, 2, false); // <-- this has a higher priority and should take precedence }
public void AircraftOnlineLookupManager_RegisterCache_Throws_If_Cache_Is_Null() { _Manager.RegisterCache(null, 1, letManagerControlLifetime: false); }