当前位置: 首页>>代码示例>>Python>>正文


Python qtutils.deserialize_stream函数代码示例

本文整理汇总了Python中qutebrowser.utils.qtutils.deserialize_stream函数的典型用法代码示例。如果您正苦于以下问题:Python deserialize_stream函数的具体用法?Python deserialize_stream怎么用?Python deserialize_stream使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了deserialize_stream函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: setUp

    def setUp(self):
        self.page = helpers.get_webpage()
        self.history = self.page.history()
        self.assertEqual(self.history.count(), 0)

        self.items = [
            Item(QUrl('https://www.heise.de/'), QUrl('http://www.heise.de/'),
                 'heise'),
            Item(QUrl('http://example.com/%E2%80%A6'),
                 QUrl('http://example.com/%E2%80%A6'), 'percent', active=True),
            Item(QUrl('http://example.com/?foo=bar'),
                 QUrl('http://original.url.example.com/'), 'arg',
                 user_data={'foo': 23, 'bar': 42}),
            # From https://github.com/OtterBrowser/otter-browser/issues/709#issuecomment-74749471
            Item(QUrl('http://github.com/OtterBrowser/24/134/2344/otter-browser/issues/709/'),
                 QUrl('http://github.com/OtterBrowser/24/134/2344/otter-browser/issues/709/'),
                 'Page not found | github',
                 user_data={'zoom': 149, 'scroll-pos': QPoint(0, 0)}),
            Item(QUrl('https://mail.google.com/mail/u/0/#label/some+label/234lkjsd0932lkjf884jqwerdf4'),
                 QUrl('https://mail.google.com/mail/u/0/#label/some+label/234lkjsd0932lkjf884jqwerdf4'),
                 '"some label" - [email protected] - Gmail"',
                 user_data={'zoom': 120, 'scroll-pos': QPoint(0, 0)}),
        ]
        stream, _data, self.user_data = tabhistory.serialize(self.items)
        qtutils.deserialize_stream(stream, self.history)
开发者ID:JIVS,项目名称:qutebrowser,代码行数:25,代码来源:test_tabhistory.py

示例2: setup

    def setup(self, webpage):
        self.page = webpage
        self.history = self.page.history()
        assert self.history.count() == 0

        stream, _data, self.user_data = tabhistory.serialize(self.ITEMS)
        qtutils.deserialize_stream(stream, self.history)
开发者ID:B0073D,项目名称:qutebrowser,代码行数:7,代码来源:test_tabhistory.py

示例3: _set_data

 def _set_data(self, browser, tab_id, items):
     """Helper function for test_long_output."""
     history = browser.widgets()[tab_id].page().history()
     stream, _data, user_data = tabhistory.serialize(items)
     qtutils.deserialize_stream(stream, history)
     for i, data in enumerate(user_data):
         history.itemAt(i).setUserData(data)
开发者ID:AdaJass,项目名称:qutebrowser,代码行数:7,代码来源:test_sessions_unit.py

示例4: test_empty

def test_empty(empty_history):
    """Check tabhistory.serialize with no items."""
    items = []
    stream, _data, user_data = tabhistory.serialize(items)
    qtutils.deserialize_stream(stream, empty_history)
    assert empty_history.count() == 0
    assert empty_history.currentItemIndex() == 0
    assert not user_data
开发者ID:Harrison97,项目名称:qutebrowser,代码行数:8,代码来源:test_tabhistory.py

示例5: test_deserialize_writeonly_stream

 def test_deserialize_writeonly_stream(self):
     """Test deserialize_stream with a write-only stream."""
     data = QByteArray()
     obj = QPoint()
     stream = QDataStream(data, QIODevice.WriteOnly)
     with pytest.raises(OSError, match="The data stream has read past the "
                        "end of the data in the underlying device."):
         qtutils.deserialize_stream(stream, obj)
开发者ID:Harrison97,项目名称:qutebrowser,代码行数:8,代码来源:test_qtutils.py

示例6: test_deserialize_writeonly_stream

 def test_deserialize_writeonly_stream(self):
     """Test deserialize_stream with a write-only stream."""
     data = QByteArray()
     obj = QPoint()
     stream = QDataStream(data, QIODevice.WriteOnly)
     with pytest.raises(OSError) as excinfo:
         qtutils.deserialize_stream(stream, obj)
     assert str(excinfo.value) == ("The data stream has read past the end " "of the data in the underlying device.")
开发者ID:halfwit,项目名称:qutebrowser,代码行数:8,代码来源:test_qtutils.py

示例7: test_empty

 def test_empty(self):
     """Check tabhistory.serialize with no items."""
     items = []
     stream, _data, user_data = tabhistory.serialize(items)
     qtutils.deserialize_stream(stream, self.history)
     self.assertEqual(self.history.count(), 0)
     self.assertEqual(self.history.currentItemIndex(), 0)
     self.assertFalse(user_data)
开发者ID:JIVS,项目名称:qutebrowser,代码行数:8,代码来源:test_tabhistory.py

示例8: test_deserialize_pre_error_mock

    def test_deserialize_pre_error_mock(self, stream_mock):
        """Test deserialize_stream with an error already set."""
        stream_mock.status.return_value = QDataStream.ReadCorruptData

        with pytest.raises(OSError) as excinfo:
            qtutils.deserialize_stream(stream_mock, QPoint())

        assert not stream_mock.__rshift__.called
        assert str(excinfo.value) == "The data stream has read corrupt data."
开发者ID:t-wissmann,项目名称:qutebrowser,代码行数:9,代码来源:test_qtutils.py

示例9: test_deserialize_post_error_mock

    def test_deserialize_post_error_mock(self, stream_mock):
        """Test deserialize_stream with an error while deserializing."""
        obj = QPoint()
        stream_mock.__rshift__.side_effect = lambda _other: self._set_status(stream_mock, QDataStream.ReadCorruptData)

        with pytest.raises(OSError) as excinfo:
            qtutils.deserialize_stream(stream_mock, obj)

        assert stream_mock.__rshift__.called_once_with(obj)
        assert str(excinfo.value) == "The data stream has read corrupt data."
开发者ID:halfwit,项目名称:qutebrowser,代码行数:10,代码来源:test_qtutils.py

示例10: load_items

 def load_items(self, items):
     stream, _data, cur_data = tabhistory.serialize(items)
     qtutils.deserialize_stream(stream, self._history)
     if cur_data is not None:
         if 'zoom' in cur_data:
             self._tab.zoom.set_factor(cur_data['zoom'])
         if ('scroll-pos' in cur_data and
                 self._tab.scroller.pos_px() == QPoint(0, 0)):
             QTimer.singleShot(0, functools.partial(
                 self._tab.scroller.to_point, cur_data['scroll-pos']))
开发者ID:shaggytwodope,项目名称:qutebrowser,代码行数:10,代码来源:webenginetab.py

示例11: load_items

 def load_items(self, items):
     stream, _data, user_data = tabhistory.serialize(items)
     qtutils.deserialize_stream(stream, self._history)
     for i, data in enumerate(user_data):
         self._history.itemAt(i).setUserData(data)
     cur_data = self._history.currentItem().userData()
     if cur_data is not None:
         if "zoom" in cur_data:
             self._tab.zoom.set_factor(cur_data["zoom"])
         if "scroll-pos" in cur_data and self._tab.scroller.pos_px() == QPoint(0, 0):
             QTimer.singleShot(0, functools.partial(self._tab.scroller.to_point, cur_data["scroll-pos"]))
开发者ID:neeasade,项目名称:qutebrowser,代码行数:11,代码来源:webkittab.py

示例12: test_round_trip_real_stream

    def test_round_trip_real_stream(self):
        """Test a round trip with a real QDataStream."""
        src_obj = QPoint(23, 42)
        dest_obj = QPoint()
        data = QByteArray()

        write_stream = QDataStream(data, QIODevice.WriteOnly)
        qtutils.serialize_stream(write_stream, src_obj)

        read_stream = QDataStream(data, QIODevice.ReadOnly)
        qtutils.deserialize_stream(read_stream, dest_obj)

        assert src_obj == dest_obj
开发者ID:t-wissmann,项目名称:qutebrowser,代码行数:13,代码来源:test_qtutils.py

示例13: load_items

    def load_items(self, items):
        stream, _data, cur_data = tabhistory.serialize(items)
        qtutils.deserialize_stream(stream, self._history)

        @pyqtSlot()
        def _on_load_finished():
            self._tab.scroller.to_point(cur_data['scroll-pos'])
            self._tab.load_finished.disconnect(_on_load_finished)

        if cur_data is not None:
            if 'zoom' in cur_data:
                self._tab.zoom.set_factor(cur_data['zoom'])
            if ('scroll-pos' in cur_data and
                    self._tab.scroller.pos_px() == QPoint(0, 0)):
                self._tab.load_finished.connect(_on_load_finished)
开发者ID:Harrison97,项目名称:qutebrowser,代码行数:15,代码来源:webenginetab.py

示例14: load_history

 def load_history(self, entries):
     """Load the history from a list of TabHistoryItem objects."""
     stream, _data, user_data = tabhistory.serialize(entries)
     history = self.history()
     qtutils.deserialize_stream(stream, history)
     for i, data in enumerate(user_data):
         history.itemAt(i).setUserData(data)
     cur_data = history.currentItem().userData()
     if cur_data is not None:
         frame = self.mainFrame()
         if 'zoom' in cur_data:
             frame.page().view().zoom_perc(cur_data['zoom'] * 100)
         if ('scroll-pos' in cur_data and
                 frame.scrollPosition() == QPoint(0, 0)):
             QTimer.singleShot(0, functools.partial(
                 frame.setScrollPosition, cur_data['scroll-pos']))
开发者ID:jagajaga,项目名称:qutebrowser,代码行数:16,代码来源:webpage.py

示例15: load_items

    def load_items(self, items):
        if items:
            self._tab.predicted_navigation.emit(items[-1].url)

        stream, _data, user_data = tabhistory.serialize(items)
        qtutils.deserialize_stream(stream, self._history)
        for i, data in enumerate(user_data):
            self._history.itemAt(i).setUserData(data)
        cur_data = self._history.currentItem().userData()
        if cur_data is not None:
            if 'zoom' in cur_data:
                self._tab.zoom.set_factor(cur_data['zoom'])
            if ('scroll-pos' in cur_data and
                    self._tab.scroller.pos_px() == QPoint(0, 0)):
                QTimer.singleShot(0, functools.partial(
                    self._tab.scroller.to_point, cur_data['scroll-pos']))
开发者ID:mehak,项目名称:qutebrowser,代码行数:16,代码来源:webkittab.py


注:本文中的qutebrowser.utils.qtutils.deserialize_stream函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。