The legacy osc 52 protocol now works with the new clipboard requests manager class

This commit is contained in:
Kovid Goyal
2022-11-28 20:53:56 +05:30
parent a8725d6307
commit 3ee9f723f2
4 changed files with 152 additions and 4 deletions

29
kitty_tests/clipboard.py Normal file
View File

@@ -0,0 +1,29 @@
#!/usr/bin/env python
# License: GPLv3 Copyright: 2022, Kovid Goyal <kovid at kovidgoyal.net>
from . import BaseTest
from kitty.clipboard import WriteRequest
class TestClipboard(BaseTest):
def test_clipboard_write_request(self):
wr = WriteRequest(max_size=64)
wr.add_base64_data('bGlnaHQgd29yaw')
self.ae(bytes(wr.current_leftover_bytes), b'aw')
wr.flush_base64_data()
self.ae(wr.data_for(), b'light work')
wr = WriteRequest(max_size=64)
wr.add_base64_data('bGlnaHQgd29yaw==')
self.ae(wr.data_for(), b'light work')
wr = WriteRequest(max_size=64)
wr.add_base64_data('bGlnaHQgd29')
for x in b'y', b'a', b'y', b'4', b'=':
wr.add_base64_data(x)
self.ae(wr.data_for(), b'light work.')
wr = WriteRequest(max_size=64)
for x in 'bGlnaHQgd29y':
wr.add_base64_data(x)
self.ae(wr.data_for(), b'light wor')