Esempio n. 1
0
        public void TestAtPropertyChangedOnBogføringsadvarselModelEventHandlerRejserPropertyChangedOnBogføringsadvarselModelUpdate(string propertyNameToRaise, string expectPropertyName)
        {
            var fixture = new Fixture();

            fixture.Customize <DateTime>(e => e.FromFactory(() => DateTime.Now));
            fixture.Customize <IRegnskabViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IRegnskabViewModel>()));
            fixture.Customize <IReadOnlyBogføringslinjeViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IReadOnlyBogføringslinjeViewModel>()));
            fixture.Customize <IBogføringsadvarselModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IBogføringsadvarselModel>()));

            var bogføringsadvarselModelMock = fixture.Create <IBogføringsadvarselModel>();
            var bogføringsadvarselViewModel = new BogføringsadvarselViewModel(fixture.Create <IRegnskabViewModel>(), fixture.Create <IReadOnlyBogføringslinjeViewModel>(), bogføringsadvarselModelMock, fixture.Create <DateTime>());

            Assert.That(bogføringsadvarselViewModel, Is.Not.Null);

            var eventCalled = false;

            bogføringsadvarselViewModel.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øringsadvarselModelMock.Raise(m => m.PropertyChanged += null, bogføringsadvarselModelMock, new PropertyChangedEventArgs(propertyNameToRaise));
            Assert.That(eventCalled, Is.True);
        }
Esempio n. 2
0
        public void TestAtRemoveCommandGetterReturnererCommand()
        {
            var fixture = new Fixture();

            fixture.Customize <DateTime>(e => e.FromFactory(() => DateTime.Now));
            fixture.Customize <IRegnskabViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IRegnskabViewModel>()));
            fixture.Customize <IReadOnlyBogføringslinjeViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IReadOnlyBogføringslinjeViewModel>()));
            fixture.Customize <IBogføringsadvarselModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IBogføringsadvarselModel>()));

            var bogføringsadvarselViewModel = new BogføringsadvarselViewModel(fixture.Create <IRegnskabViewModel>(), fixture.Create <IReadOnlyBogføringslinjeViewModel>(), fixture.Create <IBogføringsadvarselModel>(), fixture.Create <DateTime>());

            Assert.That(bogføringsadvarselViewModel, Is.Not.Null);

            var removeCommand = bogføringsadvarselViewModel.RemoveCommand;

            Assert.That(removeCommand, Is.Not.Null);
        }
Esempio n. 3
0
        public void TestAtInformationGetterReturnererInformationHvorBeløbErNul()
        {
            var fixture = new Fixture();

            fixture.Customize <DateTime>(e => e.FromFactory(() => DateTime.Now));
            fixture.Customize <IRegnskabViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IRegnskabViewModel>()));
            fixture.Customize <IReadOnlyBogføringslinjeViewModel>(e => e.FromFactory(() =>
            {
                var mock = MockRepository.GenerateMock <IReadOnlyBogføringslinjeViewModel>();
                mock.Expect(m => m.Tekst)
                .Return(fixture.Create <string>())
                .Repeat.Any();
                mock.Expect(m => m.BogførtAsText)
                .Return(fixture.Create <string>())
                .Repeat.Any();
                return(mock);
            }));
            fixture.Customize <IBogføringsadvarselModel>(e => e.FromFactory(() =>
            {
                var mock = MockRepository.GenerateMock <IBogføringsadvarselModel>();
                mock.Expect(m => m.Kontonavn)
                .Return(fixture.Create <string>())
                .Repeat.Any();
                mock.Expect(m => m.Beløb)
                .Return(0M)
                .Repeat.Any();
                return(mock);
            }));

            var bogføringslinjeViewModelMock = fixture.Create <IReadOnlyBogføringslinjeViewModel>();
            var bogføringsadvarselModelMock  = fixture.Create <IBogføringsadvarselModel>();
            var tidspunkt = fixture.Create <DateTime>();
            var bogføringsadvarselViewModel = new BogføringsadvarselViewModel(fixture.Create <IRegnskabViewModel>(), bogføringslinjeViewModelMock, bogføringsadvarselModelMock, tidspunkt);

            Assert.That(bogføringsadvarselViewModel, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.Tidspunkt, Is.EqualTo(tidspunkt));
            Assert.That(bogføringsadvarselViewModel.Beløb, Is.EqualTo(0M));
            Assert.That(bogføringsadvarselViewModel.Information, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.Information, Is.Not.Empty);
            Assert.That(bogføringsadvarselViewModel.Information, Is.EqualTo(string.Format("{0} {1} {2}\r\n\r\n{3}: {4} {5}", tidspunkt.ToShortDateString(), tidspunkt.ToShortTimeString(), Resource.GetText(Text.AccountOverdrawnedWithoutValue, bogføringsadvarselModelMock.Kontonavn), Resource.GetText(Text.Cause), bogføringslinjeViewModelMock.Tekst, bogføringslinjeViewModelMock.BogførtAsText)));

            bogføringsadvarselModelMock.AssertWasCalled(m => m.Kontonavn);
            bogføringsadvarselModelMock.AssertWasCalled(m => m.Beløb);
            bogføringslinjeViewModelMock.AssertWasCalled(m => m.Tekst);
            bogføringslinjeViewModelMock.AssertWasCalled(m => m.BogførtAsText);
        }
Esempio n. 4
0
        public void TestAtExecuteOnRemoveCommandExecutes(object parameter)
        {
            var fixture = new Fixture();

            fixture.Customize <DateTime>(e => e.FromFactory(() => DateTime.Now));
            fixture.Customize <IRegnskabViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IRegnskabViewModel>()));
            fixture.Customize <IReadOnlyBogføringslinjeViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IReadOnlyBogføringslinjeViewModel>()));
            fixture.Customize <IBogføringsadvarselModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IBogføringsadvarselModel>()));

            var bogføringsadvarselViewModel = new BogføringsadvarselViewModel(MockRepository.GenerateMock <IRegnskabViewModel>(), fixture.Create <IReadOnlyBogføringslinjeViewModel>(), fixture.Create <IBogføringsadvarselModel>(), fixture.Create <DateTime>());

            Assert.That(bogføringsadvarselViewModel, Is.Not.Null);

            var removeCommand = bogføringsadvarselViewModel.RemoveCommand;

            Assert.That(removeCommand, Is.Not.Null);

            removeCommand.Execute(parameter);
        }
Esempio n. 5
0
        public void TestAtCanExecuteOnRemoveCommandReturnererValue(object parameter, bool expectedResult)
        {
            var fixture = new Fixture();

            fixture.Customize <DateTime>(e => e.FromFactory(() => DateTime.Now));
            fixture.Customize <IRegnskabViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IRegnskabViewModel>()));
            fixture.Customize <IReadOnlyBogføringslinjeViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IReadOnlyBogføringslinjeViewModel>()));
            fixture.Customize <IBogføringsadvarselModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IBogføringsadvarselModel>()));

            var bogføringsadvarselViewModel = new BogføringsadvarselViewModel(fixture.Create <IRegnskabViewModel>(), fixture.Create <IReadOnlyBogføringslinjeViewModel>(), fixture.Create <IBogføringsadvarselModel>(), fixture.Create <DateTime>());

            Assert.That(bogføringsadvarselViewModel, Is.Not.Null);

            var removeCommand = bogføringsadvarselViewModel.RemoveCommand;

            Assert.That(removeCommand, Is.Not.Null);

            var result = removeCommand.CanExecute(parameter);

            Assert.That(result, Is.EqualTo(expectedResult));
        }
Esempio n. 6
0
        public void TestAtPropertyChangedOnBogføringsadvarselModelEventHandlerKasterArgumentNullExceptionHvisEventArgsErNull()
        {
            var fixture = new Fixture();

            fixture.Customize <DateTime>(e => e.FromFactory(() => DateTime.Now));
            fixture.Customize <IRegnskabViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IRegnskabViewModel>()));
            fixture.Customize <IReadOnlyBogføringslinjeViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IReadOnlyBogføringslinjeViewModel>()));
            fixture.Customize <IBogføringsadvarselModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IBogføringsadvarselModel>()));

            var bogføringsadvarselModelMock = fixture.Create <IBogføringsadvarselModel>();
            var bogføringsadvarselViewModel = new BogføringsadvarselViewModel(fixture.Create <IRegnskabViewModel>(), fixture.Create <IReadOnlyBogføringslinjeViewModel>(), bogføringsadvarselModelMock, fixture.Create <DateTime>());

            Assert.That(bogføringsadvarselViewModel, Is.Not.Null);

            var exception = Assert.Throws <ArgumentNullException>(() => bogføringsadvarselModelMock.Raise(m => m.PropertyChanged += null, bogføringsadvarselModelMock, null));

            Assert.That(exception, Is.Not.Null);
            Assert.That(exception.ParamName, Is.Not.Null);
            Assert.That(exception.ParamName, Is.Not.Empty);
            Assert.That(exception.ParamName, Is.EqualTo("eventArgs"));
            Assert.That(exception.InnerException, Is.Null);
        }
Esempio n. 7
0
        public void TestAtExecuteOnRemoveCommandFjernerBogføringsadvarselViewModelFraRegnskab()
        {
            var fixture = new Fixture();

            fixture.Customize <DateTime>(e => e.FromFactory(() => DateTime.Now));
            fixture.Customize <IRegnskabViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IRegnskabViewModel>()));
            fixture.Customize <IReadOnlyBogføringslinjeViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IReadOnlyBogføringslinjeViewModel>()));
            fixture.Customize <IBogføringsadvarselModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IBogføringsadvarselModel>()));

            var regnskabViewModelMock       = fixture.Create <IRegnskabViewModel>();
            var bogføringsadvarselViewModel = new BogføringsadvarselViewModel(regnskabViewModelMock, fixture.Create <IReadOnlyBogføringslinjeViewModel>(), fixture.Create <IBogføringsadvarselModel>(), fixture.Create <DateTime>());

            Assert.That(bogføringsadvarselViewModel, Is.Not.Null);

            var removeCommand = bogføringsadvarselViewModel.RemoveCommand;

            Assert.That(removeCommand, Is.Not.Null);

            removeCommand.Execute(null);

            regnskabViewModelMock.AssertWasCalled(m => m.BogføringsadvarselRemove(Arg <IBogføringsadvarselViewModel> .Is.Equal(bogføringsadvarselViewModel)));
        }
Esempio n. 8
0
        public void TestAtConstructorInitiererBogføringsadvarselViewModel()
        {
            var fixture = new Fixture();

            fixture.Customize <DateTime>(e => e.FromFactory(() => DateTime.Now));
            fixture.Customize <IRegnskabViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IRegnskabViewModel>()));
            fixture.Customize <IReadOnlyBogføringslinjeViewModel>(e => e.FromFactory(() => MockRepository.GenerateMock <IReadOnlyBogføringslinjeViewModel>()));
            fixture.Customize <IBogføringsadvarselModel>(e => e.FromFactory(() =>
            {
                var mock = MockRepository.GenerateMock <IBogføringsadvarselModel>();
                mock.Expect(m => m.Advarsel)
                .Return(fixture.Create <string>())
                .Repeat.Any();
                mock.Expect(m => m.Kontonummer)
                .Return(fixture.Create <string>())
                .Repeat.Any();
                mock.Expect(m => m.Kontonavn)
                .Return(fixture.Create <string>())
                .Repeat.Any();
                mock.Expect(m => m.Beløb)
                .Return(fixture.Create <decimal>() * -1)
                .Repeat.Any();
                return(mock);
            }));

            var regnskabViewModelMock        = fixture.Create <IRegnskabViewModel>();
            var bogføringslinjeViewModelMock = fixture.Create <IReadOnlyBogføringslinjeViewModel>();
            var bogføringsadvarselModelMock  = fixture.Create <IBogføringsadvarselModel>();
            var tidspunkt = fixture.Create <DateTime>();
            var bogføringsadvarselViewModel = new BogføringsadvarselViewModel(regnskabViewModelMock, bogføringslinjeViewModelMock, bogføringsadvarselModelMock, tidspunkt);

            Assert.That(bogføringsadvarselViewModel, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.Regnskab, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.Regnskab, Is.EqualTo(regnskabViewModelMock));
            Assert.That(bogføringsadvarselViewModel.Bogføringslinje, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.Bogføringslinje, Is.EqualTo(bogføringslinjeViewModelMock));
            Assert.That(bogføringsadvarselViewModel.Tidspunkt, Is.EqualTo(tidspunkt));
            Assert.That(bogføringsadvarselViewModel.TidspunktAsText, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.TidspunktAsText, Is.Not.Empty);
            Assert.That(bogføringsadvarselViewModel.TidspunktAsText, Is.EqualTo(string.Format("{0} {1}", tidspunkt.ToShortDateString(), tidspunkt.ToShortTimeString())));
            Assert.That(bogføringsadvarselViewModel.Advarsel, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.Advarsel, Is.Not.Empty);
            Assert.That(bogføringsadvarselViewModel.Advarsel, Is.EqualTo(bogføringsadvarselModelMock.Advarsel));
            Assert.That(bogføringsadvarselViewModel.Kontonummer, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.Kontonummer, Is.Not.Empty);
            Assert.That(bogføringsadvarselViewModel.Kontonummer, Is.EqualTo(bogføringsadvarselModelMock.Kontonummer));
            Assert.That(bogføringsadvarselViewModel.Kontonavn, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.Kontonavn, Is.Not.Empty);
            Assert.That(bogføringsadvarselViewModel.Kontonavn, Is.EqualTo(bogføringsadvarselModelMock.Kontonavn));
            Assert.That(bogføringsadvarselViewModel.Beløb, Is.GreaterThan(0M));
            Assert.That(bogføringsadvarselViewModel.Beløb, Is.EqualTo(Math.Abs(bogføringsadvarselModelMock.Beløb)));
            Assert.That(bogføringsadvarselViewModel.BeløbAsText, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.BeløbAsText, Is.Not.Empty);
            Assert.That(bogføringsadvarselViewModel.BeløbAsText, Is.EqualTo(Math.Abs(bogføringsadvarselModelMock.Beløb).ToString("C")));
            Assert.That(bogføringsadvarselViewModel.Information, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.Information, Is.Not.Empty);
            Assert.That(bogføringsadvarselViewModel.RemoveCommand, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.RemoveCommand, Is.TypeOf <RelayCommand>());
            Assert.That(bogføringsadvarselViewModel.RemoveCommandLabel, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.RemoveCommandLabel, Is.Not.Empty);
            Assert.That(bogføringsadvarselViewModel.RemoveCommandLabel, Is.EqualTo(Resource.GetText(Text.Ignore)));
            Assert.That(bogføringsadvarselViewModel.DisplayName, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.DisplayName, Is.Not.Empty);
            Assert.That(bogføringsadvarselViewModel.DisplayName, Is.EqualTo(Resource.GetText(Text.PostingWarning)));
            Assert.That(bogføringsadvarselViewModel.Image, Is.Not.Null);
            Assert.That(bogføringsadvarselViewModel.Image, Is.Not.Empty);
            Assert.That(bogføringsadvarselViewModel.Image, Is.EqualTo(Resource.GetEmbeddedResource("Images.Bogføringslinje.png")));

            bogføringsadvarselModelMock.AssertWasCalled(m => m.Advarsel);
            bogføringsadvarselModelMock.AssertWasCalled(m => m.Kontonummer);
            bogføringsadvarselModelMock.AssertWasCalled(m => m.Kontonavn);
            bogføringsadvarselModelMock.AssertWasCalled(m => m.Beløb);
        }