private static Venue GetPurchaseVenue(CheckinsContainer checkinsContainer, CheckinParser.CheckinParser checkinParser) { Venue venue = new Venue(); venue.Name = checkinParser.GetPurchaseVenue(); return(GetVenue(venue, checkinsContainer)); }
private void AddCheckin(Checkin checkin, CheckinsContainer checkinsContainer) { Beer beer = checkinsContainer.GetBeer(checkin.Beer.Id); if (beer == null) { beer = checkin.Beer; Brewery brewery = checkinsContainer.GetBrewery(beer.Brewery.Id); if (brewery == null) { brewery = beer.Brewery; Venue venue = brewery.Venue; if (IsUpdateVenue(ref venue, checkinsContainer)) { brewery.Venue = venue; } checkinsContainer.AddBrewery(brewery); } else { beer.Brewery = brewery; } checkinsContainer.AddBeer(beer); } else { checkin.Beer = beer; } FillCheckinVenue(checkin, checkinsContainer); checkinsContainer.AddCheckin(checkin); }
private static void FillCheckinsContainer(CheckinsContainer checkinsContainer, CheckinParser.CheckinParser checkinParser) { Checkin checkin = GetCheckin(checkinParser); checkin.VenuePurchase = GetPurchaseVenue(checkinsContainer, checkinParser); checkin.Venue = GetCheckinVenue(checkinsContainer, checkinParser); checkinsContainer.AddCheckin(checkin); Beer beer = checkinsContainer.GetBeer(checkinParser.GetBeerID()); if (beer == null) { beer = GetBeer(checkinParser); checkinsContainer.AddBeer(beer); Brewery brewery = checkinsContainer.GetBrewery(checkinParser.GetBreweryID()); if (brewery == null) { brewery = GetBrewery(checkinParser); brewery.Venue = GetBreweryVenue(checkinsContainer, checkinParser); checkinsContainer.AddBrewery(brewery); } beer.Brewery = brewery; } checkin.Beer = beer; }
public static CheckinsContainer GetCheckinsContainer() { using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(Resources.ResourcesTestFileName)) { CheckinsContainer checkinsContainer = new CheckinsContainer(); CheckinCSVMapper.InitializeCheckinsContainer(checkinsContainer, stream); return(checkinsContainer); } }
private static Venue GetBreweryVenue(CheckinsContainer checkinsContainer, CheckinParser.CheckinParser checkinParser) { Venue venue = new Venue(); venue.Country = checkinParser.GetBreweryCountry(); venue.State = checkinParser.GetBreweryState(); venue.City = checkinParser.GetBreweryCity(); return(GetVenue(venue, checkinsContainer)); }
public void TestBeers() { Client untappdClient = new Client(); untappdClient.Initialize(AccessToken); Assert.True(untappdClient.Check()); CheckinsContainer checkinsContainer = TestHelper.GetCheckinsContainer(); untappdClient.UpdateBeers(checkinsContainer.Beers.Where(TestHelper.IsUpdateBeer).ToList(), TestHelper.IsUpdateBeer); }
public void TestReport() { ReportingService reportingService = new ReportingService(); using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(Resources.ResourcesTestFileName)) { CheckinsContainer checkinsContainer = new CheckinsContainer(); CheckinCSVMapper.InitializeCheckinsContainer(checkinsContainer, stream); reportingService.CreateAllCheckinsReport(checkinsContainer.Checkins, @"", "result"); } }
public void TestCheckins() { Client untappdClient = new Client(); untappdClient.Initialize(AccessToken); Assert.True(untappdClient.Check()); CheckinsContainer checkinsContainer = new CheckinsContainer(); untappdClient.FillFullCheckins(checkinsContainer); }
private static Venue GetCheckinVenue(CheckinsContainer checkinsContainer, CheckinParser.CheckinParser checkinParser) { Venue venue = new Venue(); venue.Name = checkinParser.GetVenueName(); venue.Country = checkinParser.GetVenueCountry(); venue.State = checkinParser.GetVenueState(); venue.City = checkinParser.GetVenueCity(); venue.Latitude = checkinParser.GetVenueLat(); venue.Longitude = checkinParser.GetVenueLng(); return(GetVenue(venue, checkinsContainer)); }
private static bool IsUpdateVenue(ref Venue venue, CheckinsContainer checkinsContainer) { Venue existVenue = checkinsContainer.GetVenue(venue); if (existVenue != null) { venue = existVenue; return(true); } checkinsContainer.AddVenue(venue); return(false); }
private void FillCheckins(CheckinsContainer checkinsContainer, long maxId, long?minId = null) { long currentId = maxId; int counter = 0; bool isRun = true; while (isRun) { HttpResponseMessage httpResponse = GetHttpResponse($"user/checkins/?max_id={currentId}&limit=50"); if ((long)httpResponse.StatusCode == 429) { throw new ArgumentException(httpResponse.ReasonPhrase); } string responseBody = httpResponse.Content.ReadAsStringAsync().Result; CheckinsQuickType checkinsQuickType = JsonConvert.DeserializeObject <CheckinsQuickType>(responseBody); if (checkinsQuickType.Response.Pagination.MaxId.HasValue) { List <Checkin> currentCheckins = CheckinMapper.GetCheckins(checkinsQuickType.Response.Checkins); if (minId.HasValue && currentCheckins.Any(item => item.Id == minId.Value)) { foreach (Checkin currentCheckin in currentCheckins) { if (currentCheckin.Id == minId.Value) { isRun = false; break; } AddCheckin(currentCheckin, checkinsContainer); counter++; } UploadedCountInvoke(counter); } else { foreach (Checkin currentCheckin in currentCheckins) { AddCheckin(currentCheckin, checkinsContainer); counter++; } UploadedCountInvoke(counter); } currentId = checkinsQuickType.Response.Pagination.MaxId.Value; } else { isRun = false; } } }
private static void FillCheckinVenue(Checkin checkin, CheckinsContainer checkinsContainer) { Venue existVenue = checkinsContainer.GetVenue(checkin.Venue); if (existVenue != null) { checkin.Venue = existVenue; } else { checkinsContainer.AddVenue(checkin.Venue); } }
private static Venue GetVenue(Venue venue, CheckinsContainer checkinsContainer) { Venue existVenue = checkinsContainer.GetVenue(venue); if (existVenue != null) { venue = existVenue; } else { checkinsContainer.AddVenue(venue); } return(venue); }
public static void InitializeCheckinsContainer(CheckinsContainer checkinsContainer, Stream stream) { if (stream == null) { return; } using (TextFieldParser csvParser = new TextFieldParser(stream)) { csvParser.SetDelimiters(","); csvParser.HasFieldsEnclosedInQuotes = true; string parametersNameLine = csvParser.ReadLine(); CheckinParserFactory checkinParserFactory = new CheckinParserFactory(parametersNameLine); while (!csvParser.EndOfData) { string[] parametersValue = csvParser.ReadFields(); FillCheckinsContainer(checkinsContainer, checkinParserFactory.GetCheckinParser(parametersValue)); } } }
public void CheckinTextMapperTest() { CheckinsContainer checkinsContainer = TestHelper.GetCheckinsContainer(); Assert.IsTrue(checkinsContainer.Checkins.Count > 0); }
public void FillToEndCheckins(CheckinsContainer checkinsContainer) { FillCheckins(checkinsContainer, checkinsContainer.Checkins.Min(item => item.Id)); }
public void FillFirstCheckins(CheckinsContainer checkinsContainer) { FillCheckins(checkinsContainer, 0, checkinsContainer.Checkins.Max(item => item.Id)); }
public void FillFullCheckins(CheckinsContainer checkinsContainer) { FillCheckins(checkinsContainer, 0); }