public async Task Should_Create_Performer_WithValidInput()
        {
            var expectedEntity = new PerformerEntity()
            {
                Id   = Guid.NewGuid(),
                Name = "mockName"
            };

            _repoMock !.Setup(repo => repo.CreatePerformerEntityAsync(It.IsAny <PerformerEntity>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(expectedEntity);
            var performersController = new PerformersController(_repoMock.Object, Mapper, _logger !.Object);

            Assert.NotNull(performersController);

            var performerRequest = new Request <PerformerViewModel.Creation>()
            {
                Data = new PerformerViewModel.Creation {
                    Name = "mock"
                }
            };
            var performers = await performersController.CreatePerformerAsync(performerRequest) as CreatedAtRouteResult;

            Assert.NotNull(performers);
            Assert.Equal("GetPerformerById", performers !.RouteName);
            Assert.NotNull(performers.RouteValues);

            var performerResponse = performers.Value as Response <PerformerViewModel>;

            Assert.NotNull(performerResponse);

            // Assert.NotNull(performerResponse.Data);
        }
        public async Task Should_Get_PerformerList()
        {
            var expectedEntity = new PerformerEntity()
            {
                Id   = Guid.NewGuid(),
                Name = "mockName"
            };

            _repoMock !.Setup(repo =>
                              repo.GetPerformerEntityListByIdsAsync(It.IsAny <Guid[]>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(new List <PerformerEntity>()
            {
                expectedEntity
            });
            var performersController = new PerformersController(_repoMock.Object, Mapper, _logger !.Object);

            Assert.NotNull(performersController);

            var performersResult = await performersController.GetPerformersAsync(
                new Guid[] { Guid.NewGuid() }) as OkObjectResult;

            Assert.NotNull(performersResult);
            var performersResponse = performersResult?.Value as Response <IList <PerformerViewModel> >;

            Assert.NotNull(performersResponse);
        }
        public async Task Should_Get_Performer_When_EditPerformerById()
        {
            var expectedEntity = new PerformerEntity()
            {
                Id   = Guid.NewGuid(),
                Name = "mockName"
            };

            _repoMock !.Setup(repo =>
                              repo.UpdateEntityAsync(It.IsAny <Guid>(), It.IsAny <PerformerEntity>(),
                                                     It.IsAny <CancellationToken>()))
            .ReturnsAsync(expectedEntity);
            var performersController = new PerformersController(_repoMock !.Object, Mapper, _logger !.Object);

            Assert.NotNull(performersController);

            var performer = await performersController.EditPerformerByIdAsync(
                Guid.NewGuid(),
                new Request <PerformerViewModel.Edit>()
            {
                Data = new PerformerViewModel.Edit()
            }
                ) as OkObjectResult;

            Assert.NotNull(performer);
            var performerResponse = performer?.Value as Response <PerformerViewModel>;

            Assert.NotNull(performerResponse);
        }