public static void InitializeListConfig <TKey>(this BaseDataSource <TKey> source, IListConfig config) where TKey : struct { if (config != null) { InitializeListConfig(source.BaseView, config); } }
public void GetTotalCount_IfSearchCriteriaIsNull_ShouldBeEqual(int count) { // arrange var dataQuery = Mock.Of <DataQuery>(); var searchService = Mock.Of <IListEntrySearchService>(); var dataSource = new BaseDataSource(searchService, dataQuery); // act var result = dataSource.GetTotalCount(); // assert result.Should().Be(count); }
public void Fetch_Result_ShouldNotBeNull() { // arrange var dataQuery = Mock.Of <DataQuery>(); var searchService = Mock.Of <IListEntrySearchService>(); var dataSource = new BaseDataSource(searchService, dataQuery); // act dataSource.Fetch(); // assert dataSource.Items.Should().NotBeNull(); }
public void GetTotalCount_IfListEntriesNotNull_ShouldBeEqual(int count) { // arrange var dataQuery = Mock.Of <DataQuery>(t => t.ListEntries == new[] { new ListEntry(), }); var searchService = new Mock <IListEntrySearchService>(); var dataSource = new BaseDataSource(searchService.Object, dataQuery); // act var result = dataSource.GetTotalCount(); // assert result.Should().Be(count); }
public void Fetch_Return_ShouldBeTrue() { // arrange var entries = new List <ListEntry> { new ListEntry() }; var dataQuery = Mock.Of <DataQuery>(t => t.ListEntries == entries.ToArray()); var searchService = Mock.Of <IListEntrySearchService>(); var dataSource = new BaseDataSource(searchService, dataQuery); // act var result = dataSource.Fetch(); // assert result.Should().Be(true); }
public void Fetch_Should_HaveCount(int count) { // arrange var entries = new List <ListEntry> { new ListEntry() }; var dataQuery = Mock.Of <DataQuery>(t => t.ListEntries == entries.ToArray()); var searchService = Mock.Of <IListEntrySearchService>(); var dataSource = new BaseDataSource(searchService, dataQuery); // act dataSource.Fetch(); // assert dataSource.Items.Should().HaveCount(count); }
public async Task Fetch_SearchService_InvokeSearch() { // arrange var listEntrySearchResult = Mock.Of <ListEntrySearchResult>(); var dataQuery = Mock.Of <DataQuery>(t => t.SearchCriteria == Mock.Of <CatalogListEntrySearchCriteria>()); var searchService = new Mock <IListEntrySearchService>(); searchService.Setup(t => t.SearchAsync(It.IsAny <CatalogListEntrySearchCriteria>())).ReturnsAsync(listEntrySearchResult); var dataSource = new BaseDataSource(searchService.Object, dataQuery); // act await dataSource.FetchAsync(); // assert searchService.Verify(t => t.SearchAsync(It.IsAny <CatalogListEntrySearchCriteria>())); }
public void addtoCalendar(BaseDataSource payload) { //build our object var startTime = (DateTime)payload["start"]; var endTime = (DateTime)payload["end"]; var desc = (string)payload["abstract"]; var location = (string)payload["room"]; var title = (string)payload["title"]; Debug.WriteLine(startTime); //add event to calendar Device.BeginInvokeOnMainThread(async() => { var answer = await DisplayAlert("Add Event to Calendar?", "Save this event for later", "Yes", "No"); if (answer) { var eventDetails = new CalendarEvent() { Start = startTime, End = endTime, Description = desc, Location = location, Name = title, ExternalID = "makerspace" }; if (Device.OS != TargetPlatform.Android) { await EventListHelper.incrementAttendeeCount(); } try { var localCalendar = await GetOrCreateMakerCalendarAsync(); await CrossCalendars.Current.AddOrUpdateEventAsync(localCalendar, eventDetails); await DisplayAlert("Done!", "Added to Calendar", "Yay!"); } catch (UnauthorizedAccessException) { await DisplayAlert("Uh-Oh", "Go to Settings and Enable Calendar Access for this App!", "Ok"); } } }); }
public void Fetch_SearchService_InvokeSearch() { // arrange var entries = new List <ListEntry> { new ListEntry() }; var listEntrySearchResult = Mock.Of <ListEntrySearchResult>(t => t.ListEntries == entries); var dataQuery = Mock.Of <DataQuery>(t => t.SearchCriteria == Mock.Of <SearchCriteria>()); var searchService = new Mock <IListEntrySearchService>(); searchService.Setup(t => t.Search(It.IsAny <SearchCriteria>())).Returns(listEntrySearchResult); var dataSource = new BaseDataSource(searchService.Object, dataQuery); // act dataSource.Fetch(); // assert searchService.Verify(t => t.Search(It.IsAny <SearchCriteria>())); }
public void GetTotalCount_IfSearchCriteriaIsNotNull_ShouldBeEqual(int count) { // arrange var dataQuery = Mock.Of <DataQuery>(t => t.SearchCriteria == new SearchCriteria()); var searchService = new Mock <IListEntrySearchService>(); var listEntrySearchResult = new ListEntrySearchResult { TotalCount = 1 }; searchService.Setup(t => t.Search(It.IsAny <SearchCriteria>())).Returns(listEntrySearchResult); var dataSource = new BaseDataSource(searchService.Object, dataQuery); // act var result = dataSource.GetTotalCount(); // assert result.Should().Be(count); }
/// <summary> /// 移动到下一个 /// </summary> /// <returns></returns> public override bool MoveNext() { if (!base.MoveNext()) { return(false); } //采用基类的流程控制。 //主获取下一个 var isBaseResultOk = BaseDataSource.MoveNext(); //必须从公共时段开始读取 var baseEpochInfo = BaseDataSource.Current; if (baseEpochInfo == null) { return(false); } //时段控制 while (isBaseResultOk) { if (!TimePeriod.Contains(baseEpochInfo.ReceiverTime)) { log.Debug(BaseDataSource.Name + ", " + baseEpochInfo.ReceiverTime + ", 在共同时段外,跳过!共同时段:" + TimePeriod); isBaseResultOk = BaseDataSource.MoveNext(); //update baseEpochInfo = BaseDataSource.Current; if (baseEpochInfo == null) { return(false); } } else { break; } } if (isBaseResultOk) { var builder = new MultiSiteEpochInfoBuilder(IsSameSatRequired); builder.Add(baseEpochInfo, true); foreach (var obsDataSource in DataSources) { if (BaseDataSource == obsDataSource) { continue; } var other = obsDataSource.Get(baseEpochInfo.ReceiverTime, 0.1);//最大分辨率 10HZ。 if (other == null) { //是否忽略 if (IsAllowMissingEpochSite) { log.Debug(obsDataSource.Name + ", 获取同步观测历元失败!" + baseEpochInfo.ReceiverTime + ", 本历元少此站。"); continue; } log.Warn(obsDataSource.Name + ", 获取同步观测历元失败!" + baseEpochInfo.ReceiverTime + ", 此历元无数据,继续尝试下一历元。"); return(MoveNext()); } builder.Add(other); } var result = builder.Build(); this.Current = result; OnProductProduced(this.Current); } return(isBaseResultOk); }