public void Should_Execute_RestRequest_With_POST_And_GenericType_And_Success() { // arrange var client = new RestClientAutolog("https://reqres.in/api/users"); client.Configuration.RequestJsonBlacklist = new string[] { "*job" }; var restRequest = new RestRequest(Method.POST); restRequest.AddHeader("X-Forwarded-For", "127.0.0.1"); restRequest.AddJsonBody(new { name = "Someone", job = "Engineer" }); // act var restResponse = client.Execute <UserData>(restRequest); // assert Assert.Equal(DefaultMessage, client.Configuration.MessageTemplateForError); Assert.Equal(DefaultMessage, client.Configuration.MessageTemplateForSuccess); Assert.Null(client.Configuration.LoggerConfiguration); Assert.Equal("reqres.in", client.BaseUrl.Host); Assert.Equal("Engineer", restResponse.Data.job); Assert.Equal("Someone", restResponse.Data.name); Assert.Equal(201, (int)restResponse.StatusCode); Assert.True(restResponse.IsSuccessful); }
public void Should_Execute_RestRequest_With_ValidJson_Only_With_ContentType() { // arrange var client = new RestClientAutolog("http://pruu.herokuapp.com/dump/restsharpAutoLog-test"); var restRequest = new RestRequest(Method.POST); restRequest.AddParameter("", "", ParameterType.RequestBody); restRequest.Parameters.FirstOrDefault().ContentType = "application/json"; // act var restResponse = client.Execute(restRequest); // assert Assert.Equal(DefaultMessage, client.Configuration.MessageTemplateForError); Assert.Equal(DefaultMessage, client.Configuration.MessageTemplateForSuccess); Assert.Null(client.Configuration.LoggerConfiguration); Assert.Equal("pruu.herokuapp.com", client.BaseUrl.Host); Assert.Equal(Method.POST, restResponse.Request.Method); Assert.Equal(200, (int)restResponse.StatusCode); Assert.Equal("OK", restResponse.Content); Assert.Single(restResponse.Request.Parameters); Assert.Equal("", restResponse.Request.Parameters.FirstOrDefault().Name); Assert.Equal("", restResponse.Request.Parameters.FirstOrDefault().Value); Assert.Equal("application/json", restResponse.Request.Parameters.FirstOrDefault().ContentType); Assert.True(restResponse.IsSuccessful); }
public void Should_Execute_RestRequest_With_GenericType_And_Success() { // arrange var client = new RestClientAutolog("https://reqres.in/api/users/1"); var restRequest = new RestRequest(Method.GET); restRequest.AddQueryParameter("somequery", "test1"); restRequest.AddQueryParameter("somequery", "test2"); restRequest.AddQueryParameter("somequery2", "test3"); restRequest.AddQueryParameter("RequestKey", "123456"); restRequest.AddQueryParameter("AccountId", "acc_id"); // act var restResponse = client.Execute <User>(restRequest); // assert Assert.Equal(DefaultMessage, client.Configuration.MessageTemplateForError); Assert.Equal(DefaultMessage, client.Configuration.MessageTemplateForSuccess); Assert.Null(client.Configuration.LoggerConfiguration); Assert.Equal("reqres.in", client.BaseUrl.Host); Assert.Equal(1, restResponse.Data.Data.id); Assert.Equal("George", restResponse.Data.Data.first_name); Assert.Equal(200, (int)restResponse.StatusCode); Assert.True(restResponse.IsSuccessful); }
public void Should_Execute_RestRequest_With_Error() { // arrange var configuration = new RestClientAutologConfiguration() { MessageTemplateForError = "Error", MessageTemplateForSuccess = "Success", LoggerConfiguration = new LoggerConfiguration() }; var client = new RestClientAutolog("http://www.bing.com/", configuration) { Timeout = 1 }; var restRequest = new RestRequest(Method.GET); // act var restResponse = client.Execute(restRequest); // assert Assert.Equal("Error", client.Configuration.MessageTemplateForError); Assert.Equal("Success", client.Configuration.MessageTemplateForSuccess); Assert.NotNull(client.Configuration.LoggerConfiguration); Assert.Equal("http://www.bing.com/", client.BaseUrl.AbsoluteUri); Assert.NotNull(restResponse.ErrorException); Assert.NotNull(restResponse.ErrorMessage); Assert.False(restResponse.IsSuccessful); }
static void Main(string[] args) { var loggerConfiguration = new LoggerConfiguration() .MinimumLevel.Debug() .MinimumLevel.Override("Microsoft", LogEventLevel.Warning) .MinimumLevel.Override("System", LogEventLevel.Error) .Enrich.FromLogContext() .Enrich.WithMachineName() .Enrich.WithProperty("Domain", "MyTeamRS") .Enrich.WithProperty("Application", "MyProjectRS") .WriteTo.Seq("http://localhost:5341") .WriteTo.Console(); Log.Logger = loggerConfiguration.CreateLogger(); //RestClientAutologConfiguration restClientAutologConfiguration = new RestClientAutologConfiguration() //{ // LoggerConfiguration = loggerConfiguration //}; RestClientAutolog client = new RestClientAutolog("http://pruu.herokuapp.com"); client.AddDefaultHeader("DefaultHeaderTest", "SomeValue"); client.Configuration.RequestJsonBlacklist = new string[] { "*password" }; RestRequest request = new RestRequest("dump/{name}", Method.POST); request.AddHeader("RequestCustomHeader", "SomeValue2"); request.AddHeader("RequestCustomHeader", "SomeValue3"); request.AddHeader("RequestKey", "keykeykey"); request.AddUrlSegment("name", "RestsharpAutoLog"); request.AddQueryParameter("CustomQuery", "SomeValue3"); request.AddQueryParameter("CustomQuery", "SomeValue2"); request.AddQueryParameter("CustomQuery1", "SomeValue1"); request.AddQueryParameter("CustomQuery2", ""); request.AddQueryParameter("CustomQuery3", null); request.AddJsonBody(new { TestOne = 123, TestTwo = "SomeValueBody", Password = "******", Test = new { Password = 123 } }); var response = client.Execute(request); Console.ReadKey(); }
public void Should_Execute_RestRequest_With_Empty_X_Www_Form_Url_Encoded() { // arrange var client = new RestClientAutolog("http://pruu.herokuapp.com/dump/restsharpAutoLog-test"); var restRequest = new RestRequest(Method.POST); restRequest.AddHeader("Content-Type", "application/x-www-form-urlencoded"); restRequest.AddParameter("", "", ParameterType.RequestBody); // act var restResponse = client.Execute(restRequest); // assert Assert.Equal(DefaultMessage, client.Configuration.MessageTemplateForError); Assert.Equal(DefaultMessage, client.Configuration.MessageTemplateForSuccess); Assert.Null(client.Configuration.LoggerConfiguration); Assert.Equal("pruu.herokuapp.com", client.BaseUrl.Host); Assert.Equal("OK", restResponse.Content); Assert.Equal(200, (int)restResponse.StatusCode); Assert.True(restResponse.IsSuccessful); }
public void Should_Execute_RestRequest_With_GenericType_And_Success() { // arrange var client = new RestClientAutolog("http://md5.jsontest.com/"); var restRequest = new RestRequest(Method.GET); restRequest.AddQueryParameter("text", "Thiago Barradas"); // act var restResponse = client.Execute <MD5>(restRequest); // assert Assert.Equal(DefaultMessage, client.Configuration.MessageTemplateForError); Assert.Equal(DefaultMessage, client.Configuration.MessageTemplateForSuccess); Assert.Null(client.Configuration.LoggerConfiguration); Assert.Equal("http://md5.jsontest.com/", client.BaseUrl.AbsoluteUri); Assert.Equal("Thiago Barradas", restResponse.Data.Original); Assert.Equal("ad5879ef35a1e0156d8cb4809df3d69d", restResponse.Data.Md5); Assert.Equal(200, (int)restResponse.StatusCode); Assert.True(restResponse.IsSuccessful); }