def METHOD_NAME(tvdb_id, show_name, cur_data, force_search):
    """
    Generate tests
    :param tvdb_id:
    :param show_name:
    :param cur_data:
    :param force_search:
    :return:
    """
    def do_test():
        """
        Test to perform
        """
        global search_items
        search_items = cur_data["i"]
        show = TVShow(1, tvdb_id)
        show.name = show_name
        show.quality = cur_data["q"]
        show.saveToDB()
        settings.showList.append(show)
        episode = None
        for epNumber in cur_data["e"]:
            episode = TVEpisode(show, cur_data["s"], epNumber)
            episode.status = common.WANTED
            episode.saveToDB()
        best_result = search.searchProviders(show, episode.episode, force_search)
        if not best_result:
            assert cur_data["b"] == best_result
        assert cur_data["b"] == best_result.name  # first is expected, second is chosen one
    return do_test