public void Put()
        {
            // Arrange
            var mock = new Mock<IValuesProvider>();
            var controller = new ValuesController(mock.Object);

            // Act
            controller.Put(5, "value");

            // Assert
        }
        public void Delete()
        {
            // Arrange
            var mock = new Mock<IValuesProvider>();
            var controller = new ValuesController(mock.Object);

            // Act
            controller.Delete(5);

            // Assert
        }
        public void GetById()
        {
            // Arrange
            var mock = new Mock<IValuesProvider>();
            var controller = new ValuesController(mock.Object);

            // Act
            var result = controller.Get(5);

            // Assert
            Assert.AreEqual("value", result);
        }
        public void Get()
        {
            // Arrange
            var mock = new Mock<IValuesProvider>();

            mock.Setup(x => x.GetValues()).Returns(new string[] { "value1", "value2" });
            var controller = new ValuesController(mock.Object);

            // Act
            IEnumerable<string> result = controller.Get();

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(2, result.Count());
            Assert.AreEqual("value1", result.ElementAt(0));
            Assert.AreEqual("value2", result.ElementAt(1));
        }