public void ReturnsNecroDancerData()
            {
                // Arrange
                var stream = new MemoryStream(Encoding.UTF8.GetBytes(Resources.NecroDancerData));
                var reader = new NecroDancerDataReader(stream);

                // Act
                var necroDancerData = reader.Read();

                // Assert
                Assert.IsAssignableFrom <NecroDancerData>(necroDancerData);
                Assert.Equal(291, necroDancerData.Items.Count);
                Assert.Equal(216, necroDancerData.Enemies.Count);
                Assert.Equal(15, necroDancerData.Characters.Count);
                Assert.Equal(1, necroDancerData.Modes.Count);
            }
            public void MatchesNecroDancerDataBaseline()
            {
                // Arrange
                var writeStream     = new MemoryStream();
                var writer          = new NecroDancerDataWriter(writeStream);
                var readStream      = new MemoryStream(Encoding.UTF8.GetBytes(Resources.NecroDancerData));
                var reader          = new NecroDancerDataReader(readStream);
                var necroDancerData = reader.Read();

                // Act
                writer.Write(necroDancerData);

                // Assert
                var sr = new StreamReader(writeStream);

                writeStream.Position = 0;
                var actual = sr.ReadToEnd();

                Assert.Equal(Resources.NecroDancerDataBaseline, actual, ignoreLineEndingDifferences: true);
            }