コード例 #1
0
    def test_journal_creation(self):
        """Create Journal / 1 Entry"""
        self.create_users()
        user = User.select().get()
        Journal.create(user=user,
                       title='Space',
                       date='2018-10-12',
                       time_spent=12,
                       learned='Test',
                       resources='Test')
        journal = Journal.select().get()

        self.assertEqual(Journal.select().count(), 1)
        self.assertEqual(journal.user, user)
コード例 #2
0
    async def get_journals_list() -> ModelSelect:
        """Получаем список журналов с их обозначениями, проверяем не появилось ли чего-то нового (скорее
        всего нет, но функция в первую очередь необходима при первичном запуске приложения)
        """
        page_source = await get_page_source(
            f"{MAIN_URL}/ru/публикации/журналы/")
        soup = BeautifulSoup(page_source, 'lxml')

        journal_filter = soup.find('select', {'id': 'pubFilter'})
        for item in journal_filter.find_all('option'):
            if item['value']:
                if not Journal.get_or_none(Journal.symbol == item['value']):
                    journal = Journal.create(symbol=item['value'],
                                             title=item.text,
                                             priority=int(
                                                 item['data-priority']))
                    journal.save()
                    logger.debug(f"New journal created: {item.text}")
                else:
                    logger.debug(f"Parsed journal: {item.text}")

        return Journal.select()