public void GetHttpWebRequest_paramsRequest_Length_0() { // Arrang API_Yandex_Direct.Get.AdGroup.ParamsRequest paramsRequest = new API_Yandex_Direct.Get.AdGroup.ParamsRequest(new API_Yandex_Direct.Get.AdGroup.FieldNamesEnum[] { }) { SelectionCriteria = new API_Yandex_Direct.Get.AdGroup.AdGroupsSelectionCriteria() }; RequestObjectV5 requestObjectV5 = new RequestObjectV5() { Method = "get", Params = paramsRequest }; string[] Headers = new string[] { }; string setBodyRequest = ""; string expectedSetBodyRequest = "ParamsRequest.FieldNames.Length = 0 не допустимо"; // Act HttpWebRequest httpWebRequest = GetHttpWebRequest(requestObjectV5, UrlDirect, false, ref Headers, ref setBodyRequest); // Assert Assert.AreEqual(expectedSetBodyRequest, setBodyRequest); Assert.IsNull(httpWebRequest); }
public void ParamsRequestBase_Get_AdGroup() { // Arrang string[] expected = new string[] { "CampaignId", "Id", "Name", "NegativeKeywords", "RegionIds", "RestrictedRegionIds" }; // Act API_Yandex_Direct.Get.AdGroup.ParamsRequest paramsRequest = new API_Yandex_Direct.Get.AdGroup.ParamsRequest( new API_Yandex_Direct.Get.AdGroup.FieldNamesEnum[] { API_Yandex_Direct.Get.AdGroup.FieldNamesEnum.CampaignId, API_Yandex_Direct.Get.AdGroup.FieldNamesEnum.Id, API_Yandex_Direct.Get.AdGroup.FieldNamesEnum.Name, API_Yandex_Direct.Get.AdGroup.FieldNamesEnum.NegativeKeywords, API_Yandex_Direct.Get.AdGroup.FieldNamesEnum.RegionIds, API_Yandex_Direct.Get.AdGroup.FieldNamesEnum.RestrictedRegionIds, }); // Assert CollectionAssert.AreEqual(expected, paramsRequest.FieldNames); }
///Этот тест выявил проблемму низкой скорости а обработке запроса рttpWebRequest.GetRequestStream() ///решением стало добавление строчек: ///рttpWebRequest.Proxy = null; ///рttpWebRequest.AllowAutoRedirect = false; ///рttpWebRequest.ServicePoint.ConnectionLimit = 5; public void GetHttpWebRequest_Base_for() { // Arrang API_Yandex_Direct.Get.AdGroup.ParamsRequest paramsRequest = new API_Yandex_Direct.Get.AdGroup.ParamsRequest( new API_Yandex_Direct.Get.AdGroup.FieldNamesEnum[] { API_Yandex_Direct.Get.AdGroup.FieldNamesEnum.Id }) { SelectionCriteria = new API_Yandex_Direct.Get.AdGroup.AdGroupsSelectionCriteria() }; RequestObjectV5 requestObjectV5 = new RequestObjectV5() { Method = "get", Params = paramsRequest }; string[] Headers = new string[] { }; string setBodyRequest = ""; string expectedSetBodyRequest = "{\"method\":\"get\",\"params\":{\"SelectionCriteria\":{},\"FieldNames\":[\"Id\"]}}"; string expectedHeaders = @"Authorization: Bearer Tokin1 Client-Login: Tester Accept-Language: ru Content-Type: application/json; charset=utf-8 Host: api.direct.yandex.com Content-Length: 70 Connection: Keep-Alive "; // Act HttpWebRequest httpWebRequest = GetHttpWebRequest(requestObjectV5, UrlDirect, false, ref Headers, ref setBodyRequest); for (int i = 0; i < 4; i++) { httpWebRequest = GetHttpWebRequest(requestObjectV5, UrlDirect, false, ref Headers, ref setBodyRequest); } string s = httpWebRequest.Headers.ToString(); // Assert Assert.AreEqual(expectedSetBodyRequest, setBodyRequest); Assert.AreEqual(expectedHeaders, httpWebRequest.Headers.ToString()); }