public void ShouldChangeStatusOfDelegation()
        {
            var del = new Delegation()
            {
                Id = 1, DelegationStatusId = 1
            };
            var delWithAccounant = new Delegation()
            {
                Id = 2, DelegationStatusId = 3, AccoutantApprovedDate = DateTime.Now
            };
            var config = new MapperConfiguration(cfg =>
            {
                cfg.AddProfile(new MappingProfile());
            });
            var mapper  = config.CreateMapper();
            var delRepo = new Mock <IDelegationRepository>();

            delRepo.Setup(d => d.GetDelegationById(1)).Returns(del);
            delRepo.Setup(d => d.GetDelegationById(2)).Returns(delWithAccounant);
            var vehRepo               = new Mock <IVehicleRepository>();
            var empRepo               = new Mock <IEmployeeRepository>();
            var delServ               = new DelegationService(delRepo.Object, empRepo.Object, vehRepo.Object, mapper);
            var delShouldBeChanged    = delServ.ChangeStatusOfDelegation(1, 2);
            var delShouldNotBeChanged = delServ.ChangeStatusOfDelegation(1, 1);              // the same status
            var delShouldNotBeChangeAccountantDate = delServ.ChangeStatusOfDelegation(1, 4); // try to change status to paid without accountant acceptance
            var delShouldBeChangedAccounantDate    = delServ.ChangeStatusOfDelegation(2, 4); // try to change status to  paid with accounant accpetnace

            delShouldBeChanged.Should().BeTrue();
            delShouldNotBeChanged.Should().BeFalse();
            delShouldNotBeChangeAccountantDate.Should().BeFalse();
            delShouldBeChangedAccounantDate.Should().BeTrue();
        }