示例#1
0
        public void InvokeAsyncMethodWithGetRequest()
        {
            //Arrange
            RestInvoker target = new RestInvoker();
            StubModule.HaltProcessing = TimeSpan.FromSeconds(0);
            StubModule.GetPerson = false;
            StubModule.TestHarness = new List<Person> { new Person { Id = 1, Email = "*****@*****.**" } };

            RestRequest request = new RestRequest(HttpMethod.GET, new RestUri(_MyUri, "/Person/{id}").SetParameter("id", "1"));

            //Act
            target.InvokeAsync(request).ContinueWith(task =>
            {
                using (var actual = task.Result)
                {
                    //Assert
                    Assert.True(StubModule.GetPerson);
                    Assert.True(actual.IsSuccessStatusCode);
                    Assert.NotNull(actual);

                    string content = actual.Body.ReadAsString();

                    Assert.Equal("{\"Id\":1,\"UID\":\"00000000-0000-0000-0000-000000000000\",\"Email\":\"[email protected]\",\"NoOfSiblings\":0,\"DOB\":\"\\/Date(-59011459200000)\\/\",\"IsActive\":false,\"Salary\":0}", content);
                }

            }).Wait();

        }
示例#2
0
        /// <summary>
        /// Metodo que inicializa los procesos
        /// </summary>
        public void Run()
        {
            RestInvoker sendByRestServices = new RestInvoker();

            bool sended = sendByRestServices.SendByRestService(_username, _pass, _pulseToSendByRest);

            if (sended)
            {
                logger.Info("Enviado Exitosamente " + _PulsesRepository.getDBSize());
                deletePulseKeysProcessedByRest();
            }
            else
            {
                logger.Error("Falla al Enviar " + _PulsesRepository.getDBSize() + "los siguientes pulsos ");
            }
        }
示例#3
0
 public AccountController(SignInManager <AppUser> signInManager,
                          UserManager <AppUser> userManager,
                          IIdentityServerInteractionService interaction,
                          IAuthenticationSchemeProvider schemeProvider,
                          IClientStore clientStore,
                          IEventService events,
                          RestInvoker restInvoker)
 {
     _userManager    = userManager;
     _interaction    = interaction;
     _schemeProvider = schemeProvider;
     _clientStore    = clientStore;
     _events         = events;
     _signInManager  = signInManager;
     _restInvoker    = restInvoker;
 }
示例#4
0
 public ServerClient()
 {
     _invoker = new RestInvoker <IServiceToClient>();
     this._invoker.SetCallbackReceiver(this);
     this._invoker.Error += new EventHandler(_invoker_Error);
 }
 public HomeController(ILogger <HomeController> logger, RestInvoker restInvoker)
 {
     _logger      = logger;
     _restInvoker = restInvoker;
 }
示例#6
0
        public void Patch_overload1()
        {
            //Arrange
            RestInvoker target = new RestInvoker(_MyUri.OriginalString);
            StubModule.HaltProcessing = TimeSpan.FromSeconds(0);
            StubModule.PatchPerson = false;
            StubModule.TestHarness = new List<Person> { new Person { Id = 1, Email = "*****@*****.**" } };

            var uri = new RestUri(_MyUri, "/Person/{id}").SetParameter("id", "1");
            var contentType = ContentType.ApplicationX_WWW_Form_UrlEncoded;
            var body = new RestObjectRequestBody<Person>(new Person { Id = 1, Email = "*****@*****.**" });

            //Act
            using (RestResponse actual = target.Patch(uri, body, contentType))
            {
                //Assert
                Assert.True(StubModule.PatchPerson);
                Assert.NotNull(actual);
                Assert.True(actual.IsSuccessStatusCode);

                var person = StubModule.TestHarness.Where(x => x.Id == 1).FirstOrDefault();
                Assert.NotNull(person);
                Assert.Equal("*****@*****.**", person.Email);
            }
        }
示例#7
0
        public void PatchAsync_overload5()
        {
            //Arrange
            RestInvoker target = new RestInvoker(_MyUri.OriginalString);
            StubModule.HaltProcessing = TimeSpan.FromSeconds(0);
            StubModule.PatchPerson = false;
            StubModule.TestHarness = new List<Person> { new Person { Id = 1, Email = "*****@*****.**" } };

            var body = new RestObjectRequestBody<Person>(new Person { Id = 1, Email = "*****@*****.**" });

            //Act
            target.PatchAsync("/Person/{id}", new { id = 1 }, body, ContentType.ApplicationX_WWW_Form_UrlEncoded).ContinueWith(task =>
            {
                using (RestResponse actual = task.Result)
                {
                    //Assert
                    Assert.True(StubModule.PatchPerson);
                    Assert.NotNull(actual);
                    Assert.True(actual.IsSuccessStatusCode);

                    var person = StubModule.TestHarness.Where(x => x.Id == 1).FirstOrDefault();
                    Assert.NotNull(person);
                    Assert.Equal("*****@*****.**", person.Email);
                }
            }).Wait();
        }
示例#8
0
        public void InvokeOfT_MethodWithGetRequest()
        {
            //Arrange
            RestInvoker target = new RestInvoker();
            StubModule.HaltProcessing = TimeSpan.FromSeconds(0);
            StubModule.GetPerson = false;
            StubModule.TestHarness = new List<Person> { new Person { Id = 1, Email = "*****@*****.**" } };

            RestRequest request = new RestRequest(HttpMethod.GET, new RestUri(_MyUri, "/Person/{id}").SetParameter("id", "1"));

            //Act
            using (RestResponse<Person> actual = target.Invoke<Person>(request))
            {
                //Assert
                Assert.True(StubModule.GetPerson);
                Assert.NotNull(actual);
                Assert.NotNull(actual.Data);
                Assert.True(actual.IsSuccessStatusCode);

                Person person = actual.Data;

                Assert.Equal("*****@*****.**", person.Email);
            }
        }
示例#9
0
        public void Delete_overload3()
        {
            //Arrange
            RestInvoker target = new RestInvoker(_MyUri.OriginalString);
            StubModule.HaltProcessing = TimeSpan.FromSeconds(0);
            StubModule.DeletePerson = false;
            StubModule.TestHarness = new List<Person> { new Person { Id = 1, Email = "*****@*****.**" } };

            //Act
            using (RestResponse actual = target.Delete("/Person/{id}", new { id = 1 }))
            {
                //Assert
                Assert.True(StubModule.DeletePerson);
                Assert.NotNull(actual);
                Assert.True(actual.IsSuccessStatusCode);
                var person = StubModule.TestHarness.Where(x => x.Id == 1).FirstOrDefault();
                Assert.Null(person);
            }
        }
示例#10
0
        public void PutAsync_overload2()
        {
            //Arrange
            RestInvoker target = new RestInvoker(_MyUri.OriginalString);
            StubModule.HaltProcessing = TimeSpan.FromSeconds(0);
            StubModule.PutPerson = false;
            StubModule.TestHarness = new List<Person> { new Person { Id = 1, Email = "*****@*****.**" } };

            var uri = new RestUri(_MyUri, "/Person/{id}").SetParameter("id", "1");
            var body = new RestObjectRequestBody<Person>(new Person { Id = 1, Email = "*****@*****.**" });

            //Act
            target.PutAsync(uri, body).ContinueWith(task =>
            {
                using (RestResponse actual = task.Result)
                {
                    //Assert
                    Assert.True(StubModule.PutPerson);
                    Assert.NotNull(actual);
                    Assert.True(actual.IsSuccessStatusCode);

                    var person = StubModule.TestHarness.Where(x => x.Id == 1).FirstOrDefault();
                    Assert.NotNull(person);
                    Assert.Equal("*****@*****.**", person.Email);
                }
            }).Wait();
        }
示例#11
0
        public void Post_overload5()
        {
            //Arrange
            RestInvoker target = new RestInvoker(_MyUri.OriginalString);
            StubModule.HaltProcessing = TimeSpan.FromSeconds(0);
            StubModule.PostPerson = false;
            StubModule.TestHarness = new List<Person> { new Person { Id = 1, Email = "*****@*****.**" } };

            var body = new RestObjectRequestBody<Person>(new Person { Id = 2, Email = "*****@*****.**" });

            //Act
            using (RestResponse actual = target.Post("/Person", new { mode = "test" }, body, ContentType.ApplicationX_WWW_Form_UrlEncoded))
            {
                //Assert
                Assert.Equal("?mode=test", actual.ResponseUri.Query);
                Assert.True(StubModule.PostPerson);
                Assert.NotNull(actual);
                Assert.True(actual.IsSuccessStatusCode);
                var person = StubModule.TestHarness.Where(x => x.Id == 2).FirstOrDefault();
                Assert.NotNull(person);
                Assert.Equal("*****@*****.**", person.Email);
            }
        }
示例#12
0
        public void Get_overload3()
        {
            //Arrange
            RestInvoker target = new RestInvoker(_MyUri.OriginalString);
            StubModule.HaltProcessing = TimeSpan.FromSeconds(0);
            StubModule.GetPerson = false;
            StubModule.TestHarness = new List<Person> { new Person { Id = 1, Email = "*****@*****.**" } };

            //Act
            using (RestResponse actual = target.Get("/Person/{id}", new { id = 1 }))
            {
                //Assert
                Assert.True(StubModule.GetPerson);
                Assert.True(actual.IsSuccessStatusCode);
                Assert.NotNull(actual);

                string content = actual.Body.ReadAsString();

                Assert.Equal("{\"Id\":1,\"UID\":\"00000000-0000-0000-0000-000000000000\",\"Email\":\"[email protected]\",\"NoOfSiblings\":0,\"DOB\":\"\\/Date(-59011459200000)\\/\",\"IsActive\":false,\"Salary\":0}", content);
            }
        }
示例#13
0
        public void RestInvokerAddHeader_overload2()
        {
            //Arrange
            RestInvoker target = new RestInvoker(_MyUri.OriginalString);
            target.AddHeader(HttpRequestHeader.AcceptCharset, "utf-8");
            StubModule.Cookie = null;
            StubModule.HaltProcessing = TimeSpan.FromSeconds(0);
            StubModule.GetPerson = false;
            StubModule.TestHarness = new List<Person> { new Person { Id = 1, Email = "*****@*****.**" } };

            //Act
            using (RestResponse actual = target.Get("/Person/{id}", new { id = 1 }))
            {
                //Assert
                Assert.NotNull(StubModule.RequestHeaders);
                Assert.Equal("utf-8", StubModule.RequestHeaders["Accept-Charset"].FirstOrDefault());
            }

        }
示例#14
0
        public void RestInvokerAddCookie_overload2()
        {
            //Arrange
            RestInvoker target = new RestInvoker(_MyUri.OriginalString);
            target.AddCookie(new System.Net.Cookie("cookie1", "cookieValue1"));
            StubModule.Cookie = null;
            StubModule.HaltProcessing = TimeSpan.FromSeconds(0);
            StubModule.GetPerson = false;
            StubModule.TestHarness = new List<Person> { new Person { Id = 1, Email = "*****@*****.**" } };

            //Act
            using (RestResponse actual = target.Get("/Person/{id}", new { id = 1 }))
            {
                //Assert
                Assert.NotNull(StubModule.Cookie);
                Assert.Equal("cookieValue1", StubModule.Cookie["cookie1"]);
            }

        }
 public WeatherForecastController(ILogger <WeatherForecastController> logger, RestInvoker restInvoker)
 {
     _logger      = logger;
     _restInvoker = restInvoker;
 }
示例#16
0
        public void Put_overload4()
        {
            //Arrange
            RestInvoker target = new RestInvoker(_MyUri.OriginalString);
            StubModule.HaltProcessing = TimeSpan.FromSeconds(0);
            StubModule.PutPerson = false;
            StubModule.TestHarness = new List<Person> { new Person { Id = 1, Email = "*****@*****.**" } };

            var body = new RestObjectRequestBody<Person>(new Person { Id = 1, Email = "*****@*****.**" });

            //Act
            using (RestResponse actual = target.Put("/Person/1", body))
            {
                //Assert
                Assert.True(StubModule.PutPerson);
                Assert.NotNull(actual);
                Assert.True(actual.IsSuccessStatusCode);

                var person = StubModule.TestHarness.Where(x => x.Id == 1).FirstOrDefault();
                Assert.NotNull(person);
                Assert.Equal("*****@*****.**", person.Email);
            }
        }
示例#17
0
        public void DeleteAsync_overload1()
        {
            //Arrange
            RestInvoker target = new RestInvoker();
            StubModule.HaltProcessing = TimeSpan.FromSeconds(0);
            StubModule.DeletePerson = false;
            StubModule.TestHarness = new List<Person> { new Person { Id = 1, Email = "*****@*****.**" } };

            //Act
            target.DeleteAsync(new RestUri(_MyUri, "/Person/{id}").SetParameter("id", "1")).ContinueWith(task =>
            {
                using (RestResponse actual = task.Result)
                {
                    //Assert
                    Assert.True(StubModule.DeletePerson);
                    Assert.NotNull(actual);
                    Assert.True(actual.IsSuccessStatusCode);
                    var person = StubModule.TestHarness.Where(x => x.Id == 1).FirstOrDefault();
                    Assert.Null(person);
                }

            }).Wait();

        }