public SubscriptionRatesDto AddNewSubscription(SubscriptionCreateDto dto)
        {
            var reposubscription = _contextManager.CreateRepositiry <ISubscriptionRatesRepo>();
            var sub = _mapper.Map <SubscriptionRates>(dto);

            reposubscription.Add(sub);
            _contextManager.Save();

            return(_mapper.Map <SubscriptionRatesDto>(sub));
        }
 public IActionResult CreateSub([FromBody] SubscriptionCreateDto dto)
 {
     try
     {
         var data = _service.AddNewSubscription(dto);
         return(Ok(data));
     }
     catch (ValidationException ex)
     {
         return(BadRequest(ex.Message));
     }
 }
        public async Task ShouldDeleteSubscription()
        {
            var newSubscription = new SubscriptionCreateDto
            {
                Name = "UpdatedFromTest", SourceTypeId = 1, Parameters = "{}"
            };
            var httpContent = HttpUtilities.GetHttpContent(newSubscription);
            var response    = await _client.PostAsync("/api/subscriptions", httpContent);

            response.EnsureSuccessStatusCode();
            var content = await response.Content.ReadAsStringAsync();

            var storageSubscription = JsonConvert.DeserializeObject <SubscriptionDto>(content);

            response = await _client.DeleteAsync($"/api/subscriptions/{storageSubscription.Id}");

            response.EnsureSuccessStatusCode();
        }
        public async Task <ActionResult <SubscriptionDto> > PostSubscription(SubscriptionCreateDto createSubscriptionDto)
        {
            try
            {
                var inputSubscription    = _mapper.Map <SourceSubscription>(createSubscriptionDto);
                var insertedSubscription = await _subscriptionService.AddSubscriptionAsync(inputSubscription);

                var subscriptionResponse = _mapper.Map <SubscriptionDto>(insertedSubscription);
                return(Ok(subscriptionResponse));
            }
            catch (SubscriptionValidationException exception)
            {
                var innerMessage = GetInnerMessage(exception);

                return(BadRequest(innerMessage));
            }
            catch (SubscriptionServiceException exception)
            {
                return(Problem(exception.Message));
            }
        }