예제 #1
0
        public async Task CreateAuctionReturns200IfSuccessful()
        {
            var auction = new CreateAuctionDto
            {
                StartingPrice = 15.0m,
                Description   = "Guitar"
            };

            var postResponse = await ApiCalls.PostCreateAuction(_client, auction);

            Assert.Equal(HttpStatusCode.OK, postResponse.StatusCode);
        }
예제 #2
0
        public async Task Create(CreateAuctionDto input)
        {
            Domain.Seller.Seller seller = await GetCurrentSeller();

            await _auctionManager.CreateAuction(
                input.ProductId,
                input.InitPrice,
                input.MinAcceptPrice,
                input.StartDate,
                input.EndDate,
                seller.Id
                );
        }
예제 #3
0
        public ActionResult Create([FromBody] CreateAuctionDto dto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }
            var aggregateId   = Guid.NewGuid();
            var auction       = AuctionDetails.Create(DateTime.UtcNow.AddMinutes(1), dto.StartingPrice, dto.Description);
            var createAuction = CreateAuction.Create(auction);
            var command       = Command.Create(aggregateId, createAuction);
            var result        = _commandHandler.HandleCommand(command);

            switch (result)
            {
            case CommandResultSuccess _:
                return(Ok());

            default:
                return(Conflict());
            }
        }
예제 #4
0
        public static async Task <HttpResponseMessage> PostCreateAuction(HttpClient client, CreateAuctionDto dto)
        {
            var content = new StringContent(JsonConvert.SerializeObject(dto), Encoding.UTF8, "application/json");

            return(await client.PostAsync("/api/auction", content));
        }