public void WritePair_WhenValueNull_Throws(string value)
        {
            using (var stream = new MemoryStream())
                using (var writer = new KeyPairFileWriter(stream, _encoding, leaveOpen: true))
                {
                    var exception = Assert.Throws <ArgumentException>(
                        () => writer.WritePair("a", value));

                    Assert.Equal("value", exception.ParamName);
                }
        }
        public void WritePair_WhenKeyNullOrEmpty_Throws(string key)
        {
            using (var stream = new MemoryStream())
                using (var writer = new KeyPairFileWriter(stream, _encoding, leaveOpen: true))
                {
                    var exception = Assert.Throws <ArgumentException>(
                        () => writer.WritePair(key, "b"));

                    Assert.Equal("key", exception.ParamName);
                }
        }
        public void WritePair_WithValidInput_WritesContent()
        {
            using (var stream = new MemoryStream())
            {
                using (var writer = new KeyPairFileWriter(stream, _encoding, leaveOpen: true))
                {
                    writer.WritePair("a", "b");
                }

                Assert.Equal(_encoding.GetBytes("a:b\n"), stream.ToArray());
            }
        }