public void NecroDancerDataIsNull_ThrowsArgumentNullException()
            {
                // Arrange
                var             serializer      = new NecroDancerDataSerializer();
                var             stream          = Stream.Null;
                NecroDancerData necroDancerData = null;

                // Act -> Assert
                Assert.Throws <ArgumentNullException>(() =>
                {
                    serializer.Serialize(stream, necroDancerData);
                });
            }
            public void SerializesNecroDancerData()
            {
                // Arrange
                var serializer      = new NecroDancerDataSerializer();
                var writeStream     = new MemoryStream();
                var readStream      = new MemoryStream(Encoding.UTF8.GetBytes(Resources.NecroDancerDataBaseline));
                var necroDancerData = serializer.Deserialize(readStream);

                // Act
                serializer.Serialize(writeStream, necroDancerData);

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

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

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