public NewEntryPage() { InitializeComponent(); BindingContext = new NewEntryViewModel( DependencyService.Get <INavService>(), DependencyService.Get <ILocationService>()); }
public async Task <IActionResult> NewEntry() { if (_periodManager.GetPeriod() == Guid.Empty) { ModelState.AddModelError("", Resources.Global.Common.FinancialPeriodMustBeSpecified); return(BadRequest(ModelState.GetWithErrorsKey())); } var financialPeriod = await _financialPeriodRepo.FindAsync(_periodManager.GetPeriod()); if (financialPeriod == null) { return(NotFound("FinancialPeriodNotFound")); } var newEntry = new NewEntryViewModel(); newEntry.Number = await _entryRepo.GetNextNumberAsync(); Guid currencyId = _defaultKeysOptions.Value.CurrencyId; var curency = await _currencyRepo.FindAsync(currencyId); if (curency != null) { newEntry.CurrencyId = curency.Number; newEntry.CurrencyName = curency.Name; newEntry.CurrencyValue = curency.Value; } return(Ok(newEntry)); }
public NewEntryPage() { InitializeComponent(); BindingContextChanged += Page_BindingContextChanged; BindingContext = new NewEntryViewModel(); }
public NewEntryPage() { InitializeComponent(); BindingContextChanged += Page_BindingContextChanged; BindingContext = new NewEntryViewModel(DependencyService.Get <INavService>()); }
public async Task NewEntryViewModelInitializationThrowsTest() { var viewModel = new NewEntryViewModel(TestInit.MockedGeoLocationService.Object, TestInit.MockedTripLogDataService.Object); var entry = new TripLogEntry(); await viewModel.Init(entry); }
public ActionResult NewEntry(NewEntryViewModel model) { var userId = this.authenticationProvider.CurrentUserId; this.entryService.AddEntryToLog(model.Content, model.LogId, userId); return(this.RedirectToAction("Details", "Logs", new { id = model.LogId, page = -1 })); }
public async Task NewEntryViewModelInitializationOkTest() { var viewModel = new NewEntryViewModel(TestInit.MockedGeoLocationService.Object, TestInit.MockedTripLogDataService.Object); await viewModel.Init(); Assert.AreEqual(1, viewModel.Rating); }
private static NewEntryViewModel GetEntryViewModelMock( INavService navService, ILocationService locationService, ITripLogApiDataService tripLogApiDataService) { NewEntryViewModel entryViewModelMock = new NewEntryViewModel(navService, locationService, tripLogApiDataService); return(entryViewModelMock); }
public void Setup() { var navMock = new Mock <INavService>(); var dataMock = new Mock <ITripLogDataService>(); var locMock = new Mock <ILocationService>(); locMock.Setup(x => x.GetGeoCoordinatesAsync()) .ReturnsAsync(new GeoCoords { Latitude = 123, Longitude = 321 }); _vm = new NewEntryViewModel(navMock.Object, locMock.Object, dataMock.Object); }
public void TestNewEntry_ShouldCallAuthenticationProviderCurrentUserId() { // Arrange var model = new NewEntryViewModel(); var mockedService = new Mock <IEntryService>(); var mockedAuthenticationProvider = new Mock <IAuthenticationProvider>(); var controller = new EntriesController(mockedService.Object, mockedAuthenticationProvider.Object); // Act controller.NewEntry(model); // Assert mockedAuthenticationProvider.Verify(p => p.CurrentUserId, Times.Once); }
public void SaveCommand_TitleIsEmpty_CanExecuteReturnsFalse() { // Arrange Mock <INavService> navMock = GetNavMock(); Mock <ILocationService> locMock = GetLocMock(); Mock <ITripLogApiDataService> dataMock = GetDataMock(); NewEntryViewModel evm = GetEntryViewModelMock(navMock.Object, locMock.Object, dataMock.Object); evm.Title = ""; // Act bool canSave = evm.SaveCommand.CanExecute(null); // Assert canSave.Should().BeFalse(); }
public void TestNewEntry_ShouldRedirectCorrectly(int logId) { // Arrange var model = new NewEntryViewModel { LogId = logId }; var mockedService = new Mock <IEntryService>(); var mockedAuthenticationProvider = new Mock <IAuthenticationProvider>(); var controller = new EntriesController(mockedService.Object, mockedAuthenticationProvider.Object); // Act, Assert controller .WithCallTo(c => c.NewEntry(model)) .ShouldRedirectTo((LogsController c) => c.Details(logId, It.IsAny <int>(), It.IsAny <int>())); }
public void SaveCommand_NavigatesBack() { // Arrange Mock <INavService> navMock = GetNavMock(); Mock <ILocationService> locMock = GetLocMock(); Mock <ITripLogApiDataService> dataMock = GetDataMock(); NewEntryViewModel evm = GetEntryViewModelMock(navMock.Object, locMock.Object, dataMock.Object); evm.Title = "Mock Entry"; // Act evm.SaveCommand.Execute(null); // Assert navMock.Verify(x => x.GoBack(), Times.Once); }
public void TestNewEntry_ModelStateIsNotValid_ShouldNotCallAuthenticationProviderCurrentUserId() { // Arrange var model = new NewEntryViewModel(); var mockedService = new Mock <IEntryService>(); var mockedAuthenticationProvider = new Mock <IAuthenticationProvider>(); var controller = new EntriesController(mockedService.Object, mockedAuthenticationProvider.Object); controller.ModelState.AddModelError("", ""); // Act controller.NewEntry(model); // Assert mockedAuthenticationProvider.Verify(p => p.CurrentUserId, Times.Never); }
public void Init_EntryIsSetWithGeoCoordinates() { // Arrange Mock <INavService> navMock = GetNavMock(); Mock <ILocationService> locMock = GetLocMock(); Mock <ITripLogApiDataService> dataMock = GetDataMock(); NewEntryViewModel evm = GetEntryViewModelMock(navMock.Object, locMock.Object, dataMock.Object); evm.Latitude = 0.0; evm.Longitude = 0.0; // Act evm.Init(); // Assert evm.Latitude.Should().Be(123); evm.Longitude.Should().Be(321); }
public void SaveCommand_AddsEntryToTripLogBackend() { // Arrange Mock <INavService> navMock = GetNavMock(); Mock <ILocationService> locMock = GetLocMock(); Mock <ITripLogApiDataService> dataMock = GetDataMock(); NewEntryViewModel evm = GetEntryViewModelMock(navMock.Object, locMock.Object, dataMock.Object); evm.Title = "Mock Entry"; // Act evm.SaveCommand.Execute(null); // Assert dataMock.Verify(x => x.AddEntryAsync(It.Is <TripLogEntry>(entry => entry.Title == "Mock Entry")), Times.AtLeast(1)); }
public void Setup() { _navMock = new Mock <INavService>(); _dataMock = new Mock <ITripLogDataService>(); _locMock = new Mock <ILocationService>(); _navMock.Setup(x => x.GoBack()) .Verifiable(); _dataMock.Setup(x => x.AddEntryAsync(It.Is <TripLogEntry>(entry => entry.Title == "Mock Entry"))) .Verifiable(); _locMock.Setup(x => x.GetGeoCoordinatesAsync()) .ReturnsAsync(new GeoCoords { Latitude = 123, Longitude = 321 }); _vm = new NewEntryViewModel(_navMock.Object, _locMock.Object, _dataMock.Object); }
public void Setup() { _navMock = new Mock <INavService>(); _dataMock = new Mock <ITripLogDataService>(); _lockMock = new Mock <ILocationService>(); _navMock.Setup(nv => nv.GoBack()).Verifiable(); _dataMock.Setup(d => d.AddEntryAsync(It.Is <TripLogEntry>(entry => entry.Title == "Mock Entry"))).Verifiable(); _lockMock.Setup(ls => ls.GetGeoCoordinatesAsync()) .ReturnsAsync(new GeoCoords { Latitude = 123, Longitude = 321 }); var analyticsMock = new Mock <IAnalyticsService>().Object; _vm = new NewEntryViewModel(_navMock.Object, _lockMock.Object, _dataMock.Object, analyticsMock); }
public void TestNewEntry_ShouldCallEntryServiceAddEntryToLogCorrectly(int logId, string content, string userId) { // Arrange var model = new NewEntryViewModel { LogId = logId, Content = content }; var mockedService = new Mock <IEntryService>(); var mockedAuthenticationProvider = new Mock <IAuthenticationProvider>(); mockedAuthenticationProvider.Setup(p => p.CurrentUserId).Returns(userId); var controller = new EntriesController(mockedService.Object, mockedAuthenticationProvider.Object); // Act controller.NewEntry(model); // Assert mockedService.Verify(s => s.AddEntryToLog(content, logId, userId), Times.Once); }
public EditBookEntries(WorkBook book) { InitializeComponent(); BindingContext = new NewEntryViewModel(Navigation, book); NavigationPage.SetHasNavigationBar(this, false); }