Exemple #1
0
        public void CanConvert_true()
        {
            // Act
            var converter = new IntegerBooleanConverter();
            var type      = typeof(bool);

            // Assert
            converter.CanConvert(type).ShouldBeTrue();
        }
Exemple #2
0
        public void CanConvert_false()
        {
            // Act
            var converter = new IntegerBooleanConverter();
            var type      = typeof(string);

            // Assert
            converter.CanConvert(type).ShouldBeFalse();
        }
Exemple #3
0
        public void Properties()
        {
            // Act
            var converter = new IntegerBooleanConverter();

            // Assert
            converter.CanRead.ShouldBeTrue();
            converter.CanWrite.ShouldBeTrue();
        }
Exemple #4
0
        public void Read_true()
        {
            // Arrange
            var json       = "1";
            var jsonUtf8   = (ReadOnlySpan <byte>)Encoding.UTF8.GetBytes(json);
            var jsonReader = new Utf8JsonReader(jsonUtf8);
            var objectType = (Type)null;
            var options    = new JsonSerializerOptions();

            var converter = new IntegerBooleanConverter();

            // Act
            jsonReader.Read();
            var result = converter.Read(ref jsonReader, objectType, options);

            // Assert
            result.ShouldBeTrue();
        }
Exemple #5
0
        public void Read_false()
        {
            // Arrange
            var json       = "\"Anything other than the numeral 1 should yield false\"";
            var jsonUtf8   = (ReadOnlySpan <byte>)Encoding.UTF8.GetBytes(json);
            var jsonReader = new Utf8JsonReader(jsonUtf8);
            var objectType = (Type)null;
            var options    = new JsonSerializerOptions();

            var converter = new IntegerBooleanConverter();

            // Act
            jsonReader.Read();
            var result = converter.Read(ref jsonReader, objectType, options);

            // Assert
            result.ShouldBeFalse();
        }
Exemple #6
0
        public void Write_false()
        {
            // Arrange
            var sb     = new StringBuilder();
            var sw     = new StringWriter(sb);
            var writer = new JsonTextWriter(sw);

            var value      = false;
            var serializer = new JsonSerializer();

            var converter = new IntegerBooleanConverter();

            // Act
            converter.WriteJson(writer, value, serializer);
            var result = sb.ToString();

            // Assert
            result.ShouldBe("0");
        }
Exemple #7
0
        public void Read_null()
        {
            // Arrange
            var json = "";

            var textReader    = new StringReader(json);
            var jsonReader    = new JsonTextReader(textReader);
            var objectType    = (Type)null;
            var existingValue = (object)null;
            var serializer    = new JsonSerializer();

            var converter = new IntegerBooleanConverter();

            // Act
            jsonReader.Read();
            var result = converter.ReadJson(jsonReader, objectType, existingValue, serializer);

            // Assert
            result.ShouldBeNull();
        }
Exemple #8
0
        public void Write_false()
        {
            // Arrange
            var value      = false;
            var ms         = new MemoryStream();
            var jsonWriter = new Utf8JsonWriter(ms);
            var options    = new JsonSerializerOptions();

            var converter = new IntegerBooleanConverter();

            // Act
            converter.Write(jsonWriter, value, options);
            jsonWriter.Flush();

            ms.Position = 0;
            var sr     = new StreamReader(ms);
            var result = sr.ReadToEnd();

            // Assert
            result.ShouldBe("0");
        }
Exemple #9
0
        public void Read_false()
        {
            // Arrange
            var json = "\"Anything other than the numeral 1 should yield false\"";

            var textReader    = new StringReader(json);
            var jsonReader    = new JsonTextReader(textReader);
            var objectType    = (Type)null;
            var existingValue = (object)null;
            var serializer    = new JsonSerializer();

            var converter = new IntegerBooleanConverter();

            // Act
            jsonReader.Read();
            var result = converter.ReadJson(jsonReader, objectType, existingValue, serializer);

            // Assert
            result.ShouldBeOfType <bool>();
            ((bool)result).ShouldBeFalse();
        }