public async Task StatisticsHomePage_PackageVersions_ValidateReportStructureAndAvailability() { JArray report = new JArray { new JObject { { "PackageId", "A" }, { "PackageVersion", "1.0" }, { "Downloads", 22 }, }, new JObject { { "PackageId", "A" }, { "PackageVersion", "1.1" }, { "Downloads", 20 }, }, new JObject { { "PackageId", "B" }, { "PackageVersion", "1.0" }, { "Downloads", 64 }, } }; var fakePackageVersionReport = report.ToString(); var fakeReportService = new Mock <IReportService>(); var updatedUtc1 = new DateTime(2002, 01, 01, 10, 20, 30); var updatedUtc2 = new DateTime(2001, 01, 01, 10, 20, 30); fakeReportService.Setup(x => x.Load("recentpopularitydetail.json")).Returns(Task.FromResult(new StatisticsReport(fakePackageVersionReport, updatedUtc1))); fakeReportService.Setup(x => x.Load("recentcommunitypopularitydetail.json")).Returns(Task.FromResult(new StatisticsReport(fakePackageVersionReport, updatedUtc2))); var controller = new StatisticsController(new JsonStatisticsService(fakeReportService.Object)); var model = (StatisticsPackagesViewModel)((ViewResult)await controller.PackageVersions()).Model; long sum = 0; foreach (var item in model.DownloadPackageVersionsAll) { sum += item.Downloads; } Assert.Equal(106, sum); Assert.True(model.LastUpdatedUtc.HasValue); Assert.Equal(updatedUtc1, model.LastUpdatedUtc.Value); }
public async void StatisticsHomePage_PackageVersions_ValidateReportStructureAndAvailability() { JArray report = new JArray { new JObject { { "PackageId", "A" }, { "PackageVersion", "1.0" }, { "Downloads", 22 }, }, new JObject { { "PackageId", "A" }, { "PackageVersion", "1.1" }, { "Downloads", 20 }, }, new JObject { { "PackageId", "B" }, { "PackageVersion", "1.0" }, { "Downloads", 64 }, } }; var fakePackageVersionReport = report.ToString(); var fakeReportService = new Mock <IReportService>(); fakeReportService.Setup(x => x.Load("RecentPopularityDetail.json")).Returns(Task.FromResult(fakePackageVersionReport)); var controller = new StatisticsController(new JsonStatisticsService(fakeReportService.Object)); var model = (StatisticsPackagesViewModel)((ViewResult)await controller.PackageVersions()).Model; int sum = 0; foreach (var item in model.DownloadPackageVersionsAll) { sum += item.Downloads; } Assert.Equal <int>(106, sum); }
public async void StatisticsHomePage_PackageVersions_ValidateReportStructureAndAvailability() { var fakePackageVersionReport = "[{\"PackageId\":\"A\",\"PackageVersion\":\"1.0\",\"Downloads\":22},{\"PackageId\":\"A\",\"PackageVersion\":\"1.1\",\"Downloads\":20},{\"PackageId\":\"B\",\"PackageVersion\":\"1.0\",\"Downloads\":64}]"; var fakeReportService = new Mock<IReportService>(); fakeReportService.Setup(x => x.Load("RecentPopularityDetail.json")).Returns(Task.FromResult(fakePackageVersionReport)); var controller = new StatisticsController(new JsonStatisticsService(fakeReportService.Object)); var model = (StatisticsPackagesViewModel)((ViewResult) await controller.PackageVersions()).Model; int sum = 0; foreach (var item in model.DownloadPackageVersionsAll) { sum += item.Downloads; } Assert.Equal<int>(106, sum); }
public async void StatisticsHomePage_PackageVersions_ValidateReportStructureAndAvailability() { JArray report = new JArray { new JObject { { "PackageId", "A" }, { "PackageVersion", "1.0" }, { "Downloads", 22 }, }, new JObject { { "PackageId", "A" }, { "PackageVersion", "1.1" }, { "Downloads", 20 }, }, new JObject { { "PackageId", "B" }, { "PackageVersion", "1.0" }, { "Downloads", 64 }, } }; var fakePackageVersionReport = report.ToString(); var fakeReportService = new Mock<IReportService>(); var updatedUtc = new DateTime(2001, 01, 01, 10, 20, 30); fakeReportService.Setup(x => x.Load("RecentPopularityDetail.json")).Returns(Task.FromResult(new StatisticsReport(fakePackageVersionReport, updatedUtc))); var controller = new StatisticsController(new JsonStatisticsService(fakeReportService.Object)); var model = (StatisticsPackagesViewModel)((ViewResult) await controller.PackageVersions()).Model; int sum = 0; foreach (var item in model.DownloadPackageVersionsAll) { sum += item.Downloads; } Assert.Equal(106, sum); Assert.True(model.LastUpdatedUtc.HasValue); Assert.Equal(updatedUtc, model.LastUpdatedUtc.Value); }