Mercurial > hgrepos > Python > apps > py-cutils
annotate tests/test_treesum.py @ 381:ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Sat, 17 May 2025 13:25:48 +0200 |
| parents | 58552d3d1766 |
| children | e949cab90e86 |
| rev | line source |
|---|---|
|
380
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
1 # -*- coding: utf-8 -*- |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
2 # :- |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
3 # SPDX-FileCopyrightText: © 2025 Franz Glasner |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
4 # SPDX-License-Identifier: BSD-3-Clause |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
5 # :- |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
6 r"""Unit tests for treesum |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
7 |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
8 """ |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
9 |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
10 from __future__ import absolute_import, print_function |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
11 |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
12 import os |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
13 import shutil |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
14 import sys |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
15 import unittest |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
16 |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
17 from _test_setup import (DATADIR, TMPDIR) |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
18 |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
19 import cutils.treesum |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
20 |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
21 |
|
381
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
22 class TaggedTreesumTests(unittest.TestCase): |
|
380
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
23 |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
24 def setUp(self): |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
25 if not os.path.isdir(TMPDIR): |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
26 os.mkdir(TMPDIR) |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
27 |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
28 def tearDown(self): |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
29 if os.path.isdir(TMPDIR): |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
30 shutil.rmtree(TMPDIR) |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
31 |
|
381
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
32 def test_gen_and_info_P_utf8(self): |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
33 digest_file = os.path.join( |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
34 TMPDIR, |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
35 "%d__test_gen_and_info_P_utf8.info" % (os.getpid(),)) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
36 rel_tmpdir = os.path.relpath(TMPDIR, DATADIR) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
37 gen_opts = cutils.treesum.gen_generate_opts( |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
38 directories=[DATADIR], |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
39 algorithm="SHA1", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
40 fnmatch_filters=[("exclude", "glob:%s" % (rel_tmpdir,))], |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
41 generator="full", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
42 grouping_separator="_", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
43 output=digest_file, |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
44 output_style="tagged", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
45 print_size=True, |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
46 utf8=True) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
47 info_opts = cutils.treesum.gen_info_opts(digest_files=[digest_file], |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
48 last=True) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
49 cutils.treesum.generate_treesum(gen_opts) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
50 cutils.treesum.print_treesum_digestfile_infos(info_opts) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
51 info = cutils.treesum.TreesumInfo.collect_last_from_file(digest_file) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
52 self.assertEqual( |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
53 b"\xe1\x76\x18\xfc\x9b\x2f\x1e\x41\xfc\xe0\x04\xfc\x92\x43\x4e\xa7\x49\xbd\x57\x36", # noqa: E501 line too long |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
54 info.digest) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
55 self.assertEqual(2808, info.size) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
56 self.assertEqual("SHA1", info.algorithm) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
57 |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
58 def test_gen_and_info_P_native(self): |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
59 digest_file = os.path.join( |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
60 TMPDIR, |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
61 "%d__test_gen_and_info_P_native.info" % (os.getpid(),)) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
62 rel_tmpdir = os.path.relpath(TMPDIR, DATADIR) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
63 gen_opts = cutils.treesum.gen_generate_opts( |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
64 directories=[DATADIR], |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
65 algorithm="SHA1", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
66 fnmatch_filters=[("exclude", "glob:%s" % (rel_tmpdir,))], |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
67 generator="full", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
68 grouping_separator="_", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
69 output=digest_file, |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
70 output_style="tagged", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
71 print_size=True, |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
72 utf8=False) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
73 info_opts = cutils.treesum.gen_info_opts(digest_files=[digest_file], |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
74 last=True) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
75 cutils.treesum.generate_treesum(gen_opts) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
76 cutils.treesum.print_treesum_digestfile_infos(info_opts) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
77 info = cutils.treesum.TreesumInfo.collect_last_from_file(digest_file) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
78 self.assertEqual( |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
79 b"\xe1\x76\x18\xfc\x9b\x2f\x1e\x41\xfc\xe0\x04\xfc\x92\x43\x4e\xa7\x49\xbd\x57\x36", # noqa: E501 line too long |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
80 info.digest) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
81 self.assertEqual(2808, info.size) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
82 self.assertEqual("SHA1", info.algorithm) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
83 |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
84 def test_gen_and_info_L_utf8(self): |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
85 digest_file = os.path.join( |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
86 TMPDIR, |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
87 "%d__test_gen_and_info_L_utf8.info" % (os.getpid(),)) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
88 rel_tmpdir = os.path.relpath(TMPDIR, DATADIR) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
89 gen_opts = cutils.treesum.gen_generate_opts( |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
90 directories=[DATADIR], |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
91 algorithm="SHA1", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
92 fnmatch_filters=[("exclude", "glob:%s" % (rel_tmpdir,))], |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
93 follow_symlinks=cutils.treesum.FollowSymlinkConfig( |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
94 True, True, True), |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
95 generator="full", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
96 grouping_separator="_", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
97 output=digest_file, |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
98 output_style="tagged", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
99 print_size=True, |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
100 utf8=True) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
101 info_opts = cutils.treesum.gen_info_opts(digest_files=[digest_file], |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
102 last=True) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
103 cutils.treesum.generate_treesum(gen_opts) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
104 cutils.treesum.print_treesum_digestfile_infos(info_opts) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
105 info = cutils.treesum.TreesumInfo.collect_last_from_file(digest_file) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
106 self.assertEqual( |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
107 b"\xb3\xdd\x1b\x93\xec\x3a\xa5\xf1\xb1\xc6\xbd\x8c\x1e\xe1\xd5\xcf\x72\x65\x27\x1d", # noqa: E501 line too long |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
108 info.digest) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
109 self.assertEqual(2863, info.size) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
110 self.assertEqual("SHA1", info.algorithm) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
111 |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
112 def test_gen_and_info_L_native(self): |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
113 digest_file = os.path.join( |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
114 TMPDIR, |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
115 "%d__test_gen_and_info_L_native.info" % (os.getpid(),)) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
116 rel_tmpdir = os.path.relpath(TMPDIR, DATADIR) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
117 gen_opts = cutils.treesum.gen_generate_opts( |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
118 directories=[DATADIR], |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
119 algorithm="SHA1", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
120 fnmatch_filters=[("exclude", "glob:%s" % (rel_tmpdir,))], |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
121 follow_symlinks=cutils.treesum.FollowSymlinkConfig( |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
122 True, True, True), |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
123 generator="full", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
124 grouping_separator="_", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
125 output=digest_file, |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
126 output_style="tagged", |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
127 print_size=True, |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
128 utf8=False) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
129 info_opts = cutils.treesum.gen_info_opts(digest_files=[digest_file], |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
130 last=True) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
131 cutils.treesum.generate_treesum(gen_opts) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
132 cutils.treesum.print_treesum_digestfile_infos(info_opts) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
133 info = cutils.treesum.TreesumInfo.collect_last_from_file(digest_file) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
134 self.assertEqual( |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
135 b"\xb3\xdd\x1b\x93\xec\x3a\xa5\xf1\xb1\xc6\xbd\x8c\x1e\xe1\xd5\xcf\x72\x65\x27\x1d", # noqa: E501 line too long |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
136 info.digest) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
137 self.assertEqual(2863, info.size) |
|
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
138 self.assertEqual("SHA1", info.algorithm) |
|
380
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
139 |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
140 |
|
58552d3d1766
treesum: begin unittests for treesums and .treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
141 if __name__ == "__main__": |
|
381
ff4424a7a8cf
treesum: unit tests for generating and reading treesum files
Franz Glasner <fzglas.hg@dom66.de>
parents:
380
diff
changeset
|
142 sys.exit(unittest.main(buffer=True)) |
