public async Task CreateDelegateOffer_Success()
        {
            const string titleText       = "Title Text";
            const string descriptionText = "Description Text";
            const string jwt             = "";
            var          userid          = Guid.NewGuid();

            var product = new DelegateOffer
            {
                Title       = titleText,
                Description = descriptionText,
                Provider    = new User()
                {
                    Id = userid
                }
            };

            var createProductModel = new CreateDelegateOfferModel
            {
                Title       = titleText,
                Description = descriptionText,
                Provider    = new User()
                {
                    Id = userid
                }
            };

            _marketplaceRepository.Setup(x => x.CreateDelegateOffer(It.IsAny <DelegateOffer>())).ReturnsAsync(product);
            _jwtIdClaimReaderHelper.Setup(x => x.getUserIdFromToken(jwt)).Returns(userid);

            var result = await _marketplaceService.CreateDelegateOffer(createProductModel, jwt);

            Assert.Equal(product.Title, result.Title);
            Assert.Equal(1, 1);
        }
        public async Task CreateProduct_Failed()
        {
            const string titleText       = "Title Text";
            const string descriptionText = "Description Text";
            const string jwt             = "";

            var product = new DelegateOffer
            {
                Title       = titleText,
                Description = descriptionText
            };

            var createProductModel = new CreateDelegateOfferModel {
                Title       = "",
                Description = ""
            };

            _marketplaceRepository.Setup(x => x.CreateDelegateOffer(It.IsAny <DelegateOffer>())).ReturnsAsync(product);

            var result = await Assert.ThrowsAsync <EmptyFieldException>(() =>
                                                                        _marketplaceService.CreateDelegateOffer(createProductModel, jwt));

            Assert.NotNull(result);
            Assert.IsType <EmptyFieldException>(result);
        }
Exemple #3
0
        public async Task CreateDelegateOffer_Success()
        {
            const string titleText       = "Title Text";
            const string descriptionText = "Description Text";
            const string jwt             = "";

            var guid = Guid.NewGuid();

            var product = new DelegateOffer()
            {
                Id          = guid,
                Title       = titleText,
                Description = descriptionText
            };

            var createProductModel = new CreateDelegateOfferModel()
            {
                Guid        = guid,
                Title       = titleText,
                Description = descriptionText
            };

            _delegateService.Setup(x => x.CreateDelegateOffer(createProductModel, jwt)).ReturnsAsync(product);

            var result = await _delegateController.CreateDelegateOffer(createProductModel, jwt) as ObjectResult;

            Assert.NotNull(result);
            Assert.IsType <OkObjectResult>(result);
            Assert.Equal(product.Id, ((DelegateOffer)result.Value).Id);
        }
Exemple #4
0
        public async Task CreateDelegateOffer_BadRequest()
        {
            //Arrange
            var          guid            = Guid.NewGuid();
            const string titleText       = "Title Text";
            const string descriptionText = "Description Text";
            const string jwt             = "";

            var productModel = new CreateDelegateOfferModel()
            {
                Guid        = guid,
                Title       = titleText,
                Description = descriptionText
            };

            _delegateService.Setup(x => x.CreateDelegateOffer(productModel, jwt))
            .Throws <EmptyFieldException>();

            //Act
            var result = await _delegateController.CreateDelegateOffer(productModel, jwt);

            //Assert
            Assert.NotNull(result);
            Assert.IsType <BadRequestObjectResult>(result);
        }
        public async Task <DelegateOffer> CreateDelegateOffer(CreateDelegateOfferModel creatDelegateOfferModel,
                                                              string jwt)
        {
            if (string.IsNullOrEmpty(creatDelegateOfferModel.Title) ||
                string.IsNullOrEmpty(creatDelegateOfferModel.Description))
            {
                throw new EmptyFieldException();
            }

            var delegateOffer = new DelegateOffer
            {
                Id                   = Guid.NewGuid(),
                Provider             = creatDelegateOfferModel.Provider,
                Title                = creatDelegateOfferModel.Title,
                Description          = creatDelegateOfferModel.Description,
                Region               = creatDelegateOfferModel.Region,
                LiskPerMonth         = creatDelegateOfferModel.LiskPerMonth,
                AvailableForInMonths = creatDelegateOfferModel.AvailableForInMonths
            };
            var id = _jwtIdClaimReaderHelper.getUserIdFromToken(jwt);

            if (delegateOffer.Provider.Id != id)
            {
                throw new NotAuthenticatedException();
            }

            return(await _delegateRepository.CreateDelegateOffer(delegateOffer));
        }
Exemple #6
0
 public async Task <IActionResult> CreateDelegateOffer([FromBody] CreateDelegateOfferModel createDelegateOfferModel, [FromHeader(Name = "Authorization")] string jwt)
 {
     try
     {
         return(Ok(await _delegateService.CreateDelegateOffer(createDelegateOfferModel, jwt)));
     }
     catch (Exception e)
     {
         return(BadRequest(e.Message));
     }
 }