public async void GetNonexistentGameCollectionTest(long id)
    {
        // Arrange
        var mockRepo = new Mock <ICasinoRepository>();

        mockRepo.Setup(repo => repo.GetGameCollectionAsync(id))
        .ReturnsAsync(GetTestGameCollection());
        var controller = new GameCollectionsController(mockRepo.Object);

        // Act
        var result = await controller.Get(4444);

        // Assert
        var notFoundResult = Assert.IsType <ObjectResult>(result);

        Assert.Equal(StatusCodes.Status204NoContent, notFoundResult.StatusCode);
    }
    public async void GetSpecificGameCollectionTest(long id)
    {
        // Arrange
        var mockRepo = new Mock <ICasinoRepository>();

        mockRepo.Setup(repo => repo.GetGameCollectionAsync(id))
        .ReturnsAsync(GetTestGameCollection());
        var controller = new GameCollectionsController(mockRepo.Object);

        // Act
        var result = await controller.Get(id);

        // Assert
        var okResult    = Assert.IsType <OkObjectResult>(result);
        var returnValue = Assert.IsType <GameCollection>(okResult.Value);

        Assert.Equal(GetTestGameCollection().Name, returnValue.Name);
    }
    public async void GetAllGameCollectionsTest()
    {
        // Arrange
        var mockRepo = new Mock <ICasinoRepository>();

        mockRepo.Setup(repo => repo.GetAllGameCollectionsAsync())
        .ReturnsAsync(GetTestGameCollections());
        var controller = new GameCollectionsController(mockRepo.Object);

        // Act
        var result = await controller.Get();

        // Assert
        var okResult    = Assert.IsType <OkObjectResult>(result);
        var returnValue = Assert.IsType <List <GameCollection> >(okResult.Value);

        Assert.Equal(GetTestGameCollection().Name, returnValue.FirstOrDefault().Name);
    }
    public async void GetAllGameCollectionsEmptyTest()
    {
        // Arrange
        var mockRepo = new Mock <ICasinoRepository>();

        mockRepo.Setup(repo => repo.GetAllGameCollectionsAsync())
        .ReturnsAsync(new List <GameCollection>());
        var controller = new GameCollectionsController(mockRepo.Object);

        // Act
        var result = await controller.Get();

        // Assert
        var okResult    = Assert.IsType <OkObjectResult>(result);
        var returnValue = Assert.IsType <List <GameCollection> >(okResult.Value);

        // Empty repository returns empty list
        Assert.Empty(returnValue);
    }