/// <summary> /// Gets the providers for the books and geography data. /// </summary> /// <param name="geographyProvider">The geography data provider on exit.</param> /// <param name="booksReadProvider">The books data provider on exit.</param> /// <returns>True if successful, false otherwise.</returns> protected bool GetProviders(out GeographyProvider geographyProvider, out BooksReadProvider booksReadProvider) { geographyProvider = null; booksReadProvider = null; if (!_booksReadDatabase.ReadFromDatabase) { _booksReadDatabase.ConnectToDatabase(); } if (!_nationsReadDatabase.ReadFromDatabase) { _nationsReadDatabase.ConnectToDatabase(); } if (_booksReadDatabase.ReadFromDatabase && _nationsReadDatabase.ReadFromDatabase) { // Setup the providers. geographyProvider = new GeographyProvider(); geographyProvider.Setup(_nationsReadDatabase.LoadedItems); booksReadProvider = new BooksReadProvider(); booksReadProvider.Setup(_booksReadDatabase.LoadedItems, geographyProvider); return(true); } return(false); }
public void ZipCodes_MapsPropertiesCorrectly() { var data = ZipCodeHeader + Environment.NewLine + "NY,00501,40.815400,-73.045600,25,-5 ,HOLTSVILLE"; var fakeAssembly = new FakeAssembly(); fakeAssembly.Resources.Add("Ritter.Atlas.Resources.ZipCodes.csv", new MemoryStream(Encoding.UTF8.GetBytes(data))); var fakeResources = ResourceContainer.FromAssembly(fakeAssembly); var target = new GeographyProvider(fakeResources); var actual = target.ZipCodes().Single(); Assert.Equal("00501", actual.Id); Assert.Equal("NY", actual.StateCode); Assert.Equal(40.815400f, actual.Latitude); Assert.Equal(-73.045600f, actual.Longitude); Assert.Equal(-5, actual.TimeZone); Assert.Equal("HOLTSVILLE", actual.PrimaryCity); }