2323# the Free Software Foundation, 51 Franklin Street, Fifth Floor,
2424# Boston, MA 02110-1301, USA.
2525
26+ from typing import Generator
27+
2628import pytest
2729
30+ from pygit2 import Commit , Repository
2831from pygit2 .enums import BranchType
2932
3033ORIGIN_MASTER_COMMIT = '784855caf26449a1914d2cf62d12b9374d76ae78'
3134
3235
3336@pytest .fixture
34- def repo (emptyrepo ) :
37+ def repo (emptyrepo : Repository ) -> Generator [ Repository , None , None ] :
3538 remote = emptyrepo .remotes [0 ]
3639 remote .fetch ()
3740 yield emptyrepo
3841
3942
40- def test_branches_remote_get (repo ) :
43+ def test_branches_remote_get (repo : Repository ) -> None :
4144 branch = repo .branches .remote .get ('origin/master' )
4245 assert branch .target == ORIGIN_MASTER_COMMIT
4346 assert repo .branches .remote .get ('origin/not-exists' ) is None
4447
4548
46- def test_branches_remote (repo ) :
49+ def test_branches_remote (repo : Repository ) -> None :
4750 branches = sorted (repo .branches .remote )
4851 assert branches == ['origin/master' ]
4952
5053
51- def test_branches_remote_getitem (repo ) :
54+ def test_branches_remote_getitem (repo : Repository ) -> None :
5255 branch = repo .branches .remote ['origin/master' ]
5356 assert branch .remote_name == 'origin'
5457
5558
56- def test_branches_upstream (repo ) :
59+ def test_branches_upstream (repo : Repository ) -> None :
5760 remote_master = repo .branches .remote ['origin/master' ]
5861 master = repo .branches .create ('master' , repo [remote_master .target ])
5962
@@ -71,7 +74,7 @@ def set_bad_upstream():
7174 assert master .upstream is None
7275
7376
74- def test_branches_upstream_name (repo ) :
77+ def test_branches_upstream_name (repo : Repository ) -> None :
7578 remote_master = repo .branches .remote ['origin/master' ]
7679 master = repo .branches .create ('master' , repo [remote_master .target ])
7780
@@ -84,28 +87,30 @@ def test_branches_upstream_name(repo):
8487#
8588
8689
87- def test_lookup_branch_remote (repo ) :
90+ def test_lookup_branch_remote (repo : Repository ) -> None :
8891 branch = repo .lookup_branch ('origin/master' , BranchType .REMOTE )
8992 assert branch .target == ORIGIN_MASTER_COMMIT
9093 assert repo .lookup_branch ('origin/not-exists' , BranchType .REMOTE ) is None
9194
9295
93- def test_listall_branches (repo ) :
96+ def test_listall_branches (repo : Repository ) -> None :
9497 branches = sorted (repo .listall_branches (BranchType .REMOTE ))
9598 assert branches == ['origin/master' ]
9699
97- branches = sorted (repo .raw_listall_branches (BranchType .REMOTE ))
98- assert branches == [b'origin/master' ]
100+ branches_raw = sorted (repo .raw_listall_branches (BranchType .REMOTE ))
101+ assert branches_raw == [b'origin/master' ]
99102
100103
101- def test_branch_remote_name (repo ) :
104+ def test_branch_remote_name (repo : Repository ) -> None :
102105 branch = repo .lookup_branch ('origin/master' , BranchType .REMOTE )
103106 assert branch .remote_name == 'origin'
104107
105108
106- def test_branch_upstream (repo ) :
109+ def test_branch_upstream (repo : Repository ) -> None :
107110 remote_master = repo .lookup_branch ('origin/master' , BranchType .REMOTE )
108- master = repo .create_branch ('master' , repo [remote_master .target ])
111+ commit = repo [remote_master .target ]
112+ assert isinstance (commit , Commit )
113+ master = repo .create_branch ('master' , commit )
109114
110115 assert master .upstream is None
111116 master .upstream = remote_master
@@ -121,9 +126,11 @@ def set_bad_upstream():
121126 assert master .upstream is None
122127
123128
124- def test_branch_upstream_name (repo ) :
129+ def test_branch_upstream_name (repo : Repository ) -> None :
125130 remote_master = repo .lookup_branch ('origin/master' , BranchType .REMOTE )
126- master = repo .create_branch ('master' , repo [remote_master .target ])
131+ commit = repo [remote_master .target ]
132+ assert isinstance (commit , Commit )
133+ master = repo .create_branch ('master' , commit )
127134
128135 master .upstream = remote_master
129136 assert master .upstream_name == 'refs/remotes/origin/master'
0 commit comments