示例#1
0
    def test_obtain_search_backup(self):
        """Checks that the results from the offline version of the search are
         ok """
        filename = self.data_path + 'geeksearch.php.html'

        provider = FileProvider(filename)

        results = self.plugin.search_filter_html(provider.get('mocked'))
        self.assertItemsEqual(
            results,
            [
                {'plugin': 'PluginBoardGameGeek',
                 'name': u'The Pillars of the Earth', 'year': '2006',
                 'id': u'http://boardgamegeek.com/boardgame/24480/' +
                 'the-pillars-of-the-earth'},
                {'plugin': 'PluginBoardGameGeek',
                 'name': u'The Pillars of the Earth Expansion Set',
                 'year': '2007',
                 'id': u'http://boardgamegeek.com/boardgameexpansion/31753/' +
                 'the-pillars-of-the-earth-expansion-set'},
                {'plugin': 'PluginBoardGameGeek',
                 'name': u'Die S\xe4ulen der Erde: das Kartenspiel',
                 'year': '2010',
                 'id': u'http://boardgamegeek.com/boardgame/67593/' +
                    'die-saulen-der-erde-das-kartenspiel'}
            ])
示例#2
0
 def test_obtain_data_backup(self):
     """ Checks that all the attributes of the offline version
      are parsed correctly"""
     filename = self.data_path + 'mice-and-mystics.html'
     provider = FileProvider(filename)
     fields = self.plugin.file_filter(provider.get('mocked'))
     self.assertEquals(fields, {
         'publisher': [u'Plaid Hat Games'],
         'designer': [u'Jerry Hawthorne'],
         'bgg_rank': 'N/A',
         'artist': [u'John Ariosa'],
         'title': u'Mice and Mystics',
         'year': 2012,
         'max_players': 4,
         'min_players': 1,
         'min_age': 7,
         'playing': u'60  minutes',
         'categories':
         [u'Adventure', u'Dice', u'Exploration',
          u'FantasyFighting', u'Miniatures'],
         'mechanic':
         [u'Area Movement', u'Co-operative Play', u'Dice Rolling',
          u'Role PlayingStorytelling', u'Variable Player Powers'],
         'image': 'http://www.boardgamegeek.com/' +
                  'mice-and-mystics_files/pic1312072.jpg',
         'average': 0.00,
         'website': 'http://www.plaidhatgames.com/games/'
         'mice-and-mystics',
         'description': u"Game description from the publisher:\n"
         "In Mice and Mystics players take on the \nroles of those"
         u" still loyal to the king \u2013 but to escape the clutches"
         " of \nVanestra, they have been turned into mice! Play as"
         " cunning field mice \nwho must race through a castle now twenty"
         " times larger than before. The \ncastle would be a dangerous"
         " place with Vanestra's minions in control, \nbut now countless"
         " other terrors also await heroes who are but the size \nof figs."
         " Play as nimble Prince Colin and fence your way past your foes,"
         " \nor try Nez Bellows, the burly smith. Confound your foes as"
         " the wizened \nold mouse Maginos, or protect your companions as"
         " Tilda, the castle's \nformer healer. Every player will have a"
         " vital role in the quest to warn \nthe king, and it will take"
         " careful planning to find Vanestra's weakness \nand defeat her."
         "\nMice and Mystics is a cooperative adventure game in which \n"
         "the players work together to save an imperiled kingdom. They "
         "will face \ncountless adversaries such as rats, cockroaches, and"
         " spiders, and of \ncourse the greatest of all horrors: the "
         "castle's housecat, Brodie. Mice and Mystics\n is a boldly"
         " innovative game that thrusts players into an ever-changing,\n"
         " interactive environment, and features a rich storyline that"
         " the players\n help create as they play the game. The Cheese"
         " System allows players to \nhorde the crumbs of precious cheese"
         " they find on their journey, and use \nit to bolster their mice"
         " with grandiose new abilities and overcome \nseemingly"
         " insurmountable odds.\nMice and Mystics will provide any group"
         " of friends with an \nunforgettable adventure they will be"
         u" talking about for years to come \u2013 \nassuming they can all"
         " squeak by..."
     })
     self.assertItemsEqual(fields.keys(), self.plugin.schema.file.keys())
示例#3
0
 def test_obtain_data_backup_pillars(self):
     """ Checks that all the attributes of the offline version
      are parsed correctly"""
     filename = self.data_path + 'the-pillars-of-the-earth.html'
     provider = FileProvider(filename)
     fields = self.plugin.file_filter(provider.get('mocked'))
     self.assertEquals(fields, {
         'publisher': [u'999 Games', u'Albi',
                       u'Cappelen', u'Competo / MarektoyDevir',
                       u'Filosofia \xc9dition', u'Galakta',
                       u'Kaissa Chess & Games', u'KOSMOS',
                       u'Mayfair Games', u'Stupor Mundi'],
         'designer': [u'Michael Rieneck', u'Stefan Stadler'],
         'bgg_rank': u'141',
         'artist': [u'Michael Menzel', u'Anke Pohl', u'Thilo Rick'],
         'image': 'http://www.boardgamegeek.com/the-pillars-'
                  'of-the-earth_files/pic212815.jpg',
         'title': u'The Pillars of the Earth',
         'min_players': 2,
         'min_age': 12,
         'average': 7.33,
         'mechanic': [u'Worker Placement'],
         'year': 2006,
         'max_players': 4,
         'playing': u'120  minutes',
         'categories': [u'Economic', u'Medieval', u'Novel-based'],
         'website': '',
         'description': u"Die S\xe4ulen der Erde / The Pillars"
         " of the Earth is based on the bestselling novel by Ken"
         " Follett and the 2006 game in the Kosmos line of literature"
         "-based games.\nAt the beginning of the 13th century, "
         "construction of the greatest \nand most beautiful cathedral"
         " in England begins. Players are builders who\n try to"
         " contribute the most to this cathedral's construction and,"
         " in so \ndoing, score the most victory points. Gameplay"
         " roughly consists of \nusing workers to produce raw materials,"
         " and then using craftsmen to \nconvert the materials"
         " into victory points. Workers may also be used to"
         " \nproduce gold, the currency of the game. Players are"
         " also given three \nmaster builders each turn, each of"
         " which can do a variety of tasks, \nincluding recruiting"
         " more workers, buying or selling goods, or just \nobtaining"
         " victory points. Getting early choices with a master builder"
         " \ncosts gold, as does purchasing better craftsmen. Players"
         " must strike a \nbalance between earning gold to fund their"
         " purchases and earning victory\n points.\nExpanded by:\n\n"
         " The Pillars of the Earth Expansion Set (which include the"
         " Expansion Cards in some editions)\n The Pillars of the"
         " Earth: Expansion Cards (which are included in the Expansion Set"
         " in some editions)\n\nBuy Microbadges\nPillars of the Earth"
         " Fan\n http://files.boardgamegeek.com/images/microbadges"
         "/pillarsearth.gif \nPillars of the Earth - I pimped my"
         " cathedral\n http://files.boardgamegeek.com/images/micr"
         "obadges/mb_PimpedPillar.gif \n\n"" Pillars of the Earth"
         " fan\n Pillars of the Earth fan\n Pillars of the Earth"
         " fan - Exp. Set\n\n",
     })
     self.assertItemsEqual(fields.keys(), self.plugin.schema.file.keys())
示例#4
0
    def test_obtain_search_backup_xml(self):
        """Checks that the results from the offline version of the backuped
         xml searchfile are ok.
         The reuslts differ from the source"""
        filename = self.data_path + 'xmlsearch.xml'

        provider = FileProvider(filename)

        results = self.plugin.search_filter_xml(provider.get('mocked'))
        self.assertItemsEqual(
            results,
            [
                {'plugin': 'PluginBoardGameGeek',
                 'id': 'http://www.boardgamegeek.com/boardgame/24480',
                 'name': u'Los Pilares de la Tierra'},
                {'plugin': 'PluginBoardGameGeek',
                 'id': 'http://www.boardgamegeek.com/boardgame/67593',
                 'name': u'Los Pilares de la Tierra: El juego de Cartas'},
                {'plugin': 'PluginBoardGameGeek',
                 'id': 'http://www.boardgamegeek.com/boardgame/31753',
                 'name': u'Los Pilares de la Tierra: La Expansi\xf3n'}
            ])