public async Task ThrowsExeptionWhenLogbookIsNull()
        {
            var options = TestUtils.GetOptions(nameof(ThrowsExeptionWhenLogbookIsNull));

            using (var arrangeContext = new ManagerLogbookContext(options))
            {
                await arrangeContext.Logbooks.AddAsync(TestHelpersLogbook.TestLogbook01());

                await arrangeContext.BusinessUnits.AddAsync(TestHelpersLogbook.TestBusinessUnit01());

                await arrangeContext.Notes.AddAsync(TestHelpersLogbook.TestNote01());

                await arrangeContext.SaveChangesAsync();
            }

            using (var assertContext = new ManagerLogbookContext(options))
            {
                var mockedBusinessValidator = new Mock <IBusinessValidator>();
                var sut = new LogbookService(assertContext, mockedBusinessValidator.Object);

                var ex = await Assert.ThrowsExceptionAsync <NotFoundException>(() => sut.UpdateLogbookAsync(10, "name", 1, "picture"));

                Assert.AreEqual(ex.Message, string.Format(ServicesConstants.LogbookNotFound));
            }
        }
Exemplo n.º 2
0
        public async Task ThrowsExeptionWhenUserWasNotFound()
        {
            var options = TestUtils.GetOptions(nameof(Succeed_ReturnAllLogbooksByUser));

            using (var arrangeContext = new ManagerLogbookContext(options))
            {
                await arrangeContext.BusinessUnits.AddAsync(TestHelpersLogbook.TestBusinessUnit01());

                await arrangeContext.Notes.AddAsync(TestHelpersLogbook.TestNote02());

                await arrangeContext.Users.AddAsync(TestHelpersLogbook.TestUser01());

                await arrangeContext.Logbooks.AddAsync(TestHelpersLogbook.TestLogbook01());

                await arrangeContext.Logbooks.AddAsync(TestHelpersLogbook.TestLogbook03());

                await arrangeContext.UsersLogbooks.AddAsync(TestHelpersLogbook.TestUsersLogbooks01());

                await arrangeContext.UsersLogbooks.AddAsync(TestHelpersLogbook.TestUsersLogbooks03());

                await arrangeContext.SaveChangesAsync();
            }

            using (var assertContext = new ManagerLogbookContext(options))
            {
                var mockedBusinessValidator = new Mock <IBusinessValidator>();
                var sut = new LogbookService(assertContext, mockedBusinessValidator.Object);

                var ex = await Assert.ThrowsExceptionAsync <NotFoundException>(() => sut.GetAllLogbooksByUserAsync("2"));

                Assert.AreEqual(ex.Message, string.Format(ServicesConstants.UserNotFound));
            }
        }
        public async Task Succeed_ReturnLogbookWhenParametersAreValid()
        {
            var options = TestUtils.GetOptions(nameof(Succeed_ReturnLogbookWhenParametersAreValid));

            using (var arrangeContext = new ManagerLogbookContext(options))
            {
                await arrangeContext.Logbooks.AddAsync(TestHelpersLogbook.TestLogbook01());

                await arrangeContext.BusinessUnits.AddAsync(TestHelpersLogbook.TestBusinessUnit01());

                await arrangeContext.Notes.AddAsync(TestHelpersLogbook.TestNote01());

                await arrangeContext.SaveChangesAsync();
            }

            using (var assertContext = new ManagerLogbookContext(options))
            {
                var mockedBusinessValidator = new Mock <IBusinessValidator>();
                var sut = new LogbookService(assertContext, mockedBusinessValidator.Object);

                var logbookDTO = await sut.UpdateLogbookAsync(1, "Hotel", 1, "picture");

                Assert.AreEqual(logbookDTO.Name, "Hotel");
                Assert.AreEqual(logbookDTO.Picture, "picture");
            }
        }
        public async Task ThrowsExeptionWhenManagerIsAlreadyAddedToLogbook()
        {
            var options = TestUtils.GetOptions(nameof(ThrowsExeptionWhenManagerIsAlreadyAddedToLogbook));

            using (var arrangeContext = new ManagerLogbookContext(options))
            {
                await arrangeContext.Users.AddAsync(TestHelpersLogbook.TestUser01());

                await arrangeContext.Logbooks.AddAsync(TestHelpersLogbook.TestLogbook01());

                await arrangeContext.UsersLogbooks.AddAsync(TestHelpersLogbook.TestUsersLogbooks01());

                await arrangeContext.SaveChangesAsync();
            }

            using (var assertContext = new ManagerLogbookContext(options))
            {
                var mockedBusinessValidator = new Mock <IBusinessValidator>();
                var sut = new LogbookService(assertContext, mockedBusinessValidator.Object);

                var ex = await Assert.ThrowsExceptionAsync <ArgumentException>(() => sut.AddManagerToLogbookAsync(TestHelpersLogbook.TestUser01().Id, 1));

                Assert.AreEqual(ex.Message, string.Format(ServicesConstants.ManagerIsAlreadyInLogbook, TestHelpersLogbook.TestUser01().UserName, TestHelpersLogbook.TestLogbook01().Name));
            }
        }
        public async Task Succeed_ReturnLogbookWhenManagerWasRemoved()
        {
            var options = TestUtils.GetOptions(nameof(Succeed_ReturnLogbookWhenManagerWasRemoved));

            using (var arrangeContext = new ManagerLogbookContext(options))
            {
                await arrangeContext.Users.AddAsync(TestHelpersLogbook.TestUser01());

                await arrangeContext.Users.AddAsync(TestHelpersLogbook.TestUser02());

                await arrangeContext.Logbooks.AddAsync(TestHelpersLogbook.TestLogbook04());

                await arrangeContext.UsersLogbooks.AddAsync(TestHelpersLogbook.TestUsersLogbooks04());

                await arrangeContext.SaveChangesAsync();
            }

            using (var assertContext = new ManagerLogbookContext(options))
            {
                var mockedBusinessValidator = new Mock <IBusinessValidator>();
                var sut = new LogbookService(assertContext, mockedBusinessValidator.Object);

                await sut.RemoveManagerFromLogbookAsync(TestHelpersLogbook.TestUser01().Id, TestHelpersLogbook.TestLogbook04().Id);

                Assert.AreEqual(assertContext.UsersLogbooks.Select(x => x.LogbookId).Count(), 0);
            }
        }
Exemplo n.º 6
0
        public async Task LBRepositoryTest()
        {
            ImportDataTest import = new ImportDataTest();

            import.InitContext();

            try
            {
                _context          = import._context;
                logbookRepository = new LogbookRepository(_context);

                logbookService = new LogbookService(logbookRepository, null, null);
                IEnumerable <FlightRecord> fr = await logbookService.GetRecordByAircrafAsync(12, 8);

                foreach (var f in fr)
                {
                    System.Diagnostics.Debug.WriteLine(f.ToString());
                }

                LogBook logBook = await logbookRepository.GetByIdWithItemsAsync(1);

                LogBook logBook1 = await logbookRepository.GetFlightRecordsByPilotIdAsync(12);

                LogBook a = await logbookService.GetLogbookByPilotAsync(12);
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine(ex.Message);
            }
        }
        public async Task ThrowsExeptionWhenManagerWasNotFoundByRemoveManagerFromLogbook()
        {
            var options = TestUtils.GetOptions(nameof(ThrowsExeptionWhenManagerWasNotFoundByRemoveManagerFromLogbook));

            using (var arrangeContext = new ManagerLogbookContext(options))
            {
                await arrangeContext.Users.AddAsync(TestHelpersLogbook.TestUser01());

                await arrangeContext.Logbooks.AddAsync(TestHelpersLogbook.TestLogbook01());

                await arrangeContext.UsersLogbooks.AddAsync(TestHelpersLogbook.TestUsersLogbooks01());

                await arrangeContext.SaveChangesAsync();
            }

            using (var assertContext = new ManagerLogbookContext(options))
            {
                var mockedBusinessValidator = new Mock <IBusinessValidator>();
                var sut = new LogbookService(assertContext, mockedBusinessValidator.Object);

                var ex = await Assert.ThrowsExceptionAsync <NotFoundException>(() => sut.RemoveManagerFromLogbookAsync("2", TestHelpersLogbook.TestLogbook01().Id));

                Assert.AreEqual(ex.Message, string.Format(ServicesConstants.UserNotFound));
            }
        }
        public async Task ThrowsExeptionWhenBusinessUnitWasNotFound()
        {
            var options = TestUtils.GetOptions(nameof(ThrowsExeptionWhenBusinessUnitWasNotFound));

            using (var arrangeContext = new ManagerLogbookContext(options))
            {
                await arrangeContext.BusinessUnits.AddAsync(TestHelpersLogbook.TestBusinessUnit01());

                await arrangeContext.BusinessUnitCategories.AddAsync(TestHelpersLogbook.TestBusinessUnitCategory01());

                await arrangeContext.Towns.AddAsync(TestHelpersLogbook.TestTown01());

                await arrangeContext.Logbooks.AddAsync(TestHelpersLogbook.TestLogbook01());

                await arrangeContext.SaveChangesAsync();
            }

            using (var assertContext = new ManagerLogbookContext(options))
            {
                var mockedBusinessValidator = new Mock <IBusinessValidator>();
                var sut = new LogbookService(assertContext, mockedBusinessValidator.Object);

                var ex = await Assert.ThrowsExceptionAsync <NotFoundException>(() => sut.AddLogbookToBusinessUnitAsync(TestHelpersLogbook.TestLogbook01().Id, 2));

                Assert.AreEqual(ex.Message, string.Format(ServicesConstants.BusinessUnitNotFound));
            }
        }
        public async Task Succeed_ReturnLogbookWhenWasAddedToBusinessUnitAsync()
        {
            var options = TestUtils.GetOptions(nameof(Succeed_ReturnLogbookWhenWasAddedToBusinessUnitAsync));

            using (var arrangeContext = new ManagerLogbookContext(options))
            {
                await arrangeContext.BusinessUnits.AddAsync(TestHelpersLogbook.TestBusinessUnit01());

                await arrangeContext.BusinessUnitCategories.AddAsync(TestHelpersLogbook.TestBusinessUnitCategory01());

                await arrangeContext.Towns.AddAsync(TestHelpersLogbook.TestTown01());

                await arrangeContext.Logbooks.AddAsync(TestHelpersLogbook.TestLogbook01());

                await arrangeContext.SaveChangesAsync();
            }

            using (var assertContext = new ManagerLogbookContext(options))
            {
                var mockedBusinessValidator = new Mock <IBusinessValidator>();
                var sut = new LogbookService(assertContext, mockedBusinessValidator.Object);

                await sut.AddLogbookToBusinessUnitAsync(TestHelpersLogbook.TestLogbook01().Id, TestHelpersLogbook.TestBusinessUnit01().Id);

                await assertContext.SaveChangesAsync();

                Assert.AreEqual(TestHelpersLogbook.TestLogbook01().BusinessUnitId, TestHelpersLogbook.TestBusinessUnit01().Id);
            }
        }
Exemplo n.º 10
0
        public async Task Succeed_ReturnGetLogbookById()
        {
            var options = TestUtils.GetOptions(nameof(Succeed_ReturnGetLogbookById));

            using (var arrangeContext = new ManagerLogbookContext(options))
            {
                await arrangeContext.Logbooks.AddAsync(TestHelpersLogbook.TestLogbook01());

                await arrangeContext.BusinessUnits.AddAsync(TestHelpersLogbook.TestBusinessUnit01());

                await arrangeContext.Notes.AddAsync(TestHelpersLogbook.TestNote01());

                await arrangeContext.SaveChangesAsync();
            }

            using (var assertContext = new ManagerLogbookContext(options))
            {
                var mockBusinessValidator = new Mock <IBusinessValidator>();

                var sut = new LogbookService(assertContext, mockBusinessValidator.Object);

                var getLogbookById = await sut.GetLogbookById(1);

                Assert.AreEqual(getLogbookById.Id, 1);
            }
        }
Exemplo n.º 11
0
        public Logbook(DateTime day)
        {
            LogbookService = new LogbookService();
            InitializeComponent();

            var binding   = new LogbookBinding();
            var listItems = LogbookService.GetLogbookItems().Where(x => x.GlucoseMeasurement.BaseTime.Date == day.Date).ToObservableCollection();

            if (!listItems.Any())
            {
                LogbookItems.IsVisible = false;
                NoItems.IsVisible      = true;
            }
            else
            {
                LogbookItems.IsVisible = true;
                NoItems.IsVisible      = false;
                foreach (var item in listItems)
                {
                    binding.LogbookListItems.Add(new LogbookItemViewModel(item));
                }
            }

            BindingContext = binding;

            LogbookItems.ItemTemplate = new DataTemplate(typeof(ViewCells.LogbookItemCell));
            Title = "Logbook";


            //AddMeasurement.Clicked += AddMeasurement_Clicked;
        }
Exemplo n.º 12
0
        public async Task Succeed_ReturnAllLogbooksByUser()
        {
            var options = TestUtils.GetOptions(nameof(Succeed_ReturnAllLogbooksByUser));

            using (var arrangeContext = new ManagerLogbookContext(options))
            {
                await arrangeContext.BusinessUnits.AddAsync(TestHelpersLogbook.TestBusinessUnit01());

                await arrangeContext.Notes.AddAsync(TestHelpersLogbook.TestNote02());

                await arrangeContext.Users.AddAsync(TestHelpersLogbook.TestUser01());

                await arrangeContext.Logbooks.AddAsync(TestHelpersLogbook.TestLogbook01());

                await arrangeContext.Logbooks.AddAsync(TestHelpersLogbook.TestLogbook03());

                await arrangeContext.UsersLogbooks.AddAsync(TestHelpersLogbook.TestUsersLogbooks01());

                await arrangeContext.UsersLogbooks.AddAsync(TestHelpersLogbook.TestUsersLogbooks03());

                await arrangeContext.SaveChangesAsync();
            }

            using (var assertContext = new ManagerLogbookContext(options))
            {
                var mockedBusinessValidator = new Mock <IBusinessValidator>();
                var sut = new LogbookService(assertContext, mockedBusinessValidator.Object);

                var allLogbooksByUser = await sut.GetAllLogbooksByUserAsync(TestHelpersLogbook.TestUser01().Id);

                Assert.AreEqual(allLogbooksByUser.Count, 2);
            }
        }
 public AutoLogEntryViewModel(
     NavigateBackCommand navigateBackCommand, IEventAggregator eventAggregator,
     LogbookService logbookService)
 {
     _navigateBackCommand = navigateBackCommand;
     _eventAggregator     = eventAggregator;
     _logbookService      = logbookService;
 }
Exemplo n.º 14
0
 public ManualEntryViewModel(
     NavigateBackCommand navigateBackCommand, IEventAggregator eventAggregator,
     LogbookService logbookService)
 {
     _navigateBackCommand = navigateBackCommand;
     _eventAggregator     = eventAggregator;
     _logbookService      = logbookService;
     _eventAggregator.GetEvent <PubSubEvent <LocationSelectedEvent> >().Subscribe(OnMapLocationChanged);
 }
Exemplo n.º 15
0
        public async Task ThrowsExeptionWhenNameIsNull()
        {
            var options = TestUtils.GetOptions(nameof(ThrowsExeptionWhenNameIsNull));

            using (var assertContext = new ManagerLogbookContext(options))
            {
                var mockedBusinessValidator = new Mock <IBusinessValidator>();
                var sut = new LogbookService(assertContext, mockedBusinessValidator.Object);

                var ex = await Assert.ThrowsExceptionAsync <ArgumentException>(() => sut.CreateLogbookAsync(null, 1, "picture"));

                Assert.AreEqual(ex.Message, string.Format(ServicesConstants.NameCanNotBeNullOrEmpty));
            }
        }
Exemplo n.º 16
0
        public Dashboard()
        {
            InitializeComponent();

            var logbookService = new LogbookService();
            var model          = new DashboardView();

            this.DeleteDatabase.Clicked += (sender, args) =>
            {
                var db = new DatabaseContext().WipeDb(true);
            };

            BindingContext = model;
        }
Exemplo n.º 17
0
        public LogbookDates()
        {
            LogbookService = new LogbookService();
            InitializeComponent();

            var binding   = new LogbookBinding();
            var listItems = LogbookService.GetLogbookItems();
            var dates     = listItems.Select(x => x.GlucoseMeasurement.BaseTime).DistinctBy(x => x.ToShortDateString()).OrderByDescending(x => x.Ticks).ToObservableCollection();

            if (!listItems.Any())
            {
                LogbookItems.IsVisible = false;
                NoItems.IsVisible      = true;
            }
            else
            {
                LogbookItems.IsVisible = true;
                NoItems.IsVisible      = false;

                foreach (var item in dates)
                {
                    var num = listItems.Count(x => x.GlucoseMeasurement.BaseTime.ToShortDateString() == item.ToShortDateString());

                    var stars = (int)Math.Round((((decimal)num / (decimal)Session.User.NumberOfMeasurements) * 3));

                    binding.LogbookListItems.Add(new LogbookDateViewModel(item, stars));
                }

                LogbookItems.ItemTapped += (sender, e) =>
                {
                    var item = ((LogbookDateViewModel)e.Item);

                    Navigation.PushAsync(new Logbook(item.Date)
                    {
                        Title = item.DateString
                    });
                };
            }

            BindingContext = binding;

            LogbookItems.ItemTemplate = new DataTemplate(typeof(ViewCells.LogbookDateCell));
            Title = "Logbook";


            //AddMeasurement.Clicked += AddMeasurement_Clicked;
        }
Exemplo n.º 18
0
        private void Submit_Clicked(object sender, EventArgs e)
        {
            try
            {
                var logbookService = new LogbookService();
                var item           = (LogbookItem)BindingContext;
                //item.FeelingName = ((Feeling)Rating.SelectedItem).Name;


                //logbookService.AddLogbookItem(item);
                Application.Current.MainPage = new Base();
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 19
0
        public async Task SucceedCreateLogbook()
        {
            var options = TestUtils.GetOptions(nameof(SucceedCreateLogbook));

            using (var arrangeContext = new ManagerLogbookContext(options))
            {
                await arrangeContext.BusinessUnits.AddAsync(TestHelpersLogbook.TestBusinessUnit01());

                await arrangeContext.Notes.AddAsync(TestHelpersLogbook.TestNote01());

                await arrangeContext.SaveChangesAsync();
            }

            using (var assertContext = new ManagerLogbookContext(options))
            {
                var mockedBusinessValidator = new Mock <IBusinessValidator>();
                var sut = new LogbookService(assertContext, mockedBusinessValidator.Object);

                var logbookDTO = await sut.CreateLogbookAsync("LogbookName", 1, "picture");

                mockedBusinessValidator.Verify(x => x.IsNameInRange("LogbookName"), Times.Exactly(1));
                Assert.AreEqual(logbookDTO.Name, "LogbookName");
            }
        }