public void TestGetTrainingDays_Private() { setPrivacy(Privacy.Private); PagedResult <TrainingDayDTO> days = null; var profile1 = (ProfileDTO)profiles[1].Tag; var profile2 = (ProfileDTO)profiles[2].Tag; SessionData data = SecurityManager.CreateNewSession(profile1, ClientInformation); WorkoutDaysSearchCriteria searchCriteria = new WorkoutDaysSearchCriteria(); searchCriteria.UserId = profiles[0].Id; RunServiceMethod(delegate(InternalBodyArchitectService Service) { days = Service.GetTrainingDays(data.Token, searchCriteria, new PartialRetrievingInfo() { PageSize = PartialRetrievingInfo.AllElementsPageSize }); }); Assert.AreEqual(0, days.AllItemsCount); data = SecurityManager.CreateNewSession(profile2, ClientInformation); searchCriteria = new WorkoutDaysSearchCriteria(); searchCriteria.UserId = profiles[0].Id; RunServiceMethod(delegate(InternalBodyArchitectService Service) { days = Service.GetTrainingDays(data.Token, searchCriteria, new PartialRetrievingInfo() { PageSize = PartialRetrievingInfo.AllElementsPageSize }); }); Assert.AreEqual(0, days.AllItemsCount); }
public void GetApplicationName() { LoginData loginData = new LoginData(); loginData.ApiKey = apiKey; loginData.ApplicationVersion = "1.0.0"; loginData.LoginDateTime = DateTime.UtcNow; loginData.ApplicationLanguage = "en"; loginData.PlatformVersion = "NUnit"; insertToDatabase(loginData); trainingDays[0].Objects.ElementAt(0).LoginData = loginData; insertToDatabase(trainingDays[0]); var profile1 = (ProfileDTO)profiles[0].Tag; SessionData data = CreateNewSession(profile1, ClientInformation); WorkoutDaysSearchCriteria searchCriteria = new WorkoutDaysSearchCriteria(); searchCriteria.StartDate = searchCriteria.EndDate = trainingDays[0].TrainingDate; PagedResult <TrainingDayDTO> days = null; RunServiceMethod(delegate(InternalBodyArchitectService Service) { Service.Configuration.CurrentApiKey = key; days = Service.GetTrainingDays(data.Token, searchCriteria, new PartialRetrievingInfo() { PageSize = PartialRetrievingInfo.AllElementsPageSize }); }); Assert.AreEqual(apiKey.ApplicationName, days.Items[0].Objects.ElementAt(0).ApplicationName); }
public void RetrieveDays(DateTime startDate, DateTime endDate) { var param = new WorkoutDaysSearchCriteria(); DateTime firstDay = DateHelper.GetFirstDayOfMonth(startDate); DateTime endDay = DateHelper.GetLastDayOfMonth(endDate); param.StartDate = firstDay; param.EndDate = endDay; param.CustomerId = key.CustomerId; param.UserId = key.ProfileId; var pageInfo = new PartialRetrievingInfo(); pageInfo.PageSize = PartialRetrievingInfo.AllElementsPageSize; var res = ServiceManager.GetTrainingDays(param, pageInfo); foreach (var dto in res.Items) { days.AddOrUpdate(dto.TrainingDate, dto, (x, y) => dto); } for (int i = 0; i < endDate.MonthDifference(startDate) + 1; i++) { DateTime tempDate = startDate.AddMonths(i); if (!retrievedMonths.Contains(tempDate)) { retrievedMonths.Add(tempDate); } } }
public PagedResult <TrainingDayDTO> GetTrainingDays(Token token, WorkoutDaysSearchCriteria searchCriteria, PartialRetrievingInfo retrievingInfo) { var securityInfo = SecurityManager.EnsureAuthentication(token); TrainingDayService service = new TrainingDayService(Session, securityInfo, Configuration, PushNotificationService, EMailService); return(service.GetTrainingDays(searchCriteria, retrievingInfo)); }
public static PagedResult <TrainingDayDTO> GetTrainingDays(WorkoutDaysSearchCriteria searchCriteria, PartialRetrievingInfo pageInfo) { return(exceptionHandling(delegate { return Instance.GetTrainingDays(Token, searchCriteria, pageInfo); })); }
public WorkoutDaysSearchCriteria GetWorkoutDaysCriteria() { var criteria = new WorkoutDaysSearchCriteria(); criteria.StartDate = this.usrDateRange1.DateFrom; criteria.EndDate = this.usrDateRange1.DateTo; return(criteria); }
public async void RetrieveMonth(DateTime monthDate, TrainingDaysHolder holder) { DateTime monthTOShow = monthDate; WorkoutDaysSearchCriteria search = new WorkoutDaysSearchCriteria(); search.UserId = holder.User != null ? (Guid?)holder.User.GlobalId : null; search.CustomerId = holder.CustomerId; search.EndDate = monthDate.AddMonths(1); if (Settings.NumberOfMonthToRetrieve > 1) {//-1 because we need to subtract months monthDate = monthDate.AddMonths(-1 * (Settings.NumberOfMonthToRetrieve - 1)); } search.StartDate = monthDate; PartialRetrievingInfo pageInfo = new PartialRetrievingInfo(); pageInfo.PageSize = 0;//we want to download all entries in selected period of time var m = new ServiceManager <GetTrainingDaysCompletedEventArgs>(delegate(BodyArchitectAccessServiceClient client1, EventHandler <GetTrainingDaysCompletedEventArgs> operationCompleted) { client1.GetTrainingDaysCompleted -= operationCompleted; client1.GetTrainingDaysCompleted += operationCompleted; client1.GetTrainingDaysAsync(ApplicationState.Current.SessionData.Token, search, pageInfo); }); m.OperationCompleted += (s, a) => { if (a.Error != null) { onTrainingDaysRetrieved(monthTOShow); BAMessageBox.ShowError(ApplicationStrings.ApplicationState_ErrRetrieveTrainingDays); return; } if (a.Result != null && a.Result.Result != null) { RetrievedDays(monthDate, Settings.NumberOfMonthToRetrieve, a.Result.Result.Items, holder); onTrainingDaysRetrieved(monthTOShow); } }; if (!m.Run()) { if (ApplicationState.Current.IsOffline) { BAMessageBox.ShowError(ApplicationStrings.ErrOfflineMode); } else { BAMessageBox.ShowError(ApplicationStrings.ErrNoNetwork); } onTrainingDaysRetrieved(monthTOShow); } }
public void ForCustomer_GetTrainingDays_CustomerFromAnotherProfile_SecurityBug() { var profile1 = (ProfileDTO)profiles[0].Tag; SessionData data = CreateNewSession(profile1, ClientInformation); WorkoutDaysSearchCriteria searchCriteria = new WorkoutDaysSearchCriteria(); searchCriteria.UserId = profiles[1].GlobalId; searchCriteria.CustomerId = customers[2].GlobalId; RunServiceMethod(delegate(InternalBodyArchitectService service) { service.GetTrainingDays(data.Token, searchCriteria, new PartialRetrievingInfo() { PageSize = PartialRetrievingInfo.AllElementsPageSize }); }); }
public void TestBugWithCircuralReferences_EntryObject_TrainingDay() { var profile1 = (ProfileDTO)profiles[0].Tag; //create some training day entries var day = new TrainingDay(DateTime.Now.AddDays(-2)); day.Profile = profiles[0]; var sizeEntry = new SizeEntry(); sizeEntry.Wymiary = new Wymiary(); sizeEntry.Wymiary.Height = 213; day.AddEntry(sizeEntry); Session.Save(day); trainingDays.Add(day); day = new TrainingDay(DateTime.Now.AddDays(-1)); day.Profile = profiles[0]; sizeEntry = new SizeEntry(); sizeEntry.Wymiary = new Wymiary(); sizeEntry.Wymiary.Height = 113; day.AddEntry(sizeEntry); Session.Save(day); trainingDays.Add(day); SessionData data = SecurityManager.CreateNewSession(profile1, ClientInformation); WorkoutDaysSearchCriteria searchCriteria = new WorkoutDaysSearchCriteria(); searchCriteria.UserId = profiles[0].Id; PagedResult <TrainingDayDTO> days = null; RunServiceMethod(delegate(InternalBodyArchitectService Service) { days = Service.GetTrainingDays(data.Token, searchCriteria, new PartialRetrievingInfo() { PageSize = PartialRetrievingInfo.AllElementsPageSize }); }); Assert.AreEqual(days.Items[0], days.Items[0].Objects[0].TrainingDay); Assert.AreEqual(days.Items[1], days.Items[1].Objects[0].TrainingDay); }
public void ForCustomer_GetTrainingDays() { var profile1 = (ProfileDTO)profiles[0].Tag; SessionData data = CreateNewSession(profile1, ClientInformation); WorkoutDaysSearchCriteria searchCriteria = new WorkoutDaysSearchCriteria(); searchCriteria.UserId = profiles[0].GlobalId; searchCriteria.CustomerId = customers[0].GlobalId; PagedResult <TrainingDayDTO> days = null; RunServiceMethod(delegate(InternalBodyArchitectService Service) { days = Service.GetTrainingDays(data.Token, searchCriteria, new PartialRetrievingInfo() { PageSize = PartialRetrievingInfo.AllElementsPageSize }); }); Assert.AreEqual(2, days.AllItemsCount); Assert.AreEqual(customersTrainingDays[0].GlobalId, days.Items[0].GlobalId); Assert.AreEqual(customersTrainingDays[1].GlobalId, days.Items[1].GlobalId); }
private void fillImplementation(DateTime activeMonth, UserDTO user, OperationContext context) { try { DateTime startDate = DateHelper.GetFirstDayOfMonth(activeMonth); DateTime endDate = DateHelper.GetLastDayOfMonth(activeMonth); WorkoutDaysSearchCriteria searchCriteria = new WorkoutDaysSearchCriteria(); searchCriteria.StartDate = startDate; searchCriteria.EndDate = endDate; searchCriteria.UserId = user.Id; var pageInfo = new PartialRetrievingInfo(); pageInfo.PageSize = PartialRetrievingInfo.AllElementsPageSize; var days = ServiceManager.GetTrainingDays(searchCriteria, pageInfo); if (context != null && context.CancellatioToken.IsCancellationRequested) { return; } if (ParentWindow != null && monthCalendar1.ActiveMonth.Month == activeMonth.Month && monthCalendar1.ActiveMonth.Year == activeMonth.Year) { dayInfoFiller.PrepareData(); ParentWindow.SynchronizationContext.Send(delegate { monthCalendar1.ResetDateInfo(); //DateTime start = DateTime.Now; foreach (var day in days.Items) { addTrainingDayInfo(day); } }, context); } } finally { isFilled = true; } }
public void TestBugWithCircuralReferences_StrengthTraining() { var profile1 = (ProfileDTO)profiles[0].Tag; //create some training day entries var day = new TrainingDay(DateTime.Now.AddDays(-2)); day.Profile = profiles[0]; var sizeEntry = new StrengthTrainingEntry(); day.AddEntry(sizeEntry); var strengthItem = new StrengthTrainingItem(); sizeEntry.AddEntry(strengthItem); var set = new Serie(); strengthItem.AddSerie(set); set = new Serie(); strengthItem.AddSerie(set); strengthItem = new StrengthTrainingItem(); sizeEntry.AddEntry(strengthItem); set = new Serie(); strengthItem.AddSerie(set); set = new Serie(); strengthItem.AddSerie(set); Session.Save(day); trainingDays.Add(day); day = new TrainingDay(DateTime.Now.AddDays(-1)); day.Profile = profiles[0]; sizeEntry = new StrengthTrainingEntry(); day.AddEntry(sizeEntry); strengthItem = new StrengthTrainingItem(); sizeEntry.AddEntry(strengthItem); set = new Serie(); strengthItem.AddSerie(set); set = new Serie(); strengthItem.AddSerie(set); strengthItem = new StrengthTrainingItem(); sizeEntry.AddEntry(strengthItem); set = new Serie(); strengthItem.AddSerie(set); set = new Serie(); strengthItem.AddSerie(set); Session.Save(day); trainingDays.Add(day); SessionData data = SecurityManager.CreateNewSession(profile1, ClientInformation); WorkoutDaysSearchCriteria searchCriteria = new WorkoutDaysSearchCriteria(); searchCriteria.UserId = profiles[0].Id; PagedResult <TrainingDayDTO> days = null; RunServiceMethod(delegate(InternalBodyArchitectService Service) { days = Service.GetTrainingDays(data.Token, searchCriteria, new PartialRetrievingInfo() { PageSize = PartialRetrievingInfo.AllElementsPageSize }); }); foreach (var item in ((StrengthTrainingEntryDTO)days.Items[5].Objects[0]).Entries) { Assert.AreEqual(days.Items[5].Objects[0], item.StrengthTrainingEntry); foreach (var tSet in item.Series) { Assert.AreEqual(item, tSet.StrengthTrainingItem); } } foreach (var item in ((StrengthTrainingEntryDTO)days.Items[6].Objects[0]).Entries) { Assert.AreEqual(days.Items[6].Objects[0], item.StrengthTrainingEntry); foreach (var tSet in item.Series) { Assert.AreEqual(item, tSet.StrengthTrainingItem); } } }
public PagedResult <TrainingDayDTO> GetTrainingDays(Token token, WorkoutDaysSearchCriteria searchCriteria, PartialRetrievingInfo retrievingInfo) { throw new NotImplementedException(); }
public async Task RetrieveMonthAsync(DateTime monthDate, TrainingDaysHolder holder) { DateTime monthTOShow = monthDate; WorkoutDaysSearchCriteria search = new WorkoutDaysSearchCriteria(); search.UserId = holder.User != null ? (Guid?)holder.User.GlobalId : null; search.CustomerId = holder.CustomerId; search.EndDate = monthDate.AddMonths(1); if (Settings.NumberOfMonthToRetrieve > 1) {//-1 because we need to subtract months monthDate = monthDate.AddMonths(-1 * (Settings.NumberOfMonthToRetrieve - 1)); } search.StartDate = monthDate; PartialRetrievingInfo pageInfo = new PartialRetrievingInfo(); pageInfo.PageSize = 0;//we want to download all entries in selected period of time try { var result = await BAService.GetTrainingDaysAsync(search, pageInfo); RetrievedDays(monthDate, Settings.NumberOfMonthToRetrieve, result.Items, holder); } catch (NetworkException) { if (ApplicationState.Current.IsOffline) { BAMessageBox.ShowWarning(ApplicationStrings.EntryObjectPageBase_SavedLocallyOnly); } else { BAMessageBox.ShowError(ApplicationStrings.ErrNoNetwork); } } catch (Exception) { BAMessageBox.ShowError(ApplicationStrings.ApplicationState_ErrRetrieveTrainingDays); } //var m = new ServiceManager<GetTrainingDaysCompletedEventArgs>(delegate(BodyArchitectAccessServiceClient client1, EventHandler<GetTrainingDaysCompletedEventArgs> operationCompleted) //{ // client1.GetTrainingDaysCompleted -= operationCompleted; // client1.GetTrainingDaysCompleted += operationCompleted; // client1.GetTrainingDaysAsync(ApplicationState.Current.SessionData.Token, search, pageInfo); //}); //m.OperationCompleted += (s, a) => // { // if (a.Error != null) // { // onTrainingDaysRetrieved(monthTOShow); // BAMessageBox.ShowError(ApplicationStrings.ApplicationState_ErrRetrieveTrainingDays); // return; // } // if (a.Result != null && a.Result.Result!=null ) // { // RetrievedDays(monthDate, Settings.NumberOfMonthToRetrieve, a.Result.Result.Items, holder); // onTrainingDaysRetrieved(monthTOShow); // } //}; //if(!m.Run()) //{ // if(ApplicationState.Current.IsOffline) // { // BAMessageBox.ShowError(ApplicationStrings.ErrOfflineMode); // } // else // { // BAMessageBox.ShowError(ApplicationStrings.ErrNoNetwork); // } // onTrainingDaysRetrieved(monthTOShow); //} }
public PagedResult <TrainingDayDTO> GetTrainingDays(Token token, WorkoutDaysSearchCriteria searchCriteria, PartialRetrievingInfo retrievingInfo) { return(exceptionHandling(token, () => InternalService.GetTrainingDays(token, searchCriteria, retrievingInfo))); }
static async public Task <PagedResultOfTrainingDayDTO5oAtqRlh> GetTrainingDaysAsync(WorkoutDaysSearchCriteria search, PartialRetrievingInfo pageInfo) { var test = exceptionHandling((client) => { return(Task <PagedResultOfTrainingDayDTO5oAtqRlh> .Factory.FromAsync(client.BeginGetTrainingDays, client.EndGetTrainingDays, ApplicationState.Current.SessionData.Token, search, pageInfo, null)); }); return(await test); }