public void ConvertDataTable__handle_empty() { // ARRANGE var j = new ToJson_Accessor(); //ACT var result = j.ConvertDataTable(new DataTable()); //ASSERT result.Should().Contain("[]"); }
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("[]"); }
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(@"}]"); }
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"); }
public void Convert__returns_numeric_values_value(Type type) { // ARRANGE var j = new ToJson_Accessor(); //ACT var result = j.Convert("bort", 99845, type); //ASSERT result.Should().Contain("bort").And.Contain("99845").And.Contain(":").And.NotContain("'99845").And.NotContain("\"99845"); }
public void Convert__returns_key_value_for_string() { // ARRANGE var j = new ToJson_Accessor(); //ACT var result = j.Convert("bort", "mork", typeof(string)); //ASSERT result.Should().Contain("bort").And.Contain("mork").And.Contain(":"); }
public void Convert__returns_key_value_for_null_value(Type theType) { // ARRANGE var j = new ToJson_Accessor(); //ACT var result = j.Convert("bort", null, theType); //ASSERT result.Should().Contain("bort").And.Contain("null").And.NotContain("'null").And.NotContain("\"null"); }
public void Convert__returns_float_value() { // ARRANGE var j = new ToJson_Accessor(); //ACT var result = j.Convert("bort", 998435.0, typeof(float)); //ASSERT result.Should().Contain("bort").And.Contain("998435").And.Contain(":").And.NotContain("'998435").And.NotContain("\"998435"); }
public void Convert__returns_empty_string_if_key_is_null_or_empty(string key) { // ARRANGE var j = new ToJson_Accessor(); //ACT var result = j.Convert(key, 54, typeof(int)); //ASSERT result.Should().NotBeNull(); result.Should().BeBlank(); }
public void Convert__escapes_delimiter() { // ARRANGE var j = new ToJson_Accessor(); //ACT var result = j.Convert("bort", "bo\"rt", typeof(string)); //ASSERT result.Should().Contain("bort").And.Contain(@"bo\""rt").And.Contain(":").And.NotContain("bo\"rt"); }
public void Convert__returns_boolean_value() { // ARRANGE var j = new ToJson_Accessor(); //ACT var result = j.Convert("bort", true, typeof(bool)); //ASSERT result.Should().Contain("bort").And.Contain("true").And.Contain(":").And.NotContain("'true").And.NotContain("\"true"); }
public void Convert__produces_valid_json_for_long_text() { // ARRANGE var j = new ToJson_Accessor(); var serializer = new JavaScriptSerializer(); var longTest = Assembly.GetExecutingAssembly().LoadEmbeddedFile("ToJsonTest.longtext"); //ACT string jsonString = j.Convert("bort", longTest, typeof(string)); var result = serializer.DeserializeObject("{" + jsonString + "}"); //ASSERT result.Should().NotBeNull(); }
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(); }
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); }
public void Convert__produces_valid_json(object value, Type type) { // ARRANGE var j = new ToJson_Accessor(); var serializer = new JavaScriptSerializer(); //ACT string jsonString = j.Convert("bort", value, type); var result = serializer.DeserializeObject("{" + jsonString + "}"); //ASSERT result.Should().NotBeNull(); }
public void Convert__maintains_comma() { // ARRANGE var j = new ToJson_Accessor(); //ACT var result = j.Convert("bort", 4.6, typeof(double)); //ASSERT result.Should().Contain("bort").And.Contain("4.6").And.Contain(":").And.NotContain("'4.6").And.NotContain("\"4.6"); }
public void Convert__returns_date_value() { // ARRANGE var j = new ToJson_Accessor(); //ACT var result = j.Convert("bort", new DateTime(2011, 5, 1, 19, 01, 10), typeof(DateTime)); //ASSERT result.Should().Contain("bort").And.Contain("2011-05-01T19-01-10Z"); }
public void Convert__escapes_column_name() { // ARRANGE var j = new ToJson_Accessor(); //ACT var result = j.Convert("bort", "weeeeeeeee", typeof(string)); //ASSERT result.Should().Contain("\"bort\":"); }