Пример #1
0
        /// <inheritdoc/>
        public async Task <FaceFeaturesModel> InsertFaceFeatures(FaceFeaturesModel faceFeaturesModel)
        {
            const string restUrl = "https://teststorageserver.azurewebsites.net/api/features";
            var          uri     = new Uri(restUrl);

            var jsonContent = JsonConvert.SerializeObject(faceFeaturesModel, new JsonSerializerSettings
            {
                NullValueHandling = NullValueHandling.Ignore
            });

            var request = new HttpRequestMessage(HttpMethod.Post, uri)
            {
                Content = new StringContent(jsonContent, Encoding.UTF8, "application/json")
            };

            var response = await HttpClient.SendAsync(request);

            if (!response.IsSuccessStatusCode)
            {
                var errorContent = await response.Content.ReadAsStringAsync();

                throw new ManagerException((JsonConvert.DeserializeObject <BadRequestModel>(errorContent)).Message);
            }

            var responseContent = await response.Content.ReadAsStringAsync();

            return(JsonConvert.DeserializeObject <FaceFeaturesModel>(responseContent));
        }
        /// <inheritdoc/>
        public FaceFeaturesModel InsertNewFeaturesModel(int personId, int age, string gender)
        {
            var element = new FaceFeaturesModel()
            {
                PersonId = personId,
                Age      = age,
                Gender   = gender
            };

            using (var context = _databaseContextGeneration.BuildDatabaseContext())
            {
                context.FaceFeatures.Add(element);
                context.SaveChanges();
            }

            return(element);
        }
        public async Task Post_ShouldCallHelper()
        {
            //Arrange
            var expectedId       = 0;
            var expectedPersonId = 1;
            var expectedAge      = 20;
            var expectedGender   = "male";

            var expectedFeaturesElement = new FaceFeaturesModel()
            {
                Id       = expectedId,
                PersonId = expectedPersonId,
                Age      = expectedAge,
                Gender   = expectedGender
            };

            var fakeFaceFeaturesHelper = A.Fake <IFaceFeaturesHelper>();

            A.CallTo(() =>
                     fakeFaceFeaturesHelper.InsertNewFeaturesModel(expectedPersonId, expectedAge, expectedGender))
            .Returns(expectedFeaturesElement);

            var faceFeaturesController = new FaceFeaturesController()
            {
                FaceFeaturesHelper = fakeFaceFeaturesHelper,
                Request            = new HttpRequestMessage()
            };

            //Act
            var result = faceFeaturesController.Post(expectedFeaturesElement);

            //Assert
            A.CallTo(() => fakeFaceFeaturesHelper.InsertNewFeaturesModel(expectedPersonId, expectedAge, expectedGender))
            .MustHaveHappenedOnceExactly();

            var httpResponse = await result.ExecuteAsync(new CancellationToken());

            var jsonContent = await httpResponse.Content.ReadAsStringAsync();

            var expectedJson = JsonConvert.SerializeObject(expectedFeaturesElement);

            jsonContent.ShouldBe(expectedJson);
        }
 public IHttpActionResult Post([FromBody] FaceFeaturesModel faceFeaturesModel)
 {
     return(Json(FaceFeaturesHelper.InsertNewFeaturesModel(faceFeaturesModel.PersonId, faceFeaturesModel.Age, faceFeaturesModel.Gender)));
 }