static async Task <MobileReferringSiteModel> setFavIcon(ReferringSiteModel referringSiteModel) { if (referringSiteModel.ReferrerUri != null) { var favIcon = await FavIconService.GetFavIconImageSource(referringSiteModel.ReferrerUri.ToString()).ConfigureAwait(false); return(new MobileReferringSiteModel(referringSiteModel, favIcon)); } return(new MobileReferringSiteModel(referringSiteModel, null)); }
public static MobileReferringSiteModel ToReferringSitesModel(MobileReferringSitesDatabaseModel referringSitesDatabaseModel) { var referringSiteModel = new ReferringSiteModel(referringSitesDatabaseModel.TotalCount, referringSitesDatabaseModel.TotalUniqueCount, referringSitesDatabaseModel.Referrer, referringSitesDatabaseModel.DownloadedAt); try { return(new MobileReferringSiteModel(referringSiteModel, string.IsNullOrWhiteSpace(referringSitesDatabaseModel.FavIconImageUrl) ? null : ImageSource.FromUri(new Uri(referringSitesDatabaseModel.FavIconImageUrl)))); } catch (UriFormatException) { return(new MobileReferringSiteModel(referringSiteModel, ImageSource.FromFile(referringSitesDatabaseModel.FavIconImageUrl))); } }
public async Task GetMobileReferringSiteTest_InvalidRepo() { // Arrange MobileReferringSiteModel?mobileReferringSiteModel = null; var referringSite = new ReferringSiteModel(0, 0, string.Empty); var gitHubApiRepositoriesService = ServiceCollection.ServiceProvider.GetRequiredService <GitHubApiRepositoriesService>(); // Act await foreach (var mobileReferringSite in gitHubApiRepositoriesService.GetMobileReferringSites(new List <ReferringSiteModel> { referringSite }, string.Empty, CancellationToken.None)) { mobileReferringSiteModel = mobileReferringSite; } Assert.AreEqual("DefaultReferringSiteImage", FavIconService.DefaultFavIcon); Assert.IsInstanceOf <FileImageSource>(mobileReferringSiteModel?.FavIcon); Assert.AreEqual(FavIconService.DefaultFavIcon, ((FileImageSource?)mobileReferringSiteModel?.FavIcon)?.File); }
public static MobileReferringSiteModel ToReferringSitesModel(MobileReferringSitesDatabaseModel referringSitesDatabaseModel) { var referringSiteModel = new ReferringSiteModel(referringSitesDatabaseModel.TotalCount, referringSitesDatabaseModel.TotalUniqueCount, referringSitesDatabaseModel.Referrer, referringSitesDatabaseModel.DownloadedAt); return(new MobileReferringSiteModel(referringSiteModel, referringSitesDatabaseModel.FavIconImageUrl is null ? null : ImageSource.FromUri(new Uri(referringSitesDatabaseModel.FavIconImageUrl)))); }
public MobileReferringSiteModel(ReferringSiteModel referringSiteModel, ImageSource?favIcon) : base(referringSiteModel.TotalCount, referringSiteModel.TotalUniqueCount, referringSiteModel.Referrer) { FavIcon = favIcon; }