public void ReturnsNoContentWhenNewItemDoesNitExist()
			{
				const string key = "key";
				const string value = "value";
				const string newKey = "newKey";
				var request = new PutKeyRequestModel { Value = newKey };
				var controller = CreateController(new Dictionary<string, string>(StringComparer.InvariantCultureIgnoreCase) { { key, value } });

				var result = controller.PutKey(key, request);

				var statusCodeResult = Assert.IsAssignableFrom<StatusCodeResult>(result);
				Assert.Equal(HttpStatusCode.NoContent, statusCodeResult.StatusCode);
			}
			public void ReturnsConflictWhenNewItemExists()
			{
				const string key = "key";
				const string newKey = "newKey";
				const string value = "value";
				var controller = CreateController(new Dictionary<string, string>(StringComparer.InvariantCultureIgnoreCase) { { key, value }, { newKey, value } });
				var request = new PutKeyRequestModel { Value = newKey };

				var result = controller.PutKey(key, request);

				Assert.IsAssignableFrom<ConflictResult>(result);
			}
			public void ReturnsBadRequestWhenRequestIsInvalid(string newKey)
			{
				const string key = "key";
				var request = new PutKeyRequestModel { Value = newKey };
				var controller = CreateController();

				var result = controller.PutKey(key, request);

				Assert.IsAssignableFrom<BadRequestResult>(result);
			}
			public void ReturnsNotFoundWhenItemDoesNotExist()
			{
				const string key = "key";
				const string newKey = "newKey";
				var request = new PutKeyRequestModel { Value = newKey };

				var controller = CreateController();

				var result = controller.PutKey(key, request);

				Assert.IsAssignableFrom<NotFoundResult>(result);
			}
			public void ReturnsBadRequestWhenKeyIsInvalid(string key)
			{
				var request = new PutKeyRequestModel();
				var controller = CreateController();

				var result = controller.PutKey(key, request);

				Assert.IsAssignableFrom<BadRequestResult>(result);
			}