예제 #1
0
        public void ActivateShopWithoutForcing_When_AlreadyActive_ReturnsNoContent()
        {
            var request  = ShopRequestHelper.ActivateShop(EXISTING_SHOP, false);
            var response = this.restClient.Execute(request);

            Assert.AreEqual(HttpStatusCode.NoContent, response.StatusCode);
        }
예제 #2
0
        public void CreateShop_When_NoShopSent_ReturnsBadRequest()
        {
            var request  = ShopRequestHelper.CreateShop(null);
            var response = this.restClient.Execute <ShopResponse>(request);

            Assert.AreEqual(HttpStatusCode.BadRequest, response.StatusCode);
        }
예제 #3
0
        public void DeactivateShop_When_Active_ReturnsNoContent()
        {
            var request  = ShopRequestHelper.DeactivateShop(EXISTING_SHOP);
            var response = this.restClient.Execute(request);

            Assert.AreEqual(HttpStatusCode.NoContent, response.StatusCode);
        }
예제 #4
0
        public void ActivateShop_When_ShopDoesNotExist_ReturnsNotFound()
        {
            var request  = ShopRequestHelper.ActivateShop(UNEXISTING_SHOP, null);
            var response = this.restClient.Execute(request);

            Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode);
        }
예제 #5
0
        public void GetShop_When_BookDoesntExist_Returns404()
        {
            var request  = ShopRequestHelper.GetShop(UNEXISTING_SHOP);
            var response = this.restClient.Execute(request);

            Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode);
        }
예제 #6
0
        public void ActivateShopWithoutForceParameter_When_AnotherActive_ReturnsConflict()
        {
            var id       = this.GetTestShop();
            var request  = ShopRequestHelper.ActivateShop(id, null);
            var response = this.restClient.Execute(request);

            Assert.AreEqual(HttpStatusCode.Conflict, response.StatusCode);
        }
예제 #7
0
        public void ActivateShopForcing_When_AnotherActive_ReturnsNoContent()
        {
            var id       = this.GetTestShop();
            var request  = ShopRequestHelper.ActivateShop(id, true);
            var response = this.restClient.Execute(request);

            Assert.AreEqual(HttpStatusCode.NoContent, response.StatusCode);
        }
예제 #8
0
        private string GetTestShop()
        {
            var request  = ShopRequestHelper.GetAllShops();
            var response = this.restClient.Execute <List <ShopResponse> >(request);
            var testShop = response.Data.First(x => x.Id.StartsWith("shop_"));

            return(testShop.Id);
        }
예제 #9
0
        public void GetShop_When_ShopExists_Returns200()
        {
            var request  = ShopRequestHelper.GetShop(EXISTING_SHOP);
            var response = this.restClient.Execute <ShopResponse>(request);

            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.NotNull(response.Data);
            Assert.AreEqual(EXISTING_SHOP, response.Data.Id);
        }
예제 #10
0
        public void GetAllShops_When_ThereAreShops_Returns200()
        {
            var request  = ShopRequestHelper.GetAllShops();
            var response = this.restClient.Execute <List <ShopResponse> >(request);

            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.NotNull(response.Data);
            Assert.True(response.Data.Count > 0);
        }
예제 #11
0
        public void DeleteShop_When_ShopDeleted_ReturnsNoContent()
        {
            var id = this.GetTestShop();

            var request  = ShopRequestHelper.DeleteShop(id);
            var response = this.restClient.Execute <ShopResponse>(request);

            Assert.AreEqual(HttpStatusCode.NoContent, response.StatusCode);
        }
예제 #12
0
        private string CreateShop()
        {
            var shop = new ShopRequest
            {
                Id = $"{shopName}_{new Random().Next()}"
            };
            var request  = ShopRequestHelper.CreateShop(shop);
            var response = this.restClient.Execute <ShopResponse>(request);

            return(response.Data.Id);
        }
예제 #13
0
        private void DeactivateAllShops()
        {
            var request = ShopRequestHelper.GetAllShops();

            request.AddQueryParameter("isActive", "true");
            var response = this.restClient.Execute <List <ShopResponse> >(request);

            response.Data.ForEach(activeShop =>
            {
                var deactivateRequest = ShopRequestHelper.DeactivateShop(activeShop.Id);
                this.restClient.Execute(deactivateRequest);
            });
        }
예제 #14
0
        public void CreateShop_When_ShopAlreadyExists_ReturnsConflict()
        {
            var newShop = new ShopRequest
            {
                Id          = EXISTING_SHOP,
                Name        = "Shop name",
                Description = "Shop description"
            };

            var request  = ShopRequestHelper.CreateShop(newShop);
            var response = this.restClient.Execute <ShopResponse>(request);

            Assert.AreEqual(HttpStatusCode.Conflict, response.StatusCode);
        }
예제 #15
0
        public void UpdateShop_When_ShopDoesNotExist_ReturnsNotFound()
        {
            var ticks       = DateTime.UtcNow.Ticks;
            var updatedShop = new ShopRequest
            {
                Id          = UNEXISTING_SHOP,
                Name        = "Existing name",
                Description = ticks.ToString()
            };

            var request  = ShopRequestHelper.UpdateShop(UNEXISTING_SHOP, updatedShop);
            var response = this.restClient.Execute <ShopResponse>(request);

            Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode);
        }
예제 #16
0
        public void UpdateShop_When_ShopUpdatedWithDifferentId_ReturnsBadRequest()
        {
            var ticks       = DateTime.UtcNow.Ticks;
            var updatedShop = new ShopRequest
            {
                Id          = EXISTING_SHOP + "test",
                Name        = "Existing name",
                Description = ticks.ToString()
            };

            var request  = ShopRequestHelper.UpdateShop(EXISTING_SHOP, updatedShop);
            var response = this.restClient.Execute <ShopResponse>(request);

            Assert.AreEqual(HttpStatusCode.BadRequest, response.StatusCode);
        }
예제 #17
0
        public void CreateShop_When_NewShopCreated_ReturnsCreated()
        {
            var id      = new Random().Next();
            var newShop = new ShopRequest
            {
                Id          = $"shop_{id}",
                Name        = "Shop name",
                Description = "Shop description"
            };

            var request  = ShopRequestHelper.CreateShop(newShop);
            var response = this.restClient.Execute <ShopResponse>(request);

            Assert.AreEqual(HttpStatusCode.Created, response.StatusCode);
            Assert.NotNull(response.Data);
            Assert.AreEqual(newShop.Id, response.Data.Id);
            Assert.AreEqual(newShop.Name, response.Data.Name);
        }
예제 #18
0
        public void UpdateShop_When_ShopUpdated_ReturnsOk()
        {
            var ticks       = DateTime.UtcNow.Ticks;
            var updatedShop = new ShopRequest
            {
                Id          = EXISTING_SHOP,
                Name        = "Existing name",
                Description = ticks.ToString()
            };

            var request  = ShopRequestHelper.UpdateShop(EXISTING_SHOP, updatedShop);
            var response = this.restClient.Execute <ShopResponse>(request);

            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.NotNull(response.Data);
            Assert.AreEqual(updatedShop.Id, response.Data.Id);
            Assert.AreEqual(updatedShop.Name, response.Data.Name);
            Assert.AreEqual(updatedShop.Description, response.Data.Description);
        }
예제 #19
0
 private void DeleteShop(string shopId)
 {
     var request  = ShopRequestHelper.DeleteShop(shopId);
     var response = this.restClient.Execute(request);
 }
예제 #20
0
        public void TearDown()
        {
            var activateRequest = ShopRequestHelper.ActivateShop(EXISTING_SHOP, force: true);

            this.restClient.Execute(activateRequest);
        }