Beispiel #1
0
        public void Parse_songs_from_database_response__one_song()
        {
            // Arrange
            var dynamodbClient  = new Mock <IAmazonDynamoDB>(MockBehavior.Strict);
            var jukeboxDynamoDb = new JukeboxDynamoDb(dynamodbClient.Object, SongFixtures.TableName, SongFixtures.IndexNameSearchTitle, SongFixtures.IndexNameSearchTitleArtist, SongFixtures.TableName);
            var items           = new List <Dictionary <string, AttributeValue> > {
                {
                    new Dictionary <string, AttributeValue> {
                        { "song_number", new AttributeValue {
                              S = "123"
                          } },
                        { "artist", new AttributeValue {
                              S = "Lionel Ritche"
                          } },
                        { "title", new AttributeValue {
                              S = "Hello"
                          } }
                    }
                }
            };
            var quesryResponse = new QueryResponse {
                Items = items
            };

            // Act
            var parsedSongsList = jukeboxDynamoDb.ParseSongsFromDatabaseResponse(quesryResponse).ToList();

            // Assert
            Assert.Equal("Lionel Ritche", parsedSongsList.FirstOrDefault().Artist);
            Assert.Equal("123", parsedSongsList.FirstOrDefault().SongNumber);
            Assert.Equal("Hello", parsedSongsList.FirstOrDefault().Title);
        }
Beispiel #2
0
        public void Parse_songs_from_database_response__no_songs()
        {
            // Arrange
            var dynamodbClient  = new Mock <IAmazonDynamoDB>(MockBehavior.Strict);
            var jukeboxDynamoDb = new JukeboxDynamoDb(dynamodbClient.Object, SongFixtures.TableName, SongFixtures.IndexNameSearchTitle, SongFixtures.IndexNameSearchTitleArtist, SongFixtures.TableName);
            var items           = new List <Dictionary <string, AttributeValue> >();
            var quesryResponse  = new QueryResponse {
                Items = items
            };

            // Act
            var parsedSongsList = jukeboxDynamoDb.ParseSongsFromDatabaseResponse(quesryResponse).ToList();

            // Assert
            Assert.Empty(parsedSongsList);
        }