public ExtensionTests() { MongoMock.Setup(a => a.GetEnumerator()).Returns(MockData.GetEnumerator()); MongoMock.As <IQueryable <int> >().Setup(x => x.Provider).Returns(MockData.Provider); MongoMock.As <IQueryable <int> >().Setup(x => x.Expression).Returns(MockData.Expression); MongoMock.As <IQueryable <int> >().Setup(x => x.ElementType).Returns(MockData.ElementType); MongoMock.As <IQueryable <int> >().Setup(x => x.GetEnumerator()).Returns(() => MockData.GetEnumerator()); }
private IRepository <Market> GetMockedMarketRepo() { var marketRepositoryMock = new Mock <IRepository <Market> >(); var serverMock = MongoMock.CreateMongoServer(); var databaseMock = MongoMock.CreateMongoDatabase(serverMock.Object); var collectionMock = MongoMock.CreateMongoCollection <Market>(databaseMock.Object, "FooCollection"); var cursorMock = MongoMock.CreateMongoCursor(collectionMock.Object, new List <Market> { new Market { Name = "MTL", EnableDriverBonus = true, ReceiptFooter = "my custom footer 1", DispatcherSettings = new DispatcherSettings { NumberOfOffersPerCycle = 4, NumberOfCycles = 5, DurationOfOfferInSeconds = 55 }, Region = new MapRegion { CoordinateStart = new MapCoordinate { Latitude = 45.514466, Longitude = -73.846313 }, // MTL Top left CoordinateEnd = new MapCoordinate { Latitude = 45.411296, Longitude = -73.513314 } // MTL BTM Right } }, new Market { Name = "NYC", EnableDriverBonus = false, ReceiptFooter = "my custom footer 2", DispatcherSettings = new DispatcherSettings { NumberOfOffersPerCycle = 1, NumberOfCycles = 2, DurationOfOfferInSeconds = 50 }, Region = new MapRegion { CoordinateStart = new MapCoordinate { Latitude = 45.514466, Longitude = -73.889451 }, CoordinateEnd = new MapCoordinate { Latitude = 45.411296, Longitude = -73.496042 } } }, new Market { Name = "NYCSS", EnableDriverBonus = true, ReceiptFooter = "my custom footer 3", DispatcherSettings = new DispatcherSettings { NumberOfOffersPerCycle = 3, NumberOfCycles = 4, DurationOfOfferInSeconds = 60 }, Region = new MapRegion { CoordinateStart = new MapCoordinate { Latitude = 45.563135, Longitude = -73.71953 }, //College Montmorency Laval CoordinateEnd = new MapCoordinate { Latitude = 45.498094, Longitude = -73.62233 } //Station cote des neiges } }, new Market { Name = "SYD", EnableDriverBonus = true, ReceiptFooter = null, DispatcherSettings = new DispatcherSettings { NumberOfOffersPerCycle = 2, NumberOfCycles = 3, DurationOfOfferInSeconds = 15 }, ShowCallDriver = true, Region = new MapRegion { CoordinateStart = new MapCoordinate { Latitude = 45.420595, Longitude = -75.708386 }, // Ottawa CoordinateEnd = new MapCoordinate { Latitude = 45.411045, Longitude = -75.684568 } } }, new Market { Name = "CHI", EnableDriverBonus = false, ReceiptFooter = null, DispatcherSettings = new DispatcherSettings { NumberOfOffersPerCycle = 1, NumberOfCycles = 4, DurationOfOfferInSeconds = 25 }, Region = new MapRegion { CoordinateStart = new MapCoordinate { Latitude = 49994, Longitude = -73.656990 }, // Apcuruium CoordinateEnd = new MapCoordinate { Latitude = 45.474307, Longitude = -73.58412 } // Home } } }); collectionMock.Setup(x => x.Find(It.IsAny <IMongoQuery>())).Returns(cursorMock.Object); collectionMock.Setup(x => x.FindAll()).Returns(cursorMock.Object); marketRepositoryMock.Setup(x => x.Collection).Returns(collectionMock.Object); return(marketRepositoryMock.Object); }