FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
pygit2/test/test_diff_binary.py at master · libgit2/pygit2 · GitHub
libgit2
pygit2
Repository navigation
Code
Issues
184
(184)
Pull requests
5
(5)
Discussions
Actions
Projects
Wiki
Security and quality
Insights
Expand file tree
Breadcrumbs
pygit2
/
test
/
test_diff_binary.py
Copy path
More file actions
More file actions
Latest commit
History
History
History
75 lines (60 loc) · 2.48 KB
Breadcrumbs
pygit2
/
test
/
test_diff_binary.py
Copy path
File metadata and controls
75 lines (60 loc) · 2.48 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# Copyright 2010-2026 The pygit2 contributors
#
# This file is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License, version 2,
# as published by the Free Software Foundation.
#
# In addition to the permissions in the GNU General Public License,
# the authors give you unlimited permission to link the compiled
# version of this file into combinations with other programs,
# and to distribute those combinations without any restriction
# coming from the use of this file. (The General Public License
# restrictions do apply in other respects; for example, they cover
# modification of the file, and distribution when not linked into
# a combined executable.)
#
# This file is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; see the file COPYING. If not, write to
# the Free Software Foundation, 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
from
collections
.
abc
import
Generator
from
pathlib
import
Path
import
pytest
import
pygit2
from
pygit2
import
Repository
from
pygit2
.
enums
import
DiffOption
from
.
import
utils
@
pytest
.
fixture
def
repo
(
tmp_path
:
Path
)
->
Generator
[
Repository
,
None
,
None
]:
with
utils
.
TemporaryRepository
(
'binaryfilerepo.zip'
,
tmp_path
)
as
path
:
yield
pygit2
.
Repository
(
path
)
PATCH_BINARY
=
"""diff --git a/binary_file b/binary_file
index 86e5c10..b835d73 100644
Binary files a/binary_file and b/binary_file differ
"""
PATCH_BINARY_SHOW
=
"""diff --git a/binary_file b/binary_file
index 86e5c1008b5ce635d3e3fffa4434c5eccd8f00b6..b835d73543244b6694f36a8c5dfdffb71b153db7 100644
GIT binary patch
literal 8
Pc${NM%FIhFs^kIy3n&7R
literal 8
Pc${NM&PdElPvrst3ey5{
"""
def
test_binary_diff
(
repo
:
Repository
)
->
None
:
diff
=
repo
.
diff
(
'HEAD'
,
'HEAD^'
)
assert
PATCH_BINARY
==
diff
.
patch
diff
=
repo
.
diff
(
'HEAD'
,
'HEAD^'
,
flags
=
DiffOption
.
SHOW_BINARY
)
assert
PATCH_BINARY_SHOW
==
diff
.
patch
diff
=
repo
.
diff
(
b'HEAD'
,
b'HEAD^'
)
assert
PATCH_BINARY
==
diff
.
patch
diff
=
repo
.
diff
(
b'HEAD'
,
b'HEAD^'
,
flags
=
DiffOption
.
SHOW_BINARY
)
assert
PATCH_BINARY_SHOW
==
diff
.
patch
def
test_binary_delta_is_binary
(
repo
:
Repository
)
->
None
:
diff
=
repo
.
diff
(
'HEAD'
,
'HEAD^'
)
for
delta
in
diff
.
deltas
:
assert
delta
.
is_binary
Back
|
FazBrowse Home
|
New Git URL