public void TestAtSystemGetAllKasterIntranetRepositoryExceptionVedException() { Exception exception = _fixture.Create <Exception>(); IMySqlDataProvider mySqlDataProvider = CreateMySqlDataProvider(exception: exception); IFællesRepository sut = new FællesRepository(CreateChannelFactory(), mySqlDataProvider, CreateDomainObjectBuilder()); Assert.That(sut, Is.Not.Null); IntranetRepositoryException result = Assert.Throws <IntranetRepositoryException>(() => sut.SystemGetAll()); TestHelper.AssertIntranetRepositoryExceptionIsValid(result, exception, ExceptionMessage.RepositoryError, "SystemGetAll", exception.Message); }
public void TestAtSystemGetAllKasterIntranetRepositoryExceptionVedIntranetRepositoryException() { IntranetRepositoryException intranetRepositoryException = _fixture.Create <IntranetRepositoryException>(); IMySqlDataProvider mySqlDataProvider = CreateMySqlDataProvider(exception: intranetRepositoryException); IFællesRepository sut = new FællesRepository(CreateChannelFactory(), mySqlDataProvider, CreateDomainObjectBuilder()); Assert.That(sut, Is.Not.Null); IntranetRepositoryException result = Assert.Throws <IntranetRepositoryException>(() => sut.SystemGetAll()); Assert.That(result, Is.Not.Null); Assert.That(result, Is.EqualTo(intranetRepositoryException)); }
public void TestAtBrevhovedGetAllKasterIntranetRepositoryExceptionVedFaultException() { FaultException faultException = new FaultException(_fixture.Create <FaultReason>()); IChannelFactory channelFactory = CreateChannelFactory(exception: faultException); IFællesRepository sut = new FællesRepository(channelFactory, CreateMySqlDataProvider(), CreateDomainObjectBuilder()); Assert.That(sut, Is.Not.Null); IntranetRepositoryException result = Assert.Throws <IntranetRepositoryException>(() => sut.BrevhovedGetAll()); Assert.That(result, Is.Not.Null); Assert.That(result.Message, Is.Not.Null); Assert.That(result.Message, Is.Not.Empty); Assert.That(result.Message, Is.EqualTo(faultException.Message)); Assert.That(result.InnerException, Is.Null); }
public void TestAtSystemGetAllHenterSystemer() { IEnumerable <SystemProxy> systemProxyCollection = _fixture.CreateMany <SystemProxy>(_random.Next(5, 10)).ToList(); IMySqlDataProvider mySqlDataProvider = CreateMySqlDataProvider(systemProxyCollection); IFællesRepository sut = new FællesRepository(CreateChannelFactory(), mySqlDataProvider, CreateDomainObjectBuilder()); Assert.That(sut, Is.Not.Null); IEnumerable <ISystem> result = sut.SystemGetAll(); // ReSharper disable PossibleMultipleEnumeration Assert.That(result, Is.Not.Null); Assert.That(result, Is.Not.Empty); Assert.That(result.Count(), Is.EqualTo(systemProxyCollection.Count())); Assert.That(result, Is.EqualTo(systemProxyCollection)); // ReSharper restore PossibleMultipleEnumeration IDbCommandTestExecutor expectedCommandTester = new DbCommandTestBuilder("SELECT SystemNo,Title,Properties FROM Systems ORDER BY SystemNo").Build(); mySqlDataProvider.AssertWasCalled(m => m.GetCollection <SystemProxy>(Arg <MySqlCommand> .Matches(cmd => expectedCommandTester.Run(cmd))), opt => opt.Repeat.Once()); }
public void TestAtBrevhovedGetAllHenterAlleBrevhoveder() { IEnumerable <BrevhovedView> letterHeadViewCollection = _fixture.CreateMany <BrevhovedView>(_random.Next(3, 7)).ToList(); IChannelFactory channelFactory = CreateChannelFactory(letterHeadViewCollection); IEnumerable <Brevhoved> letterHeadCollection = _fixture.CreateMany <Brevhoved>(letterHeadViewCollection.Count()).ToList(); IDomainObjectBuilder domainObjectBuilder = CreateDomainObjectBuilder(letterHeadCollection); IFællesRepository sut = new FællesRepository(channelFactory, CreateMySqlDataProvider(), domainObjectBuilder); Assert.That(sut, Is.Not.Null); IEnumerable <Brevhoved> letterheads = sut.BrevhovedGetAll(); // ReSharper disable PossibleMultipleEnumeration Assert.That(letterheads, Is.Not.Null); Assert.That(letterheads, Is.Not.Empty); Assert.That(letterheads.Count(), Is.EqualTo(letterHeadCollection.Count())); Assert.That(letterheads, Is.EqualTo(letterHeadCollection)); // ReSharper restore PossibleMultipleEnumeration channelFactory.AssertWasCalled(m => m.CreateChannel <IFællesRepositoryService>(Arg <string> .Is.Anything), opt => opt.Repeat.Once()); domainObjectBuilder.AssertWasCalled(m => m.BuildMany <BrevhovedView, Brevhoved>(Arg <IEnumerable <BrevhovedView> > .Is.Equal(letterHeadViewCollection)), opt => opt.Repeat.Once()); }
/// <summary> /// Evaluerer kommando til oprettelse af en bogføringslinje. /// </summary> /// <param name="command">Kommando til oprettelse af en bogføringslinje.</param> /// <param name="konto">Returnering af konto, hvorpå bogføringslinjen skal bogføres.</param> /// <param name="budgetkonto">Returnering af budgetkonto, hvorpå bogføringslinjen skal bogføres.</param> /// <param name="adressekonto">Returnering af adressekonto, hvorpå bogføringslinjen skal bogføres.</param> private void EvaluateCommand(BogføringslinjeOpretCommand command, out Konto konto, out Budgetkonto budgetkonto, out AdresseBase adressekonto) { var adresselisteHelper = new AdresselisteHelper(AdresseRepository.AdresseGetAll()); var brevhovedlisteHelper = new BrevhovedlisteHelper(FællesRepository.BrevhovedGetAll()); var regnskab = Repository.RegnskabGet(command.Regnskabsnummer, brevhovedlisteHelper.GetById, adresselisteHelper.GetById); var currentTime = DateTime.Now; if (command.Dato.Date < currentTime.AddDays(_konfigurationRepository.DageForBogføringsperiode * -1).Date) { throw new IntranetBusinessException(Resource.GetExceptionMessage(ExceptionMessage.BalanceLineDateToOld, _konfigurationRepository.DageForBogføringsperiode)); } if (command.Dato.Date > currentTime.Date) { throw new IntranetBusinessException(Resource.GetExceptionMessage(ExceptionMessage.BalanceLineDateIsForwardInTime)); } if (string.IsNullOrEmpty(command.Kontonummer)) { throw new IntranetBusinessException(Resource.GetExceptionMessage(ExceptionMessage.BalanceLineAccountNumberMissing)); } try { konto = regnskab.Konti.OfType <Konto>().Single(m => String.Compare(m.Kontonummer, command.Kontonummer, StringComparison.Ordinal) == 0); } catch (InvalidOperationException ex) { throw new IntranetRepositoryException(Resource.GetExceptionMessage(ExceptionMessage.CantFindObjectById, typeof(Konto).Name, command.Kontonummer), ex); } if (string.IsNullOrEmpty(command.Tekst)) { throw new IntranetBusinessException(Resource.GetExceptionMessage(ExceptionMessage.BalanceLineTextMissing)); } budgetkonto = null; if (!string.IsNullOrEmpty(command.Budgetkontonummer)) { try { budgetkonto = regnskab.Konti.OfType <Budgetkonto>().Single(m => String.Compare(m.Kontonummer, command.Budgetkontonummer, StringComparison.Ordinal) == 0); } catch (InvalidOperationException ex) { throw new IntranetRepositoryException(Resource.GetExceptionMessage(ExceptionMessage.CantFindObjectById, typeof(Budgetkonto).Name, command.Budgetkontonummer), ex); } } if (command.Debit < 0M) { throw new IntranetBusinessException(Resource.GetExceptionMessage(ExceptionMessage.BalanceLineValueBelowZero)); } if (command.Kredit < 0M) { throw new IntranetBusinessException(Resource.GetExceptionMessage(ExceptionMessage.BalanceLineValueBelowZero)); } if (command.Debit == 0M && command.Kredit == 0M) { throw new IntranetBusinessException(Resource.GetExceptionMessage(ExceptionMessage.BalanceLineValueMissing)); } adressekonto = null; if (command.Adressekonto == 0) { return; } adressekonto = adresselisteHelper.GetById(command.Adressekonto); }
/// <summary> /// Henter og returnerer et givent system under OSWEBDB. /// </summary> /// <param name="nummer">Unik identifikation af systemet.</param> /// <returns>System under OSWEBDB.</returns> public virtual ISystem SystemGetByNummer(int nummer) { var systemlisteHelper = new SystemlisteHelper(FællesRepository.SystemGetAll()); return(systemlisteHelper.GetById(nummer)); }