File tree Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Original file line number Diff line number Diff line change
1
+ """
2
+ Ensure objects defined in gitlab.v4.objects are imported in
3
+ `gitlab/v4/objects/__init__.py`
4
+
5
+ """
6
+ import pkgutil
7
+ from typing import Set
8
+
9
+ import gitlab .v4 .objects
10
+
11
+
12
+ def test_verify_v4_objects_imported () -> None :
13
+ assert len (gitlab .v4 .objects .__path__ ) == 1
14
+
15
+ init_files : Set [str ] = set ()
16
+ with open (gitlab .v4 .objects .__file__ , "r" ) as in_file :
17
+ for line in in_file .readlines ():
18
+ if line .startswith ("from ." ):
19
+ init_files .add (line .rstrip ())
20
+
21
+ object_files = set ()
22
+ for module in pkgutil .iter_modules (gitlab .v4 .objects .__path__ ):
23
+ object_files .add (f"from .{ module .name } import *" )
24
+
25
+ missing_in_init = object_files - init_files
26
+ error_message = (
27
+ f"\n The file { gitlab .v4 .objects .__file__ !r} is missing the following imports:"
28
+ )
29
+ for missing in sorted (missing_in_init ):
30
+ error_message += f"\n { missing } "
31
+
32
+ assert not missing_in_init , error_message
You can’t perform that action at this time.
0 commit comments