public async Task TestCreateTournamentWhitValidsMoviesAndReturnsCreated()
        {
            // Arrange
            var model    = new CreateTournamentViewModelBuilder().Build();
            var expected = new Response <string>(true, "Successfully created tournament", "12345");

            _tournamentServiceMock.Setup(x => x.CreateAsync(model))
            .Returns(Task.FromResult(expected));

            var controller = new TournamentsController(_tournamentServiceMock.Object);
            // Act
            var actionResult = await controller.PostAsync(model);

            //Assert
            var createdRequestResult = Assert.IsType <CreatedResult>(actionResult.Result);

            createdRequestResult.StatusCode.Should().Be((int)HttpStatusCode.Created);
            var result = Assert.IsType <Response <string> >(createdRequestResult.Value);

            result.Should().BeEquivalentTo(expected);
        }
        public async Task TestCreateTournamentWhitUnavailableServiceMoviesAndReturnsBadRequest()
        {
            // Arrange
            var model    = new CreateTournamentViewModelBuilder().Build();
            var expected = new Response <string>(false, "Error connecting to the movie service");

            _tournamentServiceMock.Setup(x => x.CreateAsync(model))
            .Returns(Task.FromResult(expected));

            var controller = new TournamentsController(_tournamentServiceMock.Object);
            // Act
            var actionResult = await controller.PostAsync(model);

            //Assert
            var badRequestResult = Assert.IsType <BadRequestObjectResult>(actionResult.Result);

            badRequestResult.StatusCode.Should().Be((int)HttpStatusCode.BadRequest);
            var result = Assert.IsType <Response <string> >(badRequestResult.Value);

            result.Should().BeEquivalentTo(expected);
        }