Esempio n. 1
0
        public void ConvertDataTable__handle_empty()
        {
            // ARRANGE
            var j = new ToJson_Accessor();

            //ACT
            var result = j.ConvertDataTable(new DataTable());

            //ASSERT
            result.Should().Contain("[]");
        }
Esempio n. 2
0
        public void ConvertDataTable__converts_datatable_with_one_row()
        {
            // ARRANGE
            var j = new ToJson_Accessor();
            var dt = new DataTable();

            dt.Columns.Add("id", typeof(int));
            dt.Columns.Add("thefoo", typeof(string));

            var row = dt.NewRow();
            row[0] = 5;
            row[1] = "bort";
            dt.Rows.Add(row);

            //ACT
            var result = j.ConvertDataTable(dt);

            //ASSERT
            result.Should().Contain(@"[{").And.Contain("\"id\":").And.Contain("\"thefoo\":").And.Contain("\"bort\"").And.Contain(@"}]");
        }
Esempio n. 3
0
        public void ConvertDataTable__converts_datatable_with_multiple_rows()
        {
            // ARRANGE
            var j = new ToJson_Accessor();
            var dt = new DataTable();

            dt.Columns.Add("id", typeof(int));
            dt.Columns.Add("thefoo", typeof(string));

            for (int i = 0; i < 5; i++) {
                var row = dt.NewRow();
                row[0] = i;
                row[1] = "bort {0}".Inject(i);
                dt.Rows.Add(row);
            }

            //ACT
            var result = j.ConvertDataTable(dt);

            //ASSERT
            result.Should().Contain(@"[{").And.Contain("},{").And.Contain(@"}]").And.Contain("bort 3");
        }
Esempio n. 4
0
        public void ConvertDataTable__handle_empty_2()
        {
            // ARRANGE
            var j = new ToJson_Accessor();
            var dt = new DataTable();

            dt.Columns.Add("id", typeof(int));
            dt.Columns.Add("thefoo", typeof(string));

            //ACT
            var result = j.ConvertDataTable(new DataTable());

            //ASSERT
            result.Should().Contain("[]");
        }
Esempio n. 5
0
        public void Convert__produces_valid_json_for_datatable_one_row_and_recognizes_DBNull()
        {
            // ARRANGE
            var j = new ToJson_Accessor();
            var dt = new DataTable();
            var serializer = new JavaScriptSerializer();

            dt.Columns.Add("id", typeof(int));
            dt.Columns.Add("thefoo", typeof(string));

            var row = dt.NewRow();
            row[0] = DBNull.Value;
            row[1] = "bort";
            dt.Rows.Add(row);

            //ACT
            var jsonString = j.ConvertDataTable(dt);
            var result = serializer.DeserializeObject(jsonString);

            //ASSERT
            jsonString.Should().Contain(": null");
            result.Should().NotBeNull();
        }
Esempio n. 6
0
        public void Convert__produces_valid_json_for_datatable_multiple_rows()
        {
            // ARRANGE
            var j = new ToJson_Accessor();
            var dt = new DataTable();
            var serializer = new JavaScriptSerializer();

            dt.Columns.Add("id", typeof(int));
            dt.Columns.Add("thefoo", typeof(string));

            for (int i = 0; i < 5; i++) {
                var row = dt.NewRow();
                row[0] = i;
                row[1] = "bort {0}".Inject(i);
                dt.Rows.Add(row);
            }

            //ACT
            var jsonString = j.ConvertDataTable(dt);
            var result = serializer.DeserializeObject(jsonString) as object[];

            //ASSERT
            result.Should().NotBeNull();
            result.Should().HaveCount(5);
        }