@pytest.mark.skipif("sys.platform == 'win32'")
@pytest.mark.network
def test_check_submodule_addition(script):
 (module_path, submodule_path) = _create_test_package_with_submodule(script)
 install_result = script.pip('install', '-e', (('git+' + module_path) + '#egg=version_pkg'))
 assert ((script.venv / 'src/version-pkg/testpkg/static/testfile') in install_result.files_created)
 _change_test_package_submodule(script, submodule_path)
 _pull_in_submodule_changes_to_module(script, module_path)
 update_result = script.pip('install', '-e', (('git+' + module_path) + '#egg=version_pkg'), '--upgrade', expect_error=True)
 assert ((script.venv / 'src/version-pkg/testpkg/static/testfile2') in update_result.files_created)

@ pytest . mark . skipif ( "sys.platform == 'win32'" ) @ pytest . mark . network def test_check_submodule_addition ( script ) : ( module_path , submodule_path ) = _create_test_package_with_submodule ( script ) install_result = script . pip ( 'install' , '-e' , ( ( 'git+' + module_path ) + '#egg=version_pkg' ) ) assert ( ( script . venv / 'src/version-pkg/testpkg/static/testfile' ) in install_result . files_created ) _change_test_package_submodule ( script , submodule_path ) _pull_in_submodule_changes_to_module ( script , module_path ) update_result = script . pip ( 'install' , '-e' , ( ( 'git+' + module_path ) + '#egg=version_pkg' ) , '--upgrade' , expect_error = True ) assert ( ( script . venv / 'src/version-pkg/testpkg/static/testfile2' ) in update_result . files_created )
submodules are pulled in on install and updated on upgrade .