File: test-bundle2.py

package info (click to toggle)
mercurial 7.0.1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 44,824 kB
  • sloc: python: 206,444; ansic: 56,415; tcl: 3,715; sh: 1,797; lisp: 1,483; cpp: 864; makefile: 752; javascript: 649; xml: 36
file content (33 lines) | stat: -rw-r--r-- 1,072 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import unittest
from mercurial import bundle2, ui as uimod

bundle20 = bundle2.bundle20
unbundle20 = bundle2.unbundle20

ui = uimod.ui.load()


class Bundle2tests(unittest.TestCase):
    def test_nonempty_bundle_forwardchunks(self):
        bundler = bundle20(ui)
        bundler.newpart(
            b'cache:rev-branch-cache', data=b'some-data', mandatory=False
        )
        data = b''.join(list(bundler.getchunks()))
        unbundle = unbundle20(ui, __import__("io").BytesIO(data[4:]))
        forwarded_data = b''.join(list(unbundle._forwardchunks()))
        self.assertEqual(data, forwarded_data)

    def test_empty_bundle_forwardchunks(self):
        bundler = bundle20(ui)
        data = b''.join(list(bundler.getchunks()))
        self.assertEqual(data, b'HG20\0\0\0\0\0\0\0\0')
        unbundle = unbundle20(ui, __import__("io").BytesIO(data[4:]))
        forwarded_data = b''.join(list(unbundle._forwardchunks()))
        self.assertEqual(data, forwarded_data)


if __name__ == '__main__':
    import silenttestrunner

    silenttestrunner.main(__name__)