public async Task Requests_CheckHttpRequestMessageAndResponseDeserialization_HttpPostXml() { var testObject = new SerializerTest { TestField = "testMessage" }; var client = new HttpClient(new BulkServiceClientRouteHandler(r => { // the v should be removed... Assert.AreEqual(r.RequestUri.ToString(), "http://localhost:1899/services/data/32/brad"); Assert.IsNotNull(r.Headers.UserAgent); Assert.AreEqual(r.Headers.UserAgent.ToString(), UserAgent + "/v32"); Assert.IsNotNull(r.Headers.GetValues("X-SFDC-Session")); Assert.IsTrue(r.Headers.GetValues("X-SFDC-Session").Count() == 1); Assert.AreEqual(r.Headers.GetValues("X-SFDC-Session").First(), "accessToken"); // check the object is serialized as expected var serializedPayload = MimicSerialization(testObject); var stringContent = r.Content.ReadAsStringAsync().Result; Assert.AreEqual(serializedPayload, stringContent); }, testObject)); // pass in the object to be returned (Same object roundtripped here for simplicity) using (var httpClient = new XmlHttpClient("http://localhost:1899", "v32", "accessToken", client)) { var result = await httpClient.HttpPostAsync <SerializerTest>(testObject, "brad"); Assert.AreEqual(testObject.TestField, result.TestField); } }
public async void Requests_CheckHttpRequestMessageAndResponseDeserialization_HttpPostXml() { var testObject = new SerializerTest {TestField = "testMessage"}; var client = new HttpClient(new BulkServiceClientRouteHandler(r => { // the v should be removed... Assert.AreEqual(r.RequestUri.ToString(), "http://localhost:1899/services/data/32/brad"); Assert.IsNotNull(r.Headers.UserAgent); Assert.AreEqual(r.Headers.UserAgent.ToString(), UserAgent + "/v32"); Assert.IsNotNull(r.Headers.GetValues("X-SFDC-Session")); Assert.IsTrue(r.Headers.GetValues("X-SFDC-Session").Count() == 1); Assert.AreEqual(r.Headers.GetValues("X-SFDC-Session").First(), "accessToken"); // check the object is serialized as expected var serializedPayload = MimicSerialization(testObject); var stringContent = r.Content.ReadAsStringAsync().Result; Assert.AreEqual(serializedPayload, stringContent); }, testObject)); // pass in the object to be returned (Same object roundtripped here for simplicity) using (var httpClient = new XmlHttpClient("http://localhost:1899", "v32", "accessToken", client)) { var result = await httpClient.HttpPostAsync<SerializerTest>(testObject, "brad"); Assert.AreEqual(testObject.TestField, result.TestField); } }
public void Should_Not_Serialize_When_Default_Values_Specified() { var o = new SerializerTest() { Id = 1, Message = "Test" }; // when serialized it should produce a document {"Id": 1} var o1 = BsonSerializer.Serialize(o); // create a object with value Id = 1 var s1 = BsonSerializer.Serialize(new { Id = 1 }); // both should be equal Assert.Equal(o1, s1); }
public void DoesntSerializePropertyWithDefaultValueAndShouldSerialize() { // create an instance with the following values // Id = 1 // Message = "Test" // MagicDate = DateTime.MinValue (0001-01-01) // ComplexProperty = 3 var o = new SerializerTest() { Id = 1, Message = "Test", ComplexProperty = 3 }; // when serialized it should produce a document {"Id": 1} var o1 = BsonSerializer.Serialize(o); // create a object with value Id = 1 var s1 = BsonSerializer.Serialize(new { Id = 1 }); // both should be equal Assert.Equal(o1, s1); }