public void TestThatGetDataQueryerReturnsDataQueryerForDataRepository() { var fixture = new Fixture(); var dataQueryerMock = MockRepository.GenerateMock <IDataQueryer>(); fixture.Customize <IDataQueryer>(e => e.FromFactory(() => dataQueryerMock)); var dataRepositoryMock = MockRepository.GenerateMock <IDataRepository>(); dataRepositoryMock.Expect(m => m.GetDataQueryer()) .Return(dataQueryerMock) .Repeat.Any(); fixture.Customize <IDataRepository>(e => e.FromFactory(() => dataRepositoryMock)); var dataValidator = new MyDataValidator(); Assert.That(dataValidator, Is.Not.Null); using (var dataQueryer = dataValidator.GetDataQueryer(fixture.CreateAnonymous <IDataRepository>())) { Assert.That(dataQueryer, Is.Not.Null); Assert.That(dataQueryer, Is.EqualTo(dataQueryerMock)); dataQueryer.Dispose(); } dataRepositoryMock.AssertWasCalled(m => m.GetDataQueryer()); dataQueryerMock.AssertWasCalled(m => m.Dispose()); }
public void TestThatRaiseOnValidationEventRaiseOnValidation() { var fixture = new Fixture(); var dataValidationEventArgsMock = MockRepository.GenerateMock <IDataValidatorEventArgs>(); dataValidationEventArgsMock.Expect(m => m.Data) .Return(fixture.CreateAnonymous <object>()) .Repeat.Any(); fixture.Customize <IDataValidatorEventArgs>(e => e.FromFactory(() => dataValidationEventArgsMock)); var dataValidator = new MyDataValidator(); Assert.That(dataValidator, Is.Not.Null); Assert.That(dataValidator.ValidationExecuted, Is.False); Assert.That(dataValidator.EndOfData, Is.False); var eventCalled = false; dataValidator.OnValidation += (s, e) => { Assert.That(s, Is.Not.Null); Assert.That(e, Is.Not.Null); Assert.That(e.Data, Is.Not.Null); eventCalled = true; }; Assert.That(eventCalled, Is.False); dataValidator.RaiseOnValidationEvent(fixture.CreateAnonymous <object>(), fixture.CreateAnonymous <IDataValidatorEventArgs>()); Assert.That(eventCalled, Is.True); }
public void TestThatGetDataQueryerThrowsArgumentNullExceptionIfDataRepositoryIsNull() { var dataValidator = new MyDataValidator(); Assert.That(dataValidator, Is.Not.Null); Assert.Throws <ArgumentNullException>(() => dataValidator.GetDataQueryer(null)); }
public void TestThatGetDictionaryNameThrowsArgumentNullExceptionIfKeyIsNull() { var dataValidator = new MyDataValidator(); Assert.That(dataValidator, Is.Not.Null); Assert.Throws <ArgumentNullException>(() => dataValidator.GetDictionaryName(null)); }
public void TestThatConstructorInitializeDataValidator() { var dataValidator = new MyDataValidator(); Assert.That(dataValidator, Is.Not.Null); Assert.That(dataValidator.ValidationExecuted, Is.False); Assert.That(dataValidator.EndOfData, Is.False); }
public void TestThatRaiseOnValidationEventThrowsArgumentNullExceptionIfEventArgsIsNull() { var fixture = new Fixture(); var dataValidator = new MyDataValidator(); Assert.That(dataValidator, Is.Not.Null); Assert.That(dataValidator.ValidationExecuted, Is.False); Assert.That(dataValidator.EndOfData, Is.False); Assert.Throws <ArgumentNullException>(() => dataValidator.RaiseOnValidationEvent(fixture.CreateAnonymous <object>(), null)); }
public void TestThatRaiseOnValidationEventThrowsArgumentNullExceptionIfSenderIsNull() { var fixture = new Fixture(); fixture.Customize <IDataValidatorEventArgs>(e => e.FromFactory(() => MockRepository.GenerateMock <IDataValidatorEventArgs>())); var dataValidator = new MyDataValidator(); Assert.That(dataValidator, Is.Not.Null); Assert.That(dataValidator.ValidationExecuted, Is.False); Assert.That(dataValidator.EndOfData, Is.False); Assert.Throws <ArgumentNullException>(() => dataValidator.RaiseOnValidationEvent(null, fixture.CreateAnonymous <IDataValidatorEventArgs>())); }
public void TestThatValidateThrowsArgumentNullExceptionIfCommandIsNull() { var fixture = new Fixture(); fixture.Customize <ITable>(e => e.FromFactory(() => MockRepository.GenerateMock <ITable>())); fixture.Customize <IDictionary <ITable, IEnumerable <IEnumerable <IDataObjectBase> > > >(e => e.FromFactory(() => MockRepository.GenerateMock <IDictionary <ITable, IEnumerable <IEnumerable <IDataObjectBase> > > >())); var dataValidator = new MyDataValidator(); Assert.That(dataValidator, Is.Not.Null); Assert.That(dataValidator.ValidationExecuted, Is.False); Assert.That(dataValidator.EndOfData, Is.False); Assert.Throws <ArgumentNullException>(() => dataValidator.Validate(fixture.CreateAnonymous <ITable>(), fixture.CreateAnonymous <IDictionary <ITable, IEnumerable <IEnumerable <IDataObjectBase> > > >(), true, null)); }
public void TestThatValidateThrowsArgumentNullExceptionIfTargetTableDataIsNull() { var fixture = new Fixture(); fixture.Customize <ITable>(e => e.FromFactory(() => MockRepository.GenerateMock <ITable>())); fixture.Customize <IForeignKeysValidationCommand>(e => e.FromFactory(() => MockRepository.GenerateMock <IForeignKeysValidationCommand>())); var dataValidator = new MyDataValidator(); Assert.That(dataValidator, Is.Not.Null); Assert.That(dataValidator.ValidationExecuted, Is.False); Assert.That(dataValidator.EndOfData, Is.False); Assert.Throws <ArgumentNullException>(() => dataValidator.Validate(fixture.CreateAnonymous <ITable>(), null, true, fixture.CreateAnonymous <IForeignKeysValidationCommand>())); }
public void TestThatGetDictionaryNameGetsDictionaryNameForKey() { var fixture = new Fixture(); fixture.Customize <Type>(e => e.FromFactory(() => typeof(object))); fixture.Customize <IMap>(e => e.FromFactory(() => MockRepository.GenerateMock <IMap>())); fixture.Customize <IField>(e => e.FromFactory(() => { var fieldMock = MockRepository.GenerateMock <IField>(); fieldMock.Expect(m => m.NameTarget) .Return(fixture.CreateAnonymous <string>()) .Repeat.Any(); return(fieldMock); })); fixture.Customize <ITable>(e => e.FromFactory(() => { var tableMock = MockRepository.GenerateMock <ITable>(); tableMock.Expect(m => m.NameTarget) .Return(fixture.CreateAnonymous <string>()) .Repeat.Any(); return(tableMock); })); fixture.Customize <IKey>(e => e.FromFactory(() => { var candidateKeyMock = MockRepository.GenerateMock <ICandidateKey>(); candidateKeyMock.Expect(m => m.Table) .Return(fixture.CreateAnonymous <ITable>()) .Repeat.Any(); candidateKeyMock.Expect(m => m.Fields) .Return(new ReadOnlyObservableCollection <KeyValuePair <IField, IMap> >(new ObservableCollection <KeyValuePair <IField, IMap> >(fixture.CreateMany <KeyValuePair <IField, IMap> >(3).ToList()))) .Repeat.Any(); return(candidateKeyMock); })); var dataValidator = new MyDataValidator(); Assert.That(dataValidator, Is.Not.Null); var keyMock = fixture.CreateAnonymous <IKey>(); var dictionaryName = dataValidator.GetDictionaryName(keyMock); Assert.That(dictionaryName, Is.Not.Null); Assert.That(dictionaryName, Is.Not.Empty); Assert.That(dictionaryName, Is.EqualTo(string.Format("{0}:{1}({2}:{3},{4}:{5},{6}:{7})", keyMock.Table.NameTarget, "{null}", keyMock.Fields.ElementAt(0).Key.NameTarget, "{null}", keyMock.Fields.ElementAt(1).Key.NameTarget, "{null}", keyMock.Fields.ElementAt(2).Key.NameTarget, "{null}"))); keyMock.AssertWasCalled(m => m.Fields); keyMock.AssertWasCalled(m => m.Table, opt => opt.Repeat.Times(3)); }
public void TestThatValidateDoesNotValidateDataIfCommandIsAnotherType() { var fixture = new Fixture(); fixture.Customize <ITable>(e => e.FromFactory(() => MockRepository.GenerateMock <ITable>())); fixture.Customize <IDictionary <ITable, IEnumerable <IEnumerable <IDataObjectBase> > > >(e => e.FromFactory(() => MockRepository.GenerateMock <IDictionary <ITable, IEnumerable <IEnumerable <IDataObjectBase> > > >())); fixture.Customize <ICommand>(e => e.FromFactory(() => MockRepository.GenerateMock <ICommand>())); var dataValidator = new MyDataValidator(); Assert.That(dataValidator, Is.Not.Null); Assert.That(dataValidator.ValidationExecuted, Is.False); Assert.That(dataValidator.EndOfData, Is.False); dataValidator.Validate(fixture.CreateAnonymous <ITable>(), fixture.CreateAnonymous <IDictionary <ITable, IEnumerable <IEnumerable <IDataObjectBase> > > >(), true, fixture.CreateAnonymous <ICommand>()); Assert.That(dataValidator.ValidationExecuted, Is.False); Assert.That(dataValidator.EndOfData, Is.False); }
public void TestThatValidateValidatesDataWhereEndOfDataIsFalse() { var fixture = new Fixture(); fixture.Customize <ITable>(e => e.FromFactory(() => MockRepository.GenerateMock <ITable>())); fixture.Customize <IDictionary <ITable, IEnumerable <IEnumerable <IDataObjectBase> > > >(e => e.FromFactory(() => MockRepository.GenerateMock <IDictionary <ITable, IEnumerable <IEnumerable <IDataObjectBase> > > >())); fixture.Customize <IForeignKeysValidationCommand>(e => e.FromFactory(() => MockRepository.GenerateMock <IForeignKeysValidationCommand>())); var dataValidator = new MyDataValidator(); Assert.That(dataValidator, Is.Not.Null); Assert.That(dataValidator.ValidationExecuted, Is.False); Assert.That(dataValidator.EndOfData, Is.False); dataValidator.Validate(fixture.CreateAnonymous <ITable>(), fixture.CreateAnonymous <IDictionary <ITable, IEnumerable <IEnumerable <IDataObjectBase> > > >(), false, fixture.CreateAnonymous <IForeignKeysValidationCommand>()); Assert.That(dataValidator.ValidationExecuted, Is.True); Assert.That(dataValidator.EndOfData, Is.False); }
public void TestThatGetDataQueryerThrowsDeliveryEngineSystemExceptionIfGetDataQueryerInDataRepositoryThrowsException() { var fixture = new Fixture(); var dataRepositoryMock = MockRepository.GenerateMock <IDataRepository>(); dataRepositoryMock.Expect(m => m.GetDataQueryer()) .Throw(fixture.CreateAnonymous <Exception>()) .Repeat.Any(); fixture.Customize <IDataRepository>(e => e.FromFactory(() => dataRepositoryMock)); var dataValidator = new MyDataValidator(); Assert.That(dataValidator, Is.Not.Null); Assert.Throws <DeliveryEngineSystemException>(() => dataValidator.GetDataQueryer(fixture.CreateAnonymous <IDataRepository>())); dataRepositoryMock.AssertWasCalled(m => m.GetDataQueryer()); }