public void AddNull_Failure() { var collection = new Mock <IMongoCollection <BlankAggregate> >(); var repository = new MongoDeltaRepository <BlankAggregate>(collection.Object); Assert.Throws <ArgumentNullException>(() => { repository.Add(null); }); }
public void AddSingleModel_Success() { var collection = new Mock <IMongoCollection <BlankAggregate> >(); var repository = new MongoDeltaRepository <BlankAggregate>(collection.Object); var model = new BlankAggregate(); Assert.DoesNotThrow(() => { repository.Add(model); }); }
public void AddSingleModelTwice_Failure() { var collection = new Mock <IMongoCollection <BlankAggregate> >(); var repository = new MongoDeltaRepository <BlankAggregate>(collection.Object); var model = new BlankAggregate(); Assert.DoesNotThrow(() => { repository.Add(model); }); Assert.Throws <ArgumentException>(() => { repository.Add(model); }); }
private static MongoDeltaRepository <BlankAggregate> CreateRepositoryForResults(List <BlankAggregate> results) { var collection = new Mock <IMongoCollection <BlankAggregate> >(MockBehavior.Strict); var collectionToQueryableConverter = new Mock <IMongoCollectionToQueryableConverter>(MockBehavior.Strict); var queryable = new Mock <IMongoQueryable <BlankAggregate> >(); collectionToQueryableConverter.Setup(c => c.GetQueryable(collection.Object)).Returns(queryable.Object); var queryRunner = new Mock <IMongoQueryRunner>(); queryRunner.Setup(q => q.RunAsync(It.IsAny <IMongoQueryable <BlankAggregate> >())) .Returns(Task.FromResult <IReadOnlyCollection <BlankAggregate> >(results)); queryRunner.Setup(q => q.RunSingleAsync(It.IsAny <IMongoQueryable <BlankAggregate> >())) .Returns(() => Task.FromResult(results.SingleOrDefault())); var repository = new MongoDeltaRepository <BlankAggregate>(collection.Object, collectionToQueryableConverter.Object, queryRunner.Object); return(repository); }