Example #1
0
    def query_game_information(self, nvapp):
        game_info = []
        self.logger.info("Trying to get information for game: %s" % nvapp.title)
        if nvapp.title not in self.game_blacklist:
            for scraper in self.scraper_chain:
                if scraper.is_enabled():
                    game_info.append(Game.from_api_response(scraper.get_game_information(nvapp)))

        else:
            game = Game(nvapp.title, None)

            if nvapp.title == 'Steam':
                fanart_path = os.path.join(self.plugin.addon.getAddonInfo('path'),
                                           'resources/statics/steam_wallpaper___globe_by_diglididudeng-d7kq9v9.jpg')
                fanart = Fanart(fanart_path, fanart_path)
                game.fanarts[os.path.basename(fanart_path)] = fanart
                for scraper in self.scraper_chain:
                    if scraper.name() == 'NvHTTP':
                        game.posters = scraper.get_game_information(nvapp).posters

            game_info.append(game)

        game = game_info[0]
        while len(game_info) > 1:
            next_game = game_info.pop()
            game.merge(next_game)

        return game
Example #2
0
    def query_game_information(self, nvapp):
        game_info = []
        self.logger.info("Trying to get information for game: %s" %
                         nvapp.title)
        if nvapp.title not in self.game_blacklist:
            for scraper in self.scraper_chain:
                if scraper.is_enabled():
                    game_info.append(
                        Game.from_api_response(
                            scraper.get_game_information(nvapp)))

        else:
            game = Game(nvapp.title, None)

            if nvapp.title == 'Steam':
                fanart_path = os.path.join(
                    self.plugin.addon.getAddonInfo('path'),
                    'resources/statics/steam_wallpaper___globe_by_diglididudeng-d7kq9v9.jpg'
                )
                fanart = Fanart(fanart_path, fanart_path)
                game.fanarts[os.path.basename(fanart_path)] = fanart
                for scraper in self.scraper_chain:
                    if scraper.name() == 'NvHTTP':
                        game.posters = scraper.get_game_information(
                            nvapp).posters

            game_info.append(game)

        game = game_info[0]
        while len(game_info) > 1:
            next_game = game_info.pop()
            game.merge(next_game)

        return game
Example #3
0
    def testGameMergeSelfFilled(self):
        game1 = Game('Name')
        game1.genre = ['Shooter', 'Adventure']
        game1.posters = ['/path/to/poster/original']
        game1.fanarts = ['path/to/art/1-1', 'path/to/art/1-2', 'path/to/art/1-3']

        game2 = Game('Name')
        game2.genre = ['Action', 'Adventure']
        game2.posters = ['/path/to/poster']
        game2.fanarts = ['path/to/art/1', 'path/to/art/2', 'path/to/art/1-3']

        game1.merge(game2)

        self.assertEqual(game1.genre, ['Action', 'Adventure', 'Shooter'])
        self.assertEqual('/path/to/poster/original' in game1.posters, True)
        self.assertEqual('/path/to/poster' in game1.posters, True)
        self.assertEqual('path/to/art/1' in game1.fanarts, True)
        self.assertEqual('path/to/art/2' in game1.fanarts, True)
        self.assertEqual('path/to/art/1-1' in game1.fanarts, True)
        self.assertEqual('path/to/art/1-2' in game1.fanarts, True)
        self.assertEqual('path/to/art/1-3' in game1.fanarts, True)
Example #4
0
    def testGameMergeSelfFilled(self):
        game1 = Game('Name')
        game1.genre = ['Shooter', 'Adventure']
        game1.posters = ['/path/to/poster/original']
        game1.fanarts = [
            'path/to/art/1-1', 'path/to/art/1-2', 'path/to/art/1-3'
        ]

        game2 = Game('Name')
        game2.genre = ['Action', 'Adventure']
        game2.posters = ['/path/to/poster']
        game2.fanarts = ['path/to/art/1', 'path/to/art/2', 'path/to/art/1-3']

        game1.merge(game2)

        self.assertEqual(game1.genre, ['Action', 'Adventure', 'Shooter'])
        self.assertEqual('/path/to/poster/original' in game1.posters, True)
        self.assertEqual('/path/to/poster' in game1.posters, True)
        self.assertEqual('path/to/art/1' in game1.fanarts, True)
        self.assertEqual('path/to/art/2' in game1.fanarts, True)
        self.assertEqual('path/to/art/1-1' in game1.fanarts, True)
        self.assertEqual('path/to/art/1-2' in game1.fanarts, True)
        self.assertEqual('path/to/art/1-3' in game1.fanarts, True)
Example #5
0
    def testGameMergeSelfNone(self):
        game1 = Game('Name')

        game2 = Game('Name')
        game2.genre = ['Action', 'Adventure']
        game2.posters = ['/path/to/poster']
        game2.fanarts = ['path/to/art/1', 'path/to/art/2', 'path/to/art/3']

        game1.merge(game2)

        self.assertEqual(game1.genre, ['Action', 'Adventure'])
        self.assertEqual(game1.posters, ['/path/to/poster'])
        self.assertEqual(game1.fanarts, ['path/to/art/1', 'path/to/art/2', 'path/to/art/3'])
        self.assertEqual(game1.get_selected_fanart(), 'path/to/art/1')
        self.assertEqual(game1.get_selected_poster(), '/path/to/poster')
Example #6
0
    def testGameMergeSelfNone(self):
        game1 = Game('Name')

        game2 = Game('Name')
        game2.genre = ['Action', 'Adventure']
        game2.posters = ['/path/to/poster']
        game2.fanarts = ['path/to/art/1', 'path/to/art/2', 'path/to/art/3']

        game1.merge(game2)

        self.assertEqual(game1.genre, ['Action', 'Adventure'])
        self.assertEqual(game1.posters, ['/path/to/poster'])
        self.assertEqual(game1.fanarts,
                         ['path/to/art/1', 'path/to/art/2', 'path/to/art/3'])
        self.assertEqual(game1.get_selected_fanart(), 'path/to/art/1')
        self.assertEqual(game1.get_selected_poster(), '/path/to/poster')