Пример #1
0
        public void RemovesBillWhenUpdateNotificationReceived()
        {
            // Arrange
            const int    id         = 1;
            const string date       = "01.01.2015";
            KindOfBill   kindOfBill = KindOfBill.Gutschrift;

            Bill expectedBill = new Bill {
                Id = id, Date = date, KindOfBill = kindOfBill
            };

            this._mockRepository.Setup(x => x.GetById <Bill>(It.IsAny <int>())).Returns(expectedBill);
            this._mockRepository.Setup(x => x.GetByCriteria(It.IsAny <ICriterion>(), It.IsAny <Expression <Func <Bill, Client> > >(), It.IsAny <ICriterion>(), It.IsAny <Expression <Func <Client, CityToPostalCode> > >(), It.IsAny <ICriterion>(), 1))
            .Returns(new List <Bill>());

            Tuple <ICriterion, Expression <Func <Bill, Client> >, ICriterion, Expression <Func <Client, CityToPostalCode> >, ICriterion> expectedTuple = new Tuple <ICriterion, Expression <Func <Bill, Client> >, ICriterion, Expression <Func <Client, CityToPostalCode> >, ICriterion>(new Conjunction(), b => b.Client, new Conjunction(), c => c.CityToPostalCode, new Conjunction());

            Messenger.Default.Send(new NotificationMessage <Tuple <ICriterion, Expression <Func <Bill, Client> >, ICriterion, Expression <Func <Client, CityToPostalCode> >, ICriterion> >(expectedTuple, Resources.Message_BillSearchCriteriaForBillSearchVM));

            this._billSearchViewModel.FoundBills.Add(new BillDetailViewModel(expectedBill, this._mockRepository.Object, this._mockDialogService.Object));

            // Act
            Messenger.Default.Send(new NotificationMessage(Resources.Message_ReloadBillForBillSearchVM));

            // Assert
            this._billSearchViewModel.FoundBills.Should().HaveCount(0);
        }
Пример #2
0
        public void CanChangeValues()
        {
            // Arrange
            const int    billId        = 4;
            KindOfBill   kindOfBill    = KindOfBill.Gutschrift;
            KindOfVat    kindOfVat     = KindOfVat.zzgl_MwSt;
            const double vatPercentage = 34.234;
            const string date          = "14.04.2014";
            ClientTitle  title         = ClientTitle.Frau;
            const int    clientId      = 10;
            const string companyName   = "hololulu";
            const string firstName     = "Mia";
            const string lastName      = "Meier";
            const string street        = "Benzstraße";
            const string houseNumber   = "234 a";
            const string postalCode    = "23512";
            const string city          = "Berlin";

            // Act
            this._billDetailViewModel.Id            = billId;
            this._billDetailViewModel.KindOfBill    = kindOfBill;
            this._billDetailViewModel.KindOfVat     = kindOfVat;
            this._billDetailViewModel.VatPercentage = vatPercentage;
            this._billDetailViewModel.Date          = date;
            this._billDetailViewModel.ClientId      = clientId;
            this._billDetailViewModel.Title         = title;
            this._billDetailViewModel.CompanyName   = companyName;
            this._billDetailViewModel.FirstName     = firstName;
            this._billDetailViewModel.LastName      = lastName;
            this._billDetailViewModel.Street        = street;
            this._billDetailViewModel.HouseNumber   = houseNumber;
            this._billDetailViewModel.PostalCode    = postalCode;
            this._billDetailViewModel.City          = city;

            // Assert
            this._billDetailViewModel.Id.Should().Be(billId);
            this._billDetailViewModel.KindOfBill.Should().Be(kindOfBill);
            this._billDetailViewModel.KindOfVat.Should().Be(kindOfVat);
            this._billDetailViewModel.VatPercentage.Should().Be(vatPercentage);
            this._billDetailViewModel.Date.Should().Be(date);
            this._billDetailViewModel.ClientId.Should().Be(clientId);
            this._billDetailViewModel.Title.Should().Be(title);
            this._billDetailViewModel.CompanyName.Should().Be(companyName);
            this._billDetailViewModel.FirstName.Should().Be(firstName);
            this._billDetailViewModel.LastName.Should().Be(lastName);
            this._billDetailViewModel.Street.Should().Be(street);
            this._billDetailViewModel.HouseNumber.Should().Be(houseNumber);
            this._billDetailViewModel.PostalCode.Should().Be(postalCode);
            this._billDetailViewModel.City.Should().Be(city);
        }
Пример #3
0
        public void SendBillSearchCriterionThatSearchesForBillsWithSpecificBillDataAndClientNumber()
        {
            // Arrange
            const int    expectedId = 2;
            KindOfBill   kindOfBill = KindOfBill.Gutschrift;
            const string date       = "01.02.2017";
            Client       client     = new Client()
            {
                Id = expectedId
            };
            Bill bill = new Bill {
                KindOfBill = kindOfBill, Date = date, Client = client
            };

            this._billEditViewModel.ChangeToLoadedMode(bill);

            Tuple <ICriterion, Expression <Func <Bill, Client> >, ICriterion, Expression <Func <Client, CityToPostalCode> >, ICriterion> criterion = null;

            Messenger.Default.Register <NotificationMessage <Tuple <ICriterion, Expression <Func <Bill, Client> >, ICriterion, Expression <Func <Client, CityToPostalCode> >, ICriterion> > >(this, x => criterion = x.Content);

            Conjunction billConjunction = Restrictions.Conjunction();

            billConjunction.Add(Restrictions.Where <Bill>(b => b.KindOfBill == kindOfBill));
            billConjunction.Add(Restrictions.Where <Bill>(b => b.Date.IsLike(date, MatchMode.Anywhere)));

            Conjunction clientConjunction = Restrictions.Conjunction();

            clientConjunction.Add(Restrictions.Where <Client>(c => c.Id == expectedId));

            Tuple <ICriterion, Expression <Func <Bill, Client> >, ICriterion, Expression <Func <Client, CityToPostalCode> >, ICriterion> expectedTuple = new Tuple <ICriterion, Expression <Func <Bill, Client> >, ICriterion, Expression <Func <Client, CityToPostalCode> >, ICriterion>(billConjunction, b => b.Client, clientConjunction, null, null);

            // Act
            this._billEditViewModel.SendBillSearchCriterionMessage();

            // Assert
            criterion.Should().NotBeNull();
            criterion.ToString().Should().Be(expectedTuple.ToString());
        }