public void Open_DataWriterOpenThrowsException_ExceptionIsPropogated() { var dataDestination1 = MockRepository.GenerateMock <IDataDestination>(); var dataDestination2 = MockRepository.GenerateMock <IDataDestination>(); var dataWriter1 = MockRepository.GenerateMock <IDataWriter>(); var dataWriter2 = MockRepository.GenerateMock <IDataWriter>(); var recordExpander = MockRepository.GenerateMock <IRecordExpander>(); dataWriter1.Stub(x => x.Open()).Throw(new InternalTestFailureException()); var dataWriters = new Dictionary <IDataDestination, IDataWriter>(); dataWriters.Add(dataDestination1, dataWriter1); dataWriters.Add(dataDestination2, dataWriter2); var expandedDataWriter = new ExpandedDataWriter(dataWriters, recordExpander); try { expandedDataWriter.Open(); } catch (AggregateException ae) { Assert.IsTrue(ae.InnerException is InternalTestFailureException); return; } Assert.Fail(); }
public void Open_MultipleDataDestinations_AllDataWritersAreOpened() { var dataDestination1 = MockRepository.GenerateMock <IDataDestination>(); var dataDestination2 = MockRepository.GenerateMock <IDataDestination>(); var dataWriter1 = MockRepository.GenerateMock <IDataWriter>(); var dataWriter2 = MockRepository.GenerateMock <IDataWriter>(); var recordExpander = MockRepository.GenerateMock <IRecordExpander>(); dataWriter1.Expect(x => x.Open()); dataWriter2.Expect(x => x.Open()); var dataWriters = new Dictionary <IDataDestination, IDataWriter>(); dataWriters.Add(dataDestination1, dataWriter1); dataWriters.Add(dataDestination2, dataWriter2); var expandedDataWriter = new ExpandedDataWriter(dataWriters, recordExpander); expandedDataWriter.Open(); dataWriter1.VerifyAllExpectations(); dataWriter2.VerifyAllExpectations(); }