/// <summary> /// Henter alle brevhoveder. /// </summary> /// <returns>Liste af brevhoveder.</returns> public IEnumerable <Brevhoved> BrevhovedGetAll() { IFællesRepositoryService channel = _channelFactory.CreateChannel <IFællesRepositoryService>(EndpointConfigurationName); try { BrevhovedGetAllQuery query = new BrevhovedGetAllQuery(); IEnumerable <BrevhovedView> brevhovedViews = channel.BrevhovedGetAll(query); return(_domainObjectBuilder.BuildMany <BrevhovedView, Brevhoved>(brevhovedViews)); } catch (IntranetRepositoryException) { throw; } catch (FaultException ex) { throw new IntranetRepositoryException(ex.Message); } catch (Exception ex) { throw new IntranetRepositoryException(Resource.GetExceptionMessage(ExceptionMessage.RepositoryError, MethodBase.GetCurrentMethod().Name, ex.Message), ex); } finally { ChannelTools.CloseChannel(channel); } }
/// <summary> /// Creates a mockup of the channel factory. /// </summary> /// <returns>Mockup of the channel factory.</returns> private IChannelFactory CreateChannelFactory(IEnumerable <BrevhovedView> letterHeadViewCollection = null, Exception exception = null) { MockRepository mocker = new MockRepository(); IFællesRepositoryService serviceMock = mocker.DynamicMultiMock <IFællesRepositoryService>(typeof(ICommunicationObject)); if (exception == null) { serviceMock.Stub(m => m.BrevhovedGetAll(Arg <BrevhovedGetAllQuery> .Is.Anything)) .Return(letterHeadViewCollection ?? _fixture.CreateMany <BrevhovedView>(_random.Next(3, 7)).ToList()) .Repeat.Any(); } else { serviceMock.Stub(m => m.BrevhovedGetAll(Arg <BrevhovedGetAllQuery> .Is.Anything)) .Throw(exception) .Repeat.Any(); } // ReSharper disable SuspiciousTypeConversion.Global serviceMock.Stub(m => ((ICommunicationObject)m).State) .Return(CommunicationState.Closed) .Repeat.Any(); // ReSharper restore SuspiciousTypeConversion.Global mocker.ReplayAll(); IChannelFactory channelFactoryMock = MockRepository.GenerateMock <IChannelFactory>(); channelFactoryMock.Stub(m => m.CreateChannel <IFællesRepositoryService>(Arg <string> .Is.Anything)) .Return(serviceMock) .Repeat.Any(); return(channelFactoryMock); }