public async Task ShouldGetModelForValidInformation()
        {
            var command = new CreateProfessionCommand
            {
                AdminUserId = _adminUserId,
                TenantId    = _tenantId,
                Professions = new List <string>
                {
                    "a",
                    "b"
                }
            };

            var professionsResponseModel = await _commandHandler.Handle(command, CancellationToken.None);

            Assert.Null(professionsResponseModel.Errors);

            Assert.True(professionsResponseModel.Items.Single().Professions.Count > 0);
        }
        public async Task CanCreateProfession()
        {
            var client = SystemTestExtension.GetTokenAuthorizeHttpClient(_factory);

            //Init model
            var command = new CreateProfessionCommand
            {
                Professions = new List <string> {
                    "Tasarim"
                }
            };

            var json = JsonConvert.SerializeObject(command);

            // The endpoint or route of the controller action.
            var httpResponse = await client.PostAsync(requestUri : "/Profession", content : new StringContent(json, Encoding.UTF8, StringConstants.ApplicationJson));

            // Must be successful.
            httpResponse.EnsureSuccessStatusCode();

            Assert.True(httpResponse.IsSuccessStatusCode);
            Assert.Equal(HttpStatusCode.OK, httpResponse.StatusCode);
        }
示例#3
0
        public async Task <ActionResult <ResponseModel <CreateProfessionModel> > > Post([FromBody] CreateProfessionCommand command)
        {
            try
            {
                var userId   = Claims[ClaimTypes.Sid].ToInt();
                var tenantId = Guid.Parse(Claims[ClaimTypes.UserData]);

                command.AdminUserId = userId;
                command.TenantId    = tenantId;

                var createProfessionModel = await Mediator.Send(command);

                return(Ok(createProfessionModel));
            }
            catch (NotFoundException)
            {
                return(NotFound());
            }
            catch (ObjectAlreadyExistsException ex)
            {
                return(Conflict(new ResponseModel <CreateProfessionModel>(new Error(HttpStatusCode.Conflict, ex))));
            }
            catch
            {
                return(StatusCode(HttpStatusCode.InternalServerError.ToInt()));
            }
        }