public void TestNotFoundGetItemById()
        {
            // Given
            ItemModel item           = null;
            string    itemId         = "idtest";
            var       mockRepository = new Mock <IItemRepository>();

            mockRepository.Setup(x => x.Find(itemId)).Returns(item);
            var controller = new InventaryController(mockRepository.Object, null);

            // When
            IActionResult result  = controller.GetItemById(itemId);
            var           getItem = result as NotFoundObjectResult;

            //Then
            Assert.IsNotNull(getItem);
            Assert.AreEqual(getItem.StatusCode, 404);
            Assert.AreEqual(getItem.Value, "El elemento no se encuentra en el inventario");
        }
        public void TestGetItemById()
        {
            // Given
            var item = new ItemModel
            {
                Id             = "test",
                Name           = "test",
                Type           = "test",
                ExpirationDate = new DateTime(2022, 6, 15, 13, 45, 30)
            };
            var mockRepository = new Mock <IItemRepository>();

            mockRepository.Setup(x => x.Find(item.Id)).Returns(item);
            var controller = new InventaryController(mockRepository.Object, null);

            // When
            IActionResult result  = controller.GetItemById(item.Id);
            var           getItem = result as OkObjectResult;

            //Then
            Assert.IsNotNull(getItem);
            Assert.AreEqual(getItem.StatusCode, 200);
            Assert.AreEqual(getItem.Value, item);
        }