예제 #1
0
        public IActionResult CreateCollection([FromBody] CollectionCreateOrUpdateModel collection)
        {
            if (!AuthorizedUserId.Equals(collection.UserId))
            {
                _logger.LogError(Resource.LogErrorUserIsNotAutorized);
                return(NotFound());
            }

            _repository.Collection.CreateCollection(collection.GetEntity());

            return(CreatedAtRoute(nameof(GetCollectionById), new { id = collection.Id }, new EntityGetModel <IEntity>(collection.GetEntity())));
        }
예제 #2
0
        public void CreateCollection()
        {
            this.AddJWTAuth();

            var model = new CollectionCreateOrUpdateModel();

            console.Write("Enter collection name: ");
            model.Name   = console.ReadLine();
            model.UserId = AuthorizedUserId;

            var response = HttpClient.PostAsJsonAsync("api/collection", model).Result;

            console.WriteLine(response.StatusCode);
            console.WriteLine(response.Content.ReadAsStringAsync().Result);

            CheckAuth(response);
        }
        public void CreateCollection_WithValidModel_ShouldCreateCollection()
        {
            // arrange
            var collection = _fixture.Fixture.Create <Collection>();

            _fixture.SetAuthorizedUserId(collection.UserId);

            var model = new CollectionCreateOrUpdateModel(collection);

            _fixture.CollectionRepository.Setup(r => r.CreateCollection(collection)).Verifiable();

            // act
            var act = (CreatedAtRouteResult)_fixture.Controller.CreateCollection(model);

            // assert
            Assert.NotNull(act);
            Assert.Equal((int)HttpStatusCode.Created, act.StatusCode);
            Assert.Equal(collection.Id, ((EntityGetModel <IEntity>)act.Value).Id);

            _fixture.CollectionRepository.VerifyAll();
        }