public void ItRefreshesEveryExistingBoardGameGeekGameDefinition()
{
//--arrange
int expectedBoardGameGeekGameDefinitionId1 = 1;
int expectedBoardGameGeekGameDefinitionId2 = 2;
var allBoardGameGeekGameDefinitionsQueryable = new List<BoardGameGeekGameDefinition>
{
new BoardGameGeekGameDefinition
{
Id = expectedBoardGameGeekGameDefinitionId1
},
new BoardGameGeekGameDefinition
{
Id = expectedBoardGameGeekGameDefinitionId2
}
}.AsQueryable();
_autoMocker.Get<IDataContext>().Expect(mock => mock.GetQueryable<BoardGameGeekGameDefinition>())
.Return(allBoardGameGeekGameDefinitionsQueryable);
var expectedBggGameDetails1 = new GameDetails
{
GameId = expectedBoardGameGeekGameDefinitionId1,
AverageWeight = 1,
Description = "some description 1",
Thumbnail = "some thumbnail",
MinPlayers = 3,
MaxPlayers = 4,
MinPlayTime = 5,
MaxPlayTime = 6
};
_autoMocker.Get<IBoardGameGeekApiClient>().Expect(mock => mock.GetGameDetails(expectedBoardGameGeekGameDefinitionId1))
.Return(expectedBggGameDetails1);
var expectedBggGameDetails2 = new GameDetails
{
GameId = expectedBoardGameGeekGameDefinitionId2,
AverageWeight = 10,
Description = "some description 2",
Thumbnail = "some thumbnail",
MinPlayers = 30,
MaxPlayers = 40,
MinPlayTime = 50,
MaxPlayTime = 60
};
_autoMocker.Get<IBoardGameGeekApiClient>().Expect(mock => mock.GetGameDetails(expectedBoardGameGeekGameDefinitionId2))
.Return(expectedBggGameDetails2);
//--act
_autoMocker.ClassUnderTest.RefreshAllBoardGameGeekData();
//--assert
AssertBoardGameGeekGameDefinitionSaved(expectedBggGameDetails1);
AssertBoardGameGeekGameDefinitionSaved(expectedBggGameDetails2);
}