public void TestAtPropertyChangedOnBogføringslinjeModelEventHandlerRejserPropertyChangedOnBogføringslinjeModelUpdate(string propertyNameToRaise, string expectPropertyName) { var fixture = new Fixture(); fixture.Customize <IRegnskabViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IRegnskabViewModel>())); fixture.Customize <IBogføringslinjeModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IBogføringslinjeModel>())); var bogføringslinjeModelMock = fixture.Create <IBogføringslinjeModel>(); var bogføringslinjeViewModel = new BogføringslinjeViewModel(fixture.Create <IRegnskabViewModel>(), bogføringslinjeModelMock); Assert.That(bogføringslinjeViewModel, Is.Not.Null); var eventCalled = false; bogføringslinjeViewModel.PropertyChanged += (s, e) => { Assert.That(s, Is.Not.Null); Assert.That(e, Is.Not.Null); Assert.That(e.PropertyName, Is.Not.Null); Assert.That(e.PropertyName, Is.Not.Empty); if (string.Compare(e.PropertyName, expectPropertyName, StringComparison.Ordinal) == 0) { eventCalled = true; } }; Assert.That(eventCalled, Is.False); bogføringslinjeModelMock.Raise(m => m.PropertyChanged += null, bogføringslinjeModelMock, new PropertyChangedEventArgs(propertyNameToRaise)); Assert.That(eventCalled, Is.True); }
public void TestAtBogførtAsTextGetterReturnererBogførtSomText(decimal bogført) { var fixture = new Fixture(); fixture.Customize <IRegnskabViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IRegnskabViewModel>())); fixture.Customize <IBogføringslinjeModel>(e => e.FromFactory(() => { var mock = MockRepository.GenerateMock <IBogføringslinjeModel>(); mock.Expect(m => m.Bogført) .Return(bogført) .Repeat.Any(); return(mock); })); var regnskabViewModelMock = fixture.Create <IRegnskabViewModel>(); var bogføringslinjeModelMock = fixture.Create <IBogføringslinjeModel>(); var bogføringslinjeViewModel = new BogføringslinjeViewModel(regnskabViewModelMock, bogføringslinjeModelMock); Assert.That(bogføringslinjeViewModel, Is.Not.Null); if (bogført == 0M) { Assert.That(bogføringslinjeViewModel.BogførtAsText, Is.Not.Null); Assert.That(bogføringslinjeViewModel.BogførtAsText, Is.Empty); } else { Assert.That(bogføringslinjeViewModel.BogførtAsText, Is.Not.Null); Assert.That(bogføringslinjeViewModel.BogførtAsText, Is.Not.Empty); Assert.That(bogføringslinjeViewModel.BogførtAsText, Is.EqualTo(bogført.ToString("C"))); } bogføringslinjeModelMock.AssertWasCalled(m => m.Bogført); }
public void TestAtPropertyChangedOnBogføringslinjeModelEventHandlerKasterArgumentNullExceptionHvisEventArgsErNull() { var fixture = new Fixture(); fixture.Customize <IRegnskabViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IRegnskabViewModel>())); fixture.Customize <IBogføringslinjeModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IBogføringslinjeModel>())); var bogføringslinjeModelMock = fixture.Create <IBogføringslinjeModel>(); var bogføringslinjeViewModel = new BogføringslinjeViewModel(fixture.Create <IRegnskabViewModel>(), bogføringslinjeModelMock); Assert.That(bogføringslinjeViewModel, Is.Not.Null); Assert.Throws <ArgumentNullException>(() => bogføringslinjeModelMock.Raise(m => m.PropertyChanged += null, fixture.Create <object>(), null)); }
/// <summary> /// Opdaterer ViewModel for regnskabet med bogføringslinjer. /// </summary> /// <param name="regnskabViewModel">ViewModel for regnskabet, der skal opdateres.</param> /// <param name="bogføringslinjeModels">Bogføringslinjer, som ViewModel for regnskabet skal opdateres med.</param> /// <param name="dageForNyheder">Antallet af dage, som nyheder er gældende.</param> private static void HandleResult(IRegnskabViewModel regnskabViewModel, IEnumerable <IBogføringslinjeModel> bogføringslinjeModels, int dageForNyheder) { if (regnskabViewModel == null) { throw new ArgumentNullException("regnskabViewModel"); } if (bogføringslinjeModels == null) { throw new ArgumentNullException("bogføringslinjeModels"); } foreach (var bogføringslinjeModel in bogføringslinjeModels) { if (regnskabViewModel.Bogføringslinjer.Any(m => m.Løbenummer == bogføringslinjeModel.Løbenummer)) { return; } var bogføringslinjeViewModel = new BogføringslinjeViewModel(regnskabViewModel, bogføringslinjeModel); regnskabViewModel.BogføringslinjeAdd(bogføringslinjeViewModel); if (bogføringslinjeModel.Dato.Date.CompareTo(regnskabViewModel.StatusDato.AddDays(dageForNyheder * -1).Date) >= 0 && bogføringslinjeModel.Dato.Date.CompareTo(regnskabViewModel.StatusDato.Date) <= 0) { regnskabViewModel.NyhedAdd(new NyhedViewModel(bogføringslinjeModel, bogføringslinjeViewModel.Image)); } } }
public void TestAtConstructorInitiererBogføringslinjeViewModel() { var fixture = new Fixture(); fixture.Customize <DateTime>(e => e.FromFactory(() => DateTime.Now)); fixture.Customize <IRegnskabViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IRegnskabViewModel>())); fixture.Customize <IBogføringslinjeModel>(e => e.FromFactory(() => { var mock = MockRepository.GenerateMock <IBogføringslinjeModel>(); mock.Expect(m => m.Løbenummer) .Return(fixture.Create <int>()) .Repeat.Any(); mock.Expect(m => m.Dato) .Return(fixture.Create <DateTime>()) .Repeat.Any(); mock.Expect(m => m.Bilag) .Return(fixture.Create <string>()) .Repeat.Any(); mock.Expect(m => m.Kontonummer) .Return(fixture.Create <string>()) .Repeat.Any(); mock.Expect(m => m.Tekst) .Return(fixture.Create <string>()) .Repeat.Any(); mock.Expect(m => m.Budgetkontonummer) .Return(fixture.Create <string>()) .Repeat.Any(); mock.Expect(m => m.Debit) .Return(fixture.Create <decimal>()) .Repeat.Any(); mock.Expect(m => m.Kredit) .Return(fixture.Create <decimal>()) .Repeat.Any(); mock.Expect(m => m.Bogført) .Return(fixture.Create <decimal>()) .Repeat.Any(); mock.Expect(m => m.Adressekonto) .Return(fixture.Create <int>()) .Repeat.Any(); mock.Expect(m => m.Nyhedsinformation) .Return(fixture.Create <string>()) .Repeat.Any(); return(mock); })); var regnskabViewModelMock = fixture.Create <IRegnskabViewModel>(); var bogføringslinjeModelMock = fixture.Create <IBogføringslinjeModel>(); var bogføringslinjeViewModel = new BogføringslinjeViewModel(regnskabViewModelMock, bogføringslinjeModelMock); Assert.That(bogføringslinjeViewModel, Is.Not.Null); Assert.That(bogføringslinjeViewModel.Regnskab, Is.Not.Null); Assert.That(bogføringslinjeViewModel.Regnskab, Is.EqualTo(regnskabViewModelMock)); Assert.That(bogføringslinjeViewModel.Løbenummer, Is.EqualTo(bogføringslinjeModelMock.Løbenummer)); Assert.That(bogføringslinjeViewModel.Dato, Is.EqualTo(bogføringslinjeModelMock.Dato)); Assert.That(bogføringslinjeViewModel.Bilag, Is.Not.Null); Assert.That(bogføringslinjeViewModel.Bilag, Is.Not.Empty); Assert.That(bogføringslinjeViewModel.Bilag, Is.EqualTo(bogføringslinjeModelMock.Bilag)); Assert.That(bogføringslinjeViewModel.Kontonummer, Is.Not.Null); Assert.That(bogføringslinjeViewModel.Kontonummer, Is.Not.Empty); Assert.That(bogføringslinjeViewModel.Kontonummer, Is.EqualTo(bogføringslinjeModelMock.Kontonummer)); Assert.That(bogføringslinjeViewModel.Tekst, Is.Not.Null); Assert.That(bogføringslinjeViewModel.Tekst, Is.Not.Empty); Assert.That(bogføringslinjeViewModel.Tekst, Is.EqualTo(bogføringslinjeModelMock.Tekst)); Assert.That(bogføringslinjeViewModel.Budgetkontonummer, Is.Not.Null); Assert.That(bogføringslinjeViewModel.Budgetkontonummer, Is.Not.Empty); Assert.That(bogføringslinjeViewModel.Budgetkontonummer, Is.EqualTo(bogføringslinjeModelMock.Budgetkontonummer)); Assert.That(bogføringslinjeViewModel.Debit, Is.EqualTo(bogføringslinjeModelMock.Debit)); Assert.That(bogføringslinjeViewModel.Kredit, Is.EqualTo(bogføringslinjeModelMock.Kredit)); Assert.That(bogføringslinjeViewModel.Bogført, Is.EqualTo(bogføringslinjeModelMock.Bogført)); Assert.That(bogføringslinjeViewModel.Adressekonto, Is.EqualTo(bogføringslinjeModelMock.Adressekonto)); Assert.That(bogføringslinjeViewModel.Image, Is.Not.Null); Assert.That(bogføringslinjeViewModel.Image, Is.Not.Empty); Assert.That(bogføringslinjeViewModel.Image, Is.EqualTo(TestHelper.GetEmbeddedResource((new Resource()).GetType().Assembly, "Images.Bogføringslinje.png"))); Assert.That(bogføringslinjeViewModel.DisplayName, Is.Not.Null); Assert.That(bogføringslinjeViewModel.DisplayName, Is.Not.Empty); Assert.That(bogføringslinjeViewModel.DisplayName, Is.EqualTo(bogføringslinjeModelMock.Nyhedsinformation)); bogføringslinjeModelMock.AssertWasCalled(m => m.Løbenummer); bogføringslinjeModelMock.AssertWasCalled(m => m.Dato); bogføringslinjeModelMock.AssertWasCalled(m => m.Bilag); bogføringslinjeModelMock.AssertWasCalled(m => m.Kontonummer); bogføringslinjeModelMock.AssertWasCalled(m => m.Tekst); bogføringslinjeModelMock.AssertWasCalled(m => m.Budgetkontonummer); bogføringslinjeModelMock.AssertWasCalled(m => m.Debit); bogføringslinjeModelMock.AssertWasCalled(m => m.Kredit); bogføringslinjeModelMock.AssertWasCalled(m => m.Bogført); bogføringslinjeModelMock.AssertWasCalled(m => m.Adressekonto); bogføringslinjeModelMock.AssertWasCalled(m => m.Nyhedsinformation); }