test_main.py 文件源码

python
阅读 33 收藏 0 点赞 0 评论 0

项目:katcr 作者: XayOn 项目源码 文件源码
def test_basesearch():
    """Test basesearch has required methods."""
    from katcr import BaseSearch
    import unittest.mock
    import warnings
    warnings.filterwarnings("ignore", category=UserWarning, module='bs4')

    assert hasattr(BaseSearch, "search")
    assert hasattr(BaseSearch, "search_magnets")

    with unittest.mock.patch('katcr.BaseSearch.search_magnets',
                             side_effect=(['foo'],)) as mock:
        with unittest.mock.patch('katcr.torrentmirror.get_proxies',
                                 side_effect=({},)):
            class FakeSearch(BaseSearch):
                """Fake search."""

                def get_torrents(self):
                    """Get torrents."""
                    return "foo"
                browser = unittest.mock.MagicMock()
                proxy_name = "The Pirate Bay"
                url = "Foo"
                url_format = None

            FakeSearch(mock.MagicMock).search('foo', 2)
            assert mock.call_count == 2

    with unittest.mock.patch('katcr.torrentmirror.get_proxies',
                             side_effect=({},)):
        class FakeSearchB(BaseSearch):
            """Fake search."""

            proxy_name = "The Pirate Bay"
            url = "Foo"
            url_format = "http://foo.com/"

            def __init__(self, logger):
                super().__init__(logger)
                self.browser = unittest.mock.MagicMock()

            def get_torrents(self):
                return "foo"

        FakeSearchB(unittest.mock.MagicMock()).search('foo', 2)
        assert mock.call_count == 2
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号