Example #1
0
        public async Task <IServiceResult> PutPublisher([FromRoute] Guid id, [FromBody] SavedPublisherDTOs savedPublisherDTOs)
        {
            if (id != savedPublisherDTOs.Id)
            {
                throw new NotFoundException(nameof(savedPublisherDTOs), id);
            }
            try
            {
                var publisher = _mapper.Map <SavedPublisherDTOs, Publisher>(savedPublisherDTOs);
                _context.Entry(publisher).State = EntityState.Modified;
                if (!await _unitOfWork.CompleteAsync())
                {
                    throw new SaveFailedException(nameof(publisher));
                }
                _context.Entry(publisher).State = EntityState.Modified;
                // return value
                publisher = await _context.Publishers.Include(p => p.Games).SingleOrDefaultAsync(g => g.Id == publisher.Id);

                var publisherDto = _mapper.Map <Publisher, PublisherDTOs>(publisher);
                _logger.LogInformation($"Publisher {publisherDto.Name}  modified.");
                return(new ServiceResult(payload: publisherDto));
            }
            catch (DbUpdateConcurrencyException e)
            {
                if (!PublisherExists(id))
                {
                    throw new NotFoundException(nameof(savedPublisherDTOs), id);
                }
                _logger.LogError($"Can't post pubisher {id} because {e.Message}");
                return(new ServiceResult(false, message: e.Message));
            }
        }
        public void TestPostNewPublisherController(string name, int money, int reliability)
        {
            Init(49914);

            SavedPublisherDTOs savedPublisherDTOs = new SavedPublisherDTOs()
            {
                Name        = name,
                Money       = money,
                Reliability = reliability
            };

            using (HttpClient client = new HttpClient())
            {
                client.BaseAddress = BASE_URI;
                HttpResponseMessage result = client.PostAsJsonAsync($"api/publishers", savedPublisherDTOs).GetAwaiter().GetResult();
                var content = result.Content.ReadAsStringAsync().GetAwaiter().GetResult();
                Response <PublisherDTOs> freeCodeResponse = JsonConvert.DeserializeObject <Response <PublisherDTOs> >(content);
                Assert.Equal(HttpStatusCode.OK, result.StatusCode);
                Assert.True(freeCodeResponse.IsSuccess);
            }
        }
Example #3
0
        public async Task <IServiceResult> PostPublisher([FromBody] SavedPublisherDTOs savedPublisherDTOs)
        {
            try
            {
                var publisher = _mapper.Map <SavedPublisherDTOs, Publisher>(savedPublisherDTOs);
                _context.Publishers.Add(publisher);

                if (!await _unitOfWork.CompleteAsync())
                {
                    throw new SaveFailedException(nameof(publisher));
                }
                publisher = await _context.Publishers.Include(p => p.Games).SingleOrDefaultAsync(g => g.Id == publisher.Id);

                var publisherDto = _mapper.Map <Publisher, PublisherDTOs>(publisher);
                _logger.LogInformation($"Publisher {publisherDto.Name}  created.");
                return(new ServiceResult(payload: publisherDto));
            }
            catch (Exception e)
            {
                _logger.LogError($"Can't add  {savedPublisherDTOs.Name} because {e.Message}");
                return(new ServiceResult(false, message: e.Message));
            }
        }
        public void PostNewPublisherController(string name, int money, int reliability)
        {
            SavedPublisherDTOs savedPublisherDTOs = new SavedPublisherDTOs()
            {
                Name        = name,
                Money       = money,
                Reliability = reliability
            };

            using (HttpClient client = new HttpClient())
            {
                if (BASE_URI != null)
                {
                    client.BaseAddress = BASE_URI;
                }
                else
                {
                    client.BaseAddress = new Uri("http://localhost:49911/");
                }
                HttpResponseMessage result = client.PostAsJsonAsync($"api/publishers", savedPublisherDTOs).Result;
                var content = result.Content.ReadAsStringAsync().Result;
                Response <PublisherDTOs> freeCodeResponse = JsonConvert.DeserializeObject <Response <PublisherDTOs> >(content);
            }
        }