add test for bgg

This commit is contained in:
Your Name 2024-01-09 16:36:39 -05:00 committed by Henri Dickson
parent 742c58e239
commit 565e213ebb
3 changed files with 9 additions and 5 deletions

View file

@ -498,7 +498,7 @@ RQ_SHOW_ADMIN_LINK = DEBUG
SEARCH_INDEX_NEW_ONLY = False
DOWNLOADER_SAVEDIR = env("NEODB_DOWNLOADER_SAVE_DIR", default=None) # type: ignore
DOWNLOADER_SAVEDIR = env("NEODB_DOWNLOADER_SAVE_DIR", default="/tmp") # type: ignore
DISABLE_MODEL_SIGNAL = False # disable index and social feeds during importing/etc

View file

@ -107,6 +107,7 @@ class DoubanGameTestCase(TestCase):
class BangumiGameTestCase(TestCase):
@use_local_response
def test_parse(self):
t_id_type = IdType.Bangumi
t_id_value = "15912"
@ -120,20 +121,21 @@ class BangumiGameTestCase(TestCase):
class BoardGameGeekTestCase(TestCase):
@use_local_response
def test_scrape(self):
t_url = "https://boardgamegeek.com/boardgame/167791"
site = SiteManager.get_site_by_url(t_url)
self.assertIsNotNone(site)
self.assertEqual(site.ID_TYPE, IdType.BGG)
self.assertEqual(site.id_value, "167791")
self.assertEqual(site.ready, False)
site.get_resource_ready()
self.assertEqual(site.ready, True)
self.assertEqual(site.resource.metadata["title"], "Terraforming Mars")
self.assertIsInstance(site.resource.item, Game)
self.assertEqual(site.resource.item.id_type, IdType.BGG)
self.assertEqual(site.resource.item.id_value, "167791")
self.assertEqual(site.resource.item.platform, ["Boardgame"])
self.assertEqual(site.resource.item.genre[0], "Economic")
self.assertEqual(site.resource.item.other_title[0], "殖民火星")
# self.assertEqual(site.resource.item.genre[0], )
self.assertEqual(site.resource.item.designer, ["Jacob Fryxelius"])

View file

@ -35,7 +35,9 @@ class BoardGameGeek(AbstractSite):
item = items[0]
title = self.query_str(item, "name[@type='primary']/@value")
other_title = self.query_list(item, "name[@type='alternate']/@value")
zh_title = [t for t in other_title if detect(t).startswith("zh")]
zh_title = [
t for t in other_title if detect(t) in ["zh", "jp", "ko", "zh-cn", "zh-tw"]
]
if zh_title:
for z in zh_title:
other_title.remove(z)