public void TestToList_JsonTokenTypeNotSupported()
        {
            var invalidList = new List <object>();

            invalidList.Add(new { Id = 1 });

            var jsonString = JsonConvert.SerializeObject(invalidList);
            var json       = JsonConvert.DeserializeObject(jsonString);

            var converter = new FilterBindingModelConverter();
            var testList  = converter.ToList(json as JArray);
        }
        public void TestToList_ArrayOfFloats()
        {
            var floatList = new List <float>();

            floatList.Add(1.0f);
            floatList.Add(2.0f);

            var jsonString = JsonConvert.SerializeObject(floatList);
            var json       = JsonConvert.DeserializeObject(jsonString);

            var converter = new FilterBindingModelConverter();
            var testList  = converter.ToList(json as JArray);

            Assert.IsInstanceOfType(testList, typeof(List <double>));
            var testDoubleList = (List <double>)testList;

            CollectionAssert.AreEqual(floatList.Select(x => (double)x).ToList(), testDoubleList);
        }
        public void TestToList_ArrayOfBooleans()
        {
            var boolList = new List <bool>();

            boolList.Add(true);
            boolList.Add(false);

            var jsonString = JsonConvert.SerializeObject(boolList);
            var json       = JsonConvert.DeserializeObject(jsonString);

            var converter = new FilterBindingModelConverter();
            var testList  = converter.ToList(json as JArray);

            Assert.IsInstanceOfType(testList, typeof(List <bool>));
            var testBoolList = (List <bool>)testList;

            CollectionAssert.AreEqual(boolList, testBoolList);
        }
        public void TestToList_ArrayOfDates()
        {
            var dateList = new List <DateTime>();

            dateList.Add(DateTime.UtcNow);
            dateList.Add(DateTime.UtcNow.AddDays(1.0));

            var jsonString = JsonConvert.SerializeObject(dateList);
            var json       = JsonConvert.DeserializeObject(jsonString);

            var converter = new FilterBindingModelConverter();
            var testList  = converter.ToList(json as JArray);

            Assert.IsInstanceOfType(testList, typeof(List <DateTime>));
            var testDateList = (List <DateTime>)testList;

            CollectionAssert.AreEqual(dateList, testDateList);
        }
        public void TestToList_ArrayOfStrings()
        {
            var stringList = new List <string>();

            stringList.Add("abc");
            stringList.Add("xyz");

            var jsonString = JsonConvert.SerializeObject(stringList);
            var json       = JsonConvert.DeserializeObject(jsonString);

            var converter = new FilterBindingModelConverter();
            var testList  = converter.ToList(json as JArray);

            Assert.IsInstanceOfType(testList, typeof(List <string>));
            var testStringList = (List <string>)testList;

            CollectionAssert.AreEqual(stringList, testStringList);
        }
        public void TestToList_ArrayOfIntegers()
        {
            var intList = new List <int>();

            intList.Add(1);
            intList.Add(2);

            var jsonString = JsonConvert.SerializeObject(intList);
            var json       = JsonConvert.DeserializeObject(jsonString);

            var converter = new FilterBindingModelConverter();
            var testList  = converter.ToList(json as JArray);

            Assert.IsInstanceOfType(testList, typeof(List <long>));
            var testLongList = (List <long>)testList;

            CollectionAssert.AreEqual(intList.Select(x => (long)x).ToList(), testLongList);
        }
        public void TestCanWrite()
        {
            var converter = new FilterBindingModelConverter();

            Assert.IsFalse(converter.CanWrite);
        }
        public void TestCreate()
        {
            var converter = new FilterBindingModelConverter();

            Assert.IsNotNull(converter.Create(null));
        }