Esempio n. 1
0
        public void CreateConverterReturnsValidInstance()
        {
            var converter = new EnumSnakeCaseConverter().CreateConverter(typeof(Cartoon), null !);

            Assert.IsNotNull(converter);
            Assert.IsTrue(converter !.CanConvert(typeof(Cartoon)));
            Assert.IsFalse(converter !.CanConvert(typeof(int)));
        }
Esempio n. 2
0
        public void CanConvertReturnsFalseForEverythingElse()
        {
            var c = new EnumSnakeCaseConverter();

            Assert.IsFalse(c.CanConvert(typeof(int)));
            Assert.IsFalse(c.CanConvert(typeof(object)));
            Assert.IsFalse(c.CanConvert(typeof(string)));
        }
Esempio n. 3
0
        public void ReadReturnsEnum()
        {
            var fc = new EnumSnakeCaseConverter();
            var c  = fc.CreateConverter(typeof(Cartoon), null !) as EnumSnakeCaseConverterInner <Cartoon>;

            var rawBytes = new ReadOnlySpan <byte>(Encoding.UTF8.GetBytes("\"cat_dog\""));
            var reader   = new Utf8JsonReader(rawBytes);

            reader.Read(); // Read always starts at none. See: https://stackoverflow.com/questions/59028159/exception-when-testing-custom-jsonconverter
            var e = c !.Read(ref reader, typeof(Cartoon), null !);

            Assert.AreEqual(Cartoon.CatDog, e);
        }
Esempio n. 4
0
        public void CanConvertReturnsFalseForFlags()
        {
            var c = new EnumSnakeCaseConverter();

            Assert.IsFalse(c.CanConvert(typeof(FlagEnum)));
        }
Esempio n. 5
0
        public void CanConvertReturnsTrueForEnums()
        {
            var c = new EnumSnakeCaseConverter();

            Assert.IsTrue(c.CanConvert(typeof(Cartoon)));
        }