Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
python-poetry
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
open
python-poetry
Commits
be8e09ce
Commit
be8e09ce
authored
Oct 15, 2022
by
Bart Kamphorst
Committed by
Randy Döring
Oct 31, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
refactor: rename Pool to RepositoryPool
parent
d311fc71
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
27 changed files
with
227 additions
and
187 deletions
+227
-187
src/poetry/console/commands/debug/resolve.py
+2
-2
src/poetry/console/commands/init.py
+5
-5
src/poetry/console/commands/show.py
+2
-2
src/poetry/console/commands/source/add.py
+2
-2
src/poetry/installation/chooser.py
+4
-2
src/poetry/installation/executor.py
+2
-2
src/poetry/installation/installer.py
+3
-3
src/poetry/installation/pip_installer.py
+2
-2
src/poetry/poetry.py
+5
-5
src/poetry/puzzle/provider.py
+3
-3
src/poetry/puzzle/solver.py
+2
-2
src/poetry/repositories/__init__.py
+2
-2
src/poetry/repositories/repository_pool.py
+4
-4
src/poetry/version/version_selector.py
+2
-2
tests/conftest.py
+2
-2
tests/console/commands/self/conftest.py
+11
-6
tests/console/commands/test_init.py
+3
-2
tests/installation/test_chooser.py
+20
-12
tests/installation/test_executor.py
+38
-22
tests/installation/test_installer.py
+11
-11
tests/installation/test_installer_old.py
+10
-10
tests/installation/test_pip_installer.py
+13
-11
tests/mixology/version_solver/conftest.py
+4
-4
tests/mixology/version_solver/test_with_lock.py
+9
-9
tests/puzzle/test_provider.py
+4
-4
tests/puzzle/test_solver.py
+41
-35
tests/repositories/test_repository_pool.py
+21
-21
No files found.
src/poetry/console/commands/debug/resolve.py
View file @
be8e09ce
...
@@ -36,8 +36,8 @@ class DebugResolveCommand(InitCommand):
...
@@ -36,8 +36,8 @@ class DebugResolveCommand(InitCommand):
from
poetry.factory
import
Factory
from
poetry.factory
import
Factory
from
poetry.puzzle.solver
import
Solver
from
poetry.puzzle.solver
import
Solver
from
poetry.repositories.pool
import
Pool
from
poetry.repositories.repository
import
Repository
from
poetry.repositories.repository
import
Repository
from
poetry.repositories.repository_pool
import
RepositoryPool
from
poetry.utils.env
import
EnvManager
from
poetry.utils.env
import
EnvManager
packages
=
self
.
argument
(
"package"
)
packages
=
self
.
argument
(
"package"
)
...
@@ -107,7 +107,7 @@ class DebugResolveCommand(InitCommand):
...
@@ -107,7 +107,7 @@ class DebugResolveCommand(InitCommand):
if
self
.
option
(
"install"
):
if
self
.
option
(
"install"
):
env
=
EnvManager
(
self
.
poetry
)
.
get
()
env
=
EnvManager
(
self
.
poetry
)
.
get
()
pool
=
Pool
()
pool
=
Repository
Pool
()
locked_repository
=
Repository
(
"poetry-locked"
)
locked_repository
=
Repository
(
"poetry-locked"
)
for
op
in
ops
:
for
op
in
ops
:
locked_repository
.
add_package
(
op
.
package
)
locked_repository
.
add_package
(
op
.
package
)
...
...
src/poetry/console/commands/init.py
View file @
be8e09ce
...
@@ -23,7 +23,7 @@ if TYPE_CHECKING:
...
@@ -23,7 +23,7 @@ if TYPE_CHECKING:
from
poetry.core.packages.package
import
Package
from
poetry.core.packages.package
import
Package
from
tomlkit.items
import
InlineTable
from
tomlkit.items
import
InlineTable
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
Pool
Requirements
=
Dict
[
str
,
Union
[
str
,
Mapping
[
str
,
Any
]]]
Requirements
=
Dict
[
str
,
Union
[
str
,
Mapping
[
str
,
Any
]]]
...
@@ -66,7 +66,7 @@ The <c1>init</c1> command creates a basic <comment>pyproject.toml</> file in the
...
@@ -66,7 +66,7 @@ The <c1>init</c1> command creates a basic <comment>pyproject.toml</> file in the
def
__init__
(
self
)
->
None
:
def
__init__
(
self
)
->
None
:
super
()
.
__init__
()
super
()
.
__init__
()
self
.
_pool
:
Pool
|
None
=
None
self
.
_pool
:
Repository
Pool
|
None
=
None
def
handle
(
self
)
->
int
:
def
handle
(
self
)
->
int
:
from
pathlib
import
Path
from
pathlib
import
Path
...
@@ -462,15 +462,15 @@ You can specify a package in the following forms:
...
@@ -462,15 +462,15 @@ You can specify a package in the following forms:
return
package
return
package
def
_get_pool
(
self
)
->
Pool
:
def
_get_pool
(
self
)
->
Repository
Pool
:
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
Pool
from
poetry.repositories.pypi_repository
import
PyPiRepository
from
poetry.repositories.pypi_repository
import
PyPiRepository
if
isinstance
(
self
,
EnvCommand
):
if
isinstance
(
self
,
EnvCommand
):
return
self
.
poetry
.
pool
return
self
.
poetry
.
pool
if
self
.
_pool
is
None
:
if
self
.
_pool
is
None
:
self
.
_pool
=
Pool
()
self
.
_pool
=
Repository
Pool
()
self
.
_pool
.
add_repository
(
PyPiRepository
())
self
.
_pool
.
add_repository
(
PyPiRepository
())
return
self
.
_pool
return
self
.
_pool
src/poetry/console/commands/show.py
View file @
be8e09ce
...
@@ -194,11 +194,11 @@ lists all packages available."""
...
@@ -194,11 +194,11 @@ lists all packages available."""
from
poetry.puzzle.solver
import
Solver
from
poetry.puzzle.solver
import
Solver
from
poetry.repositories.installed_repository
import
InstalledRepository
from
poetry.repositories.installed_repository
import
InstalledRepository
from
poetry.repositories.
pool
import
Pool
from
poetry.repositories.
repository_pool
import
Repository
Pool
from
poetry.utils.helpers
import
get_package_version_display_string
from
poetry.utils.helpers
import
get_package_version_display_string
locked_packages
=
locked_repository
.
packages
locked_packages
=
locked_repository
.
packages
pool
=
Pool
(
ignore_repository_names
=
True
)
pool
=
Repository
Pool
(
ignore_repository_names
=
True
)
pool
.
add_repository
(
locked_repository
)
pool
.
add_repository
(
locked_repository
)
solver
=
Solver
(
solver
=
Solver
(
root
,
root
,
...
...
src/poetry/console/commands/source/add.py
View file @
be8e09ce
...
@@ -34,7 +34,7 @@ class SourceAddCommand(Command):
...
@@ -34,7 +34,7 @@ class SourceAddCommand(Command):
def
handle
(
self
)
->
int
:
def
handle
(
self
)
->
int
:
from
poetry.factory
import
Factory
from
poetry.factory
import
Factory
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
Pool
from
poetry.utils.source
import
source_to_table
from
poetry.utils.source
import
source_to_table
name
=
self
.
argument
(
"name"
)
name
=
self
.
argument
(
"name"
)
...
@@ -83,7 +83,7 @@ class SourceAddCommand(Command):
...
@@ -83,7 +83,7 @@ class SourceAddCommand(Command):
sources
.
append
(
source_to_table
(
new_source
))
sources
.
append
(
source_to_table
(
new_source
))
# ensure new source is valid. eg: invalid name etc.
# ensure new source is valid. eg: invalid name etc.
self
.
poetry
.
_pool
=
Pool
()
self
.
poetry
.
_pool
=
Repository
Pool
()
try
:
try
:
Factory
.
configure_sources
(
Factory
.
configure_sources
(
self
.
poetry
,
sources
,
self
.
poetry
.
config
,
NullIO
()
self
.
poetry
,
sources
,
self
.
poetry
.
config
,
NullIO
()
...
...
src/poetry/installation/chooser.py
View file @
be8e09ce
...
@@ -18,7 +18,7 @@ if TYPE_CHECKING:
...
@@ -18,7 +18,7 @@ if TYPE_CHECKING:
from
poetry.core.packages.package
import
Package
from
poetry.core.packages.package
import
Package
from
poetry.core.packages.utils.link
import
Link
from
poetry.core.packages.utils.link
import
Link
from
poetry.repositories.
pool
import
Pool
from
poetry.repositories.
repository_pool
import
Repository
Pool
from
poetry.utils.env
import
Env
from
poetry.utils.env
import
Env
...
@@ -61,7 +61,9 @@ class Chooser:
...
@@ -61,7 +61,9 @@ class Chooser:
A Chooser chooses an appropriate release archive for packages.
A Chooser chooses an appropriate release archive for packages.
"""
"""
def
__init__
(
self
,
pool
:
Pool
,
env
:
Env
,
config
:
Config
|
None
=
None
)
->
None
:
def
__init__
(
self
,
pool
:
RepositoryPool
,
env
:
Env
,
config
:
Config
|
None
=
None
)
->
None
:
self
.
_pool
=
pool
self
.
_pool
=
pool
self
.
_env
=
env
self
.
_env
=
env
self
.
_config
=
config
or
Config
.
create
()
self
.
_config
=
config
or
Config
.
create
()
...
...
src/poetry/installation/executor.py
View file @
be8e09ce
...
@@ -41,7 +41,7 @@ if TYPE_CHECKING:
...
@@ -41,7 +41,7 @@ if TYPE_CHECKING:
from
poetry.config.config
import
Config
from
poetry.config.config
import
Config
from
poetry.installation.operations.operation
import
Operation
from
poetry.installation.operations.operation
import
Operation
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
Pool
from
poetry.utils.env
import
Env
from
poetry.utils.env
import
Env
...
@@ -49,7 +49,7 @@ class Executor:
...
@@ -49,7 +49,7 @@ class Executor:
def
__init__
(
def
__init__
(
self
,
self
,
env
:
Env
,
env
:
Env
,
pool
:
Pool
,
pool
:
Repository
Pool
,
config
:
Config
,
config
:
Config
,
io
:
IO
,
io
:
IO
,
parallel
:
bool
|
None
=
None
,
parallel
:
bool
|
None
=
None
,
...
...
src/poetry/installation/installer.py
View file @
be8e09ce
...
@@ -10,8 +10,8 @@ from poetry.installation.operations import Install
...
@@ -10,8 +10,8 @@ from poetry.installation.operations import Install
from
poetry.installation.operations
import
Uninstall
from
poetry.installation.operations
import
Uninstall
from
poetry.installation.operations
import
Update
from
poetry.installation.operations
import
Update
from
poetry.installation.pip_installer
import
PipInstaller
from
poetry.installation.pip_installer
import
PipInstaller
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
from
poetry.repositories
import
Repository
from
poetry.repositories
import
RepositoryPool
from
poetry.repositories.installed_repository
import
InstalledRepository
from
poetry.repositories.installed_repository
import
InstalledRepository
from
poetry.repositories.lockfile_repository
import
LockfileRepository
from
poetry.repositories.lockfile_repository
import
LockfileRepository
from
poetry.utils.extras
import
get_extra_package_names
from
poetry.utils.extras
import
get_extra_package_names
...
@@ -39,7 +39,7 @@ class Installer:
...
@@ -39,7 +39,7 @@ class Installer:
env
:
Env
,
env
:
Env
,
package
:
ProjectPackage
,
package
:
ProjectPackage
,
locker
:
Locker
,
locker
:
Locker
,
pool
:
Pool
,
pool
:
Repository
Pool
,
config
:
Config
,
config
:
Config
,
installed
:
Repository
|
None
=
None
,
installed
:
Repository
|
None
=
None
,
executor
:
Executor
|
None
=
None
,
executor
:
Executor
|
None
=
None
,
...
@@ -300,7 +300,7 @@ class Installer:
...
@@ -300,7 +300,7 @@ class Installer:
)
)
# We resolve again by only using the lock file
# We resolve again by only using the lock file
pool
=
Pool
(
ignore_repository_names
=
True
)
pool
=
Repository
Pool
(
ignore_repository_names
=
True
)
# Making a new repo containing the packages
# Making a new repo containing the packages
# newly resolved and the ones from the current lock file
# newly resolved and the ones from the current lock file
...
...
src/poetry/installation/pip_installer.py
View file @
be8e09ce
...
@@ -25,12 +25,12 @@ if TYPE_CHECKING:
...
@@ -25,12 +25,12 @@ if TYPE_CHECKING:
from
poetry.core.masonry.builders.builder
import
Builder
from
poetry.core.masonry.builders.builder
import
Builder
from
poetry.core.packages.package
import
Package
from
poetry.core.packages.package
import
Package
from
poetry.repositories.
pool
import
Pool
from
poetry.repositories.
repository_pool
import
Repository
Pool
from
poetry.utils.env
import
Env
from
poetry.utils.env
import
Env
class
PipInstaller
(
BaseInstaller
):
class
PipInstaller
(
BaseInstaller
):
def
__init__
(
self
,
env
:
Env
,
io
:
IO
,
pool
:
Pool
)
->
None
:
def
__init__
(
self
,
env
:
Env
,
io
:
IO
,
pool
:
Repository
Pool
)
->
None
:
self
.
_env
=
env
self
.
_env
=
env
self
.
_io
=
io
self
.
_io
=
io
self
.
_pool
=
pool
self
.
_pool
=
pool
...
...
src/poetry/poetry.py
View file @
be8e09ce
...
@@ -17,7 +17,7 @@ if TYPE_CHECKING:
...
@@ -17,7 +17,7 @@ if TYPE_CHECKING:
from
poetry.config.config
import
Config
from
poetry.config.config
import
Config
from
poetry.packages.locker
import
Locker
from
poetry.packages.locker
import
Locker
from
poetry.plugins.plugin_manager
import
PluginManager
from
poetry.plugins.plugin_manager
import
PluginManager
from
poetry.repositories.
pool
import
Pool
from
poetry.repositories.
repository_pool
import
Repository
Pool
class
Poetry
(
BasePoetry
):
class
Poetry
(
BasePoetry
):
...
@@ -32,13 +32,13 @@ class Poetry(BasePoetry):
...
@@ -32,13 +32,13 @@ class Poetry(BasePoetry):
config
:
Config
,
config
:
Config
,
disable_cache
:
bool
=
False
,
disable_cache
:
bool
=
False
,
)
->
None
:
)
->
None
:
from
poetry.repositories.
pool
import
Pool
from
poetry.repositories.
repository_pool
import
Repository
Pool
super
()
.
__init__
(
file
,
local_config
,
package
)
super
()
.
__init__
(
file
,
local_config
,
package
)
self
.
_locker
=
locker
self
.
_locker
=
locker
self
.
_config
=
config
self
.
_config
=
config
self
.
_pool
=
Pool
()
self
.
_pool
=
Repository
Pool
()
self
.
_plugin_manager
:
PluginManager
|
None
=
None
self
.
_plugin_manager
:
PluginManager
|
None
=
None
self
.
_disable_cache
=
disable_cache
self
.
_disable_cache
=
disable_cache
...
@@ -47,7 +47,7 @@ class Poetry(BasePoetry):
...
@@ -47,7 +47,7 @@ class Poetry(BasePoetry):
return
self
.
_locker
return
self
.
_locker
@property
@property
def
pool
(
self
)
->
Pool
:
def
pool
(
self
)
->
Repository
Pool
:
return
self
.
_pool
return
self
.
_pool
@property
@property
...
@@ -63,7 +63,7 @@ class Poetry(BasePoetry):
...
@@ -63,7 +63,7 @@ class Poetry(BasePoetry):
return
self
return
self
def
set_pool
(
self
,
pool
:
Pool
)
->
Poetry
:
def
set_pool
(
self
,
pool
:
Repository
Pool
)
->
Poetry
:
self
.
_pool
=
pool
self
.
_pool
=
pool
return
self
return
self
...
...
src/poetry/puzzle/provider.py
View file @
be8e09ce
...
@@ -52,7 +52,7 @@ if TYPE_CHECKING:
...
@@ -52,7 +52,7 @@ if TYPE_CHECKING:
from
poetry.core.packages.vcs_dependency
import
VCSDependency
from
poetry.core.packages.vcs_dependency
import
VCSDependency
from
poetry.core.version.markers
import
BaseMarker
from
poetry.core.version.markers
import
BaseMarker
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
Pool
from
poetry.utils.env
import
Env
from
poetry.utils.env
import
Env
...
@@ -124,7 +124,7 @@ class Provider:
...
@@ -124,7 +124,7 @@ class Provider:
def
__init__
(
def
__init__
(
self
,
self
,
package
:
Package
,
package
:
Package
,
pool
:
Pool
,
pool
:
Repository
Pool
,
io
:
IO
,
io
:
IO
,
*
,
*
,
installed
:
list
[
Package
]
|
None
=
None
,
installed
:
list
[
Package
]
|
None
=
None
,
...
@@ -156,7 +156,7 @@ class Provider:
...
@@ -156,7 +156,7 @@ class Provider:
)
)
@property
@property
def
pool
(
self
)
->
Pool
:
def
pool
(
self
)
->
Repository
Pool
:
return
self
.
_pool
return
self
.
_pool
@property
@property
...
...
src/poetry/puzzle/solver.py
View file @
be8e09ce
...
@@ -31,7 +31,7 @@ if TYPE_CHECKING:
...
@@ -31,7 +31,7 @@ if TYPE_CHECKING:
from
poetry.packages
import
DependencyPackage
from
poetry.packages
import
DependencyPackage
from
poetry.puzzle.transaction
import
Transaction
from
poetry.puzzle.transaction
import
Transaction
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
Pool
from
poetry.utils.env
import
Env
from
poetry.utils.env
import
Env
...
@@ -39,7 +39,7 @@ class Solver:
...
@@ -39,7 +39,7 @@ class Solver:
def
__init__
(
def
__init__
(
self
,
self
,
package
:
ProjectPackage
,
package
:
ProjectPackage
,
pool
:
Pool
,
pool
:
Repository
Pool
,
installed
:
list
[
Package
],
installed
:
list
[
Package
],
locked
:
list
[
Package
],
locked
:
list
[
Package
],
io
:
IO
,
io
:
IO
,
...
...
src/poetry/repositories/__init__.py
View file @
be8e09ce
from
__future__
import
annotations
from
__future__
import
annotations
from
poetry.repositories.pool
import
Pool
from
poetry.repositories.repository
import
Repository
from
poetry.repositories.repository
import
Repository
from
poetry.repositories.repository_pool
import
RepositoryPool
__all__
=
[
"
Pool"
,
"Repository
"
]
__all__
=
[
"
Repository"
,
"RepositoryPool
"
]
src/poetry/repositories/pool.py
→
src/poetry/repositories/
repository_
pool.py
View file @
be8e09ce
...
@@ -33,13 +33,13 @@ class PrioritizedRepository:
...
@@ -33,13 +33,13 @@ class PrioritizedRepository:
priority
:
Priority
priority
:
Priority
class
Pool
(
AbstractRepository
):
class
Repository
Pool
(
AbstractRepository
):
def
__init__
(
def
__init__
(
self
,
self
,
repositories
:
list
[
Repository
]
|
None
=
None
,
repositories
:
list
[
Repository
]
|
None
=
None
,
ignore_repository_names
:
bool
=
False
,
ignore_repository_names
:
bool
=
False
,
)
->
None
:
)
->
None
:
super
()
.
__init__
(
"poetry-pool"
)
super
()
.
__init__
(
"poetry-
repository-
pool"
)
self
.
_repositories
:
OrderedDict
[
str
,
PrioritizedRepository
]
=
OrderedDict
()
self
.
_repositories
:
OrderedDict
[
str
,
PrioritizedRepository
]
=
OrderedDict
()
self
.
_ignore_repository_names
=
ignore_repository_names
self
.
_ignore_repository_names
=
ignore_repository_names
...
@@ -78,7 +78,7 @@ class Pool(AbstractRepository):
...
@@ -78,7 +78,7 @@ class Pool(AbstractRepository):
def
add_repository
(
def
add_repository
(
self
,
repository
:
Repository
,
default
:
bool
=
False
,
secondary
:
bool
=
False
self
,
repository
:
Repository
,
default
:
bool
=
False
,
secondary
:
bool
=
False
)
->
Pool
:
)
->
Repository
Pool
:
"""
"""
Adds a repository to the pool.
Adds a repository to the pool.
"""
"""
...
@@ -101,7 +101,7 @@ class Pool(AbstractRepository):
...
@@ -101,7 +101,7 @@ class Pool(AbstractRepository):
)
)
return
self
return
self
def
remove_repository
(
self
,
name
:
str
)
->
Pool
:
def
remove_repository
(
self
,
name
:
str
)
->
Repository
Pool
:
if
not
self
.
has_repository
(
name
):
if
not
self
.
has_repository
(
name
):
raise
IndexError
(
f
"Pool can not remove unknown repository '{name}'."
)
raise
IndexError
(
f
"Pool can not remove unknown repository '{name}'."
)
del
self
.
_repositories
[
name
.
lower
()]
del
self
.
_repositories
[
name
.
lower
()]
...
...
src/poetry/version/version_selector.py
View file @
be8e09ce
...
@@ -8,11 +8,11 @@ from poetry.core.constraints.version import Version
...
@@ -8,11 +8,11 @@ from poetry.core.constraints.version import Version
if
TYPE_CHECKING
:
if
TYPE_CHECKING
:
from
poetry.core.packages.package
import
Package
from
poetry.core.packages.package
import
Package
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
Pool
class
VersionSelector
:
class
VersionSelector
:
def
__init__
(
self
,
pool
:
Pool
)
->
None
:
def
__init__
(
self
,
pool
:
Repository
Pool
)
->
None
:
self
.
_pool
=
pool
self
.
_pool
=
pool
def
find_best_candidate
(
def
find_best_candidate
(
...
...
tests/conftest.py
View file @
be8e09ce
...
@@ -24,8 +24,8 @@ from poetry.factory import Factory
...
@@ -24,8 +24,8 @@ from poetry.factory import Factory
from
poetry.inspection.info
import
PackageInfo
from
poetry.inspection.info
import
PackageInfo
from
poetry.inspection.info
import
PackageInfoError
from
poetry.inspection.info
import
PackageInfoError
from
poetry.layouts
import
layout
from
poetry.layouts
import
layout
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
from
poetry.repositories
import
Repository
from
poetry.repositories
import
RepositoryPool
from
poetry.utils.env
import
EnvManager
from
poetry.utils.env
import
EnvManager
from
poetry.utils.env
import
SystemEnv
from
poetry.utils.env
import
SystemEnv
from
poetry.utils.env
import
VirtualEnv
from
poetry.utils.env
import
VirtualEnv
...
@@ -419,7 +419,7 @@ def project_factory(
...
@@ -419,7 +419,7 @@ def project_factory(
poetry
.
set_locker
(
locker
)
poetry
.
set_locker
(
locker
)
poetry
.
set_config
(
config
)
poetry
.
set_config
(
config
)
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
repo
)
pool
.
add_repository
(
repo
)
poetry
.
set_pool
(
pool
)
poetry
.
set_pool
(
pool
)
...
...
tests/console/commands/self/conftest.py
View file @
be8e09ce
...
@@ -7,7 +7,7 @@ import pytest
...
@@ -7,7 +7,7 @@ import pytest
from
poetry.core.packages.package
import
Package
from
poetry.core.packages.package
import
Package
from
poetry.__version__
import
__version__
from
poetry.__version__
import
__version__
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
Pool
from
poetry.utils.env
import
EnvManager
from
poetry.utils.env
import
EnvManager
...
@@ -34,8 +34,8 @@ def save_environ(environ: None) -> Repository:
...
@@ -34,8 +34,8 @@ def save_environ(environ: None) -> Repository:
@pytest.fixture
()
@pytest.fixture
()
def
pool
(
repo
:
TestRepository
)
->
Pool
:
def
pool
(
repo
:
TestRepository
)
->
Repository
Pool
:
return
Pool
([
repo
])
return
Repository
Pool
([
repo
])
@pytest.fixture
(
autouse
=
True
)
@pytest.fixture
(
autouse
=
True
)
...
@@ -43,12 +43,17 @@ def setup_mocks(
...
@@ -43,12 +43,17 @@ def setup_mocks(
mocker
:
MockerFixture
,
mocker
:
MockerFixture
,
tmp_venv
:
VirtualEnv
,
tmp_venv
:
VirtualEnv
,
installed
:
Repository
,
installed
:
Repository
,
pool
:
Pool
,
pool
:
Repository
Pool
,
http
:
type
[
httpretty
.
httpretty
],
http
:
type
[
httpretty
.
httpretty
],
)
->
None
:
)
->
None
:
mocker
.
patch
.
object
(
EnvManager
,
"get_system_env"
,
return_value
=
tmp_venv
)
mocker
.
patch
.
object
(
EnvManager
,
"get_system_env"
,
return_value
=
tmp_venv
)
mocker
.
patch
(
"poetry.repositories.pool.Pool.find_packages"
,
pool
.
find_packages
)
mocker
.
patch
(
mocker
.
patch
(
"poetry.repositories.pool.Pool.package"
,
pool
.
package
)
"poetry.repositories.repository_pool.RepositoryPool.find_packages"
,
pool
.
find_packages
,
)
mocker
.
patch
(
"poetry.repositories.repository_pool.RepositoryPool.package"
,
pool
.
package
)
mocker
.
patch
(
"poetry.installation.executor.pip_install"
)
mocker
.
patch
(
"poetry.installation.executor.pip_install"
)
mocker
.
patch
(
mocker
.
patch
(
"poetry.installation.installer.Installer._get_installed"
,
"poetry.installation.installer.Installer._get_installed"
,
...
...
tests/console/commands/test_init.py
View file @
be8e09ce
...
@@ -13,7 +13,7 @@ from cleo.testers.command_tester import CommandTester
...
@@ -13,7 +13,7 @@ from cleo.testers.command_tester import CommandTester
from
packaging.utils
import
canonicalize_name
from
packaging.utils
import
canonicalize_name
from
poetry.console.commands.init
import
InitCommand
from
poetry.console.commands.init
import
InitCommand
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
Pool
from
poetry.utils._compat
import
decode
from
poetry.utils._compat
import
decode
from
tests.helpers
import
PoetryTestApplication
from
tests.helpers
import
PoetryTestApplication
from
tests.helpers
import
get_package
from
tests.helpers
import
get_package
...
@@ -46,7 +46,8 @@ def source_dir(tmp_path: Path) -> Iterator[Path]:
...
@@ -46,7 +46,8 @@ def source_dir(tmp_path: Path) -> Iterator[Path]:
def
patches
(
mocker
:
MockerFixture
,
source_dir
:
Path
,
repo
:
TestRepository
)
->
None
:
def
patches
(
mocker
:
MockerFixture
,
source_dir
:
Path
,
repo
:
TestRepository
)
->
None
:
mocker
.
patch
(
"pathlib.Path.cwd"
,
return_value
=
source_dir
)
mocker
.
patch
(
"pathlib.Path.cwd"
,
return_value
=
source_dir
)
mocker
.
patch
(
mocker
.
patch
(
"poetry.console.commands.init.InitCommand._get_pool"
,
return_value
=
Pool
([
repo
])
"poetry.console.commands.init.InitCommand._get_pool"
,
return_value
=
RepositoryPool
([
repo
]),
)
)
...
...
tests/installation/test_chooser.py
View file @
be8e09ce
...
@@ -13,8 +13,8 @@ from poetry.core.packages.package import Package
...
@@ -13,8 +13,8 @@ from poetry.core.packages.package import Package
from
poetry.installation.chooser
import
Chooser
from
poetry.installation.chooser
import
Chooser
from
poetry.repositories.legacy_repository
import
LegacyRepository
from
poetry.repositories.legacy_repository
import
LegacyRepository
from
poetry.repositories.pool
import
Pool
from
poetry.repositories.pypi_repository
import
PyPiRepository
from
poetry.repositories.pypi_repository
import
PyPiRepository
from
poetry.repositories.repository_pool
import
RepositoryPool
from
poetry.utils.env
import
MockEnv
from
poetry.utils.env
import
MockEnv
...
@@ -111,8 +111,8 @@ def mock_legacy_partial_yank(http: type[httpretty.httpretty]) -> None:
...
@@ -111,8 +111,8 @@ def mock_legacy_partial_yank(http: type[httpretty.httpretty]) -> None:
@pytest.fixture
()
@pytest.fixture
()
def
pool
()
->
Pool
:
def
pool
()
->
Repository
Pool
:
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
PyPiRepository
(
disable_cache
=
True
))
pool
.
add_repository
(
PyPiRepository
(
disable_cache
=
True
))
pool
.
add_repository
(
pool
.
add_repository
(
...
@@ -127,7 +127,11 @@ def pool() -> Pool:
...
@@ -127,7 +127,11 @@ def pool() -> Pool:
@pytest.mark.parametrize
(
"source_type"
,
[
""
,
"legacy"
])
@pytest.mark.parametrize
(
"source_type"
,
[
""
,
"legacy"
])
def
test_chooser_chooses_universal_wheel_link_if_available
(
def
test_chooser_chooses_universal_wheel_link_if_available
(
env
:
MockEnv
,
mock_pypi
:
None
,
mock_legacy
:
None
,
source_type
:
str
,
pool
:
Pool
env
:
MockEnv
,
mock_pypi
:
None
,
mock_legacy
:
None
,
source_type
:
str
,
pool
:
RepositoryPool
,
):
):
chooser
=
Chooser
(
pool
,
env
)
chooser
=
Chooser
(
pool
,
env
)
...
@@ -162,7 +166,7 @@ def test_chooser_no_binary_policy(
...
@@ -162,7 +166,7 @@ def test_chooser_no_binary_policy(
mock_pypi
:
None
,
mock_pypi
:
None
,
mock_legacy
:
None
,
mock_legacy
:
None
,
source_type
:
str
,
source_type
:
str
,
pool
:
Pool
,
pool
:
Repository
Pool
,
policy
:
str
,
policy
:
str
,
filename
:
str
,
filename
:
str
,
config
:
Config
,
config
:
Config
,
...
@@ -188,7 +192,11 @@ def test_chooser_no_binary_policy(
...
@@ -188,7 +192,11 @@ def test_chooser_no_binary_policy(
@pytest.mark.parametrize
(
"source_type"
,
[
""
,
"legacy"
])
@pytest.mark.parametrize
(
"source_type"
,
[
""
,
"legacy"
])
def
test_chooser_chooses_specific_python_universal_wheel_link_if_available
(
def
test_chooser_chooses_specific_python_universal_wheel_link_if_available
(
env
:
MockEnv
,
mock_pypi
:
None
,
mock_legacy
:
None
,
source_type
:
str
,
pool
:
Pool
env
:
MockEnv
,
mock_pypi
:
None
,
mock_legacy
:
None
,
source_type
:
str
,
pool
:
RepositoryPool
,
):
):
chooser
=
Chooser
(
pool
,
env
)
chooser
=
Chooser
(
pool
,
env
)
...
@@ -209,7 +217,7 @@ def test_chooser_chooses_specific_python_universal_wheel_link_if_available(
...
@@ -209,7 +217,7 @@ def test_chooser_chooses_specific_python_universal_wheel_link_if_available(
@pytest.mark.parametrize
(
"source_type"
,
[
""
,
"legacy"
])
@pytest.mark.parametrize
(
"source_type"
,
[
""
,
"legacy"
])
def
test_chooser_chooses_system_specific_wheel_link_if_available
(
def
test_chooser_chooses_system_specific_wheel_link_if_available
(
mock_pypi
:
None
,
mock_legacy
:
None
,
source_type
:
str
,
pool
:
Pool
mock_pypi
:
None
,
mock_legacy
:
None
,
source_type
:
str
,
pool
:
Repository
Pool
):
):
env
=
MockEnv
(
env
=
MockEnv
(
supported_tags
=
[
Tag
(
"cp37"
,
"cp37m"
,
"win32"
),
Tag
(
"py3"
,
"none"
,
"any"
)]
supported_tags
=
[
Tag
(
"cp37"
,
"cp37m"
,
"win32"
),
Tag
(
"py3"
,
"none"
,
"any"
)]
...
@@ -237,7 +245,7 @@ def test_chooser_chooses_sdist_if_no_compatible_wheel_link_is_available(
...
@@ -237,7 +245,7 @@ def test_chooser_chooses_sdist_if_no_compatible_wheel_link_is_available(
mock_pypi
:
None
,
mock_pypi
:
None
,
mock_legacy
:
None
,
mock_legacy
:
None
,
source_type
:
str
,
source_type
:
str
,
pool
:
Pool
,
pool
:
Repository
Pool
,
):
):
chooser
=
Chooser
(
pool
,
env
)
chooser
=
Chooser
(
pool
,
env
)
...
@@ -262,7 +270,7 @@ def test_chooser_chooses_distributions_that_match_the_package_hashes(
...
@@ -262,7 +270,7 @@ def test_chooser_chooses_distributions_that_match_the_package_hashes(
mock_pypi
:
None
,
mock_pypi
:
None
,
mock_legacy
:
None
,
mock_legacy
:
None
,
source_type
:
str
,
source_type
:
str
,
pool
:
Pool
,
pool
:
Repository
Pool
,
):
):
chooser
=
Chooser
(
pool
,
env
)
chooser
=
Chooser
(
pool
,
env
)
...
@@ -295,7 +303,7 @@ def test_chooser_chooses_yanked_if_no_others(
...
@@ -295,7 +303,7 @@ def test_chooser_chooses_yanked_if_no_others(
mock_pypi
:
None
,
mock_pypi
:
None
,
mock_legacy
:
None
,
mock_legacy
:
None
,
source_type
:
str
,
source_type
:
str
,
pool
:
Pool
,
pool
:
Repository
Pool
,
)
->
None
:
)
->
None
:
chooser
=
Chooser
(
pool
,
env
)
chooser
=
Chooser
(
pool
,
env
)
...
@@ -326,7 +334,7 @@ def test_chooser_chooses_yanked_if_no_others(
...
@@ -326,7 +334,7 @@ def test_chooser_chooses_yanked_if_no_others(
def
test_chooser_does_not_choose_yanked_if_others
(
def
test_chooser_does_not_choose_yanked_if_others
(
mock_legacy
:
None
,
mock_legacy
:
None
,
mock_legacy_partial_yank
:
None
,
mock_legacy_partial_yank
:
None
,
pool
:
Pool
,
pool
:
Repository
Pool
,
)
->
None
:
)
->
None
:
chooser
=
Chooser
(
pool
,
MockEnv
(
supported_tags
=
[
Tag
(
"py2"
,
"none"
,
"any"
)]))
chooser
=
Chooser
(
pool
,
MockEnv
(
supported_tags
=
[
Tag
(
"py2"
,
"none"
,
"any"
)]))
...
@@ -372,7 +380,7 @@ def test_chooser_throws_an_error_if_package_hashes_do_not_match(
...
@@ -372,7 +380,7 @@ def test_chooser_throws_an_error_if_package_hashes_do_not_match(
mock_pypi
:
None
,
mock_pypi
:
None
,
mock_legacy
:
None
,
mock_legacy
:
None
,
source_type
:
None
,
source_type
:
None
,
pool
:
Pool
,
pool
:
Repository
Pool
,
):
):
chooser
=
Chooser
(
pool
,
env
)
chooser
=
Chooser
(
pool
,
env
)
...
...
tests/installation/test_executor.py
View file @
be8e09ce
...
@@ -20,7 +20,7 @@ from poetry.installation.executor import Executor
...
@@ -20,7 +20,7 @@ from poetry.installation.executor import Executor
from
poetry.installation.operations
import
Install
from
poetry.installation.operations
import
Install
from
poetry.installation.operations
import
Uninstall
from
poetry.installation.operations
import
Uninstall
from
poetry.installation.operations
import
Update
from
poetry.installation.operations
import
Update
from
poetry.repositories.
pool
import
Pool
from
poetry.repositories.
repository_pool
import
Repository
Pool
from
poetry.utils.env
import
MockEnv
from
poetry.utils.env
import
MockEnv
from
tests.repositories.test_pypi_repository
import
MockRepository
from
tests.repositories.test_pypi_repository
import
MockRepository
...
@@ -73,8 +73,8 @@ def io_not_decorated() -> BufferedIO:
...
@@ -73,8 +73,8 @@ def io_not_decorated() -> BufferedIO:
@pytest.fixture
()
@pytest.fixture
()
def
pool
()
->
Pool
:
def
pool
()
->
Repository
Pool
:
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
MockRepository
())
pool
.
add_repository
(
MockRepository
())
return
pool
return
pool
...
@@ -102,7 +102,7 @@ def mock_file_downloads(http: type[httpretty.httpretty]) -> None:
...
@@ -102,7 +102,7 @@ def mock_file_downloads(http: type[httpretty.httpretty]) -> None:
def
test_execute_executes_a_batch_of_operations
(
def
test_execute_executes_a_batch_of_operations
(
mocker
:
MockerFixture
,
mocker
:
MockerFixture
,
config
:
Config
,
config
:
Config
,
pool
:
Pool
,
pool
:
Repository
Pool
,
io
:
BufferedIO
,
io
:
BufferedIO
,
tmp_dir
:
str
,
tmp_dir
:
str
,
mock_file_downloads
:
None
,
mock_file_downloads
:
None
,
...
@@ -203,7 +203,7 @@ Package operations: 4 installs, 1 update, 1 removal
...
@@ -203,7 +203,7 @@ Package operations: 4 installs, 1 update, 1 removal
)
)
def
test_execute_prints_warning_for_yanked_package
(
def
test_execute_prints_warning_for_yanked_package
(
config
:
Config
,
config
:
Config
,
pool
:
Pool
,
pool
:
Repository
Pool
,
io
:
BufferedIO
,
io
:
BufferedIO
,
tmp_dir
:
str
,
tmp_dir
:
str
,
mock_file_downloads
:
None
,
mock_file_downloads
:
None
,
...
@@ -234,7 +234,11 @@ def test_execute_prints_warning_for_yanked_package(
...
@@ -234,7 +234,11 @@ def test_execute_prints_warning_for_yanked_package(
def
test_execute_shows_skipped_operations_if_verbose
(
def
test_execute_shows_skipped_operations_if_verbose
(
config
:
Config
,
pool
:
Pool
,
io
:
BufferedIO
,
config_cache_dir
:
Path
,
env
:
MockEnv
config
:
Config
,
pool
:
RepositoryPool
,
io
:
BufferedIO
,
config_cache_dir
:
Path
,
env
:
MockEnv
,
):
):
config
.
merge
({
"cache-dir"
:
config_cache_dir
.
as_posix
()})
config
.
merge
({
"cache-dir"
:
config_cache_dir
.
as_posix
()})
...
@@ -258,7 +262,11 @@ Package operations: 0 installs, 0 updates, 0 removals, 1 skipped
...
@@ -258,7 +262,11 @@ Package operations: 0 installs, 0 updates, 0 removals, 1 skipped
def
test_execute_should_show_errors
(
def
test_execute_should_show_errors
(
config
:
Config
,
pool
:
Pool
,
mocker
:
MockerFixture
,
io
:
BufferedIO
,
env
:
MockEnv
config
:
Config
,
pool
:
RepositoryPool
,
mocker
:
MockerFixture
,
io
:
BufferedIO
,
env
:
MockEnv
,
):
):
executor
=
Executor
(
env
,
pool
,
config
,
io
)
executor
=
Executor
(
env
,
pool
,
config
,
io
)
executor
.
verbose
()
executor
.
verbose
()
...
@@ -283,7 +291,7 @@ Package operations: 1 install, 0 updates, 0 removals
...
@@ -283,7 +291,7 @@ Package operations: 1 install, 0 updates, 0 removals
def
test_execute_works_with_ansi_output
(
def
test_execute_works_with_ansi_output
(
mocker
:
MockerFixture
,
mocker
:
MockerFixture
,
config
:
Config
,
config
:
Config
,
pool
:
Pool
,
pool
:
Repository
Pool
,
io_decorated
:
BufferedIO
,
io_decorated
:
BufferedIO
,
tmp_dir
:
str
,
tmp_dir
:
str
,
mock_file_downloads
:
None
,
mock_file_downloads
:
None
,
...
@@ -325,7 +333,7 @@ def test_execute_works_with_ansi_output(
...
@@ -325,7 +333,7 @@ def test_execute_works_with_ansi_output(
def
test_execute_works_with_no_ansi_output
(
def
test_execute_works_with_no_ansi_output
(
mocker
:
MockerFixture
,
mocker
:
MockerFixture
,
config
:
Config
,
config
:
Config
,
pool
:
Pool
,
pool
:
Repository
Pool
,
io_not_decorated
:
BufferedIO
,
io_not_decorated
:
BufferedIO
,
tmp_dir
:
str
,
tmp_dir
:
str
,
mock_file_downloads
:
None
,
mock_file_downloads
:
None
,
...
@@ -358,7 +366,11 @@ Package operations: 1 install, 0 updates, 0 removals
...
@@ -358,7 +366,11 @@ Package operations: 1 install, 0 updates, 0 removals
def
test_execute_should_show_operation_as_cancelled_on_subprocess_keyboard_interrupt
(
def
test_execute_should_show_operation_as_cancelled_on_subprocess_keyboard_interrupt
(
config
:
Config
,
pool
:
Pool
,
mocker
:
MockerFixture
,
io
:
BufferedIO
,
env
:
MockEnv
config
:
Config
,
pool
:
RepositoryPool
,
mocker
:
MockerFixture
,
io
:
BufferedIO
,
env
:
MockEnv
,
):
):
executor
=
Executor
(
env
,
pool
,
config
,
io
)
executor
=
Executor
(
env
,
pool
,
config
,
io
)
executor
.
verbose
()
executor
.
verbose
()
...
@@ -379,7 +391,11 @@ Package operations: 1 install, 0 updates, 0 removals
...
@@ -379,7 +391,11 @@ Package operations: 1 install, 0 updates, 0 removals
def
test_execute_should_gracefully_handle_io_error
(
def
test_execute_should_gracefully_handle_io_error
(
config
:
Config
,
pool
:
Pool
,
mocker
:
MockerFixture
,
io
:
BufferedIO
,
env
:
MockEnv
config
:
Config
,
pool
:
RepositoryPool
,
mocker
:
MockerFixture
,
io
:
BufferedIO
,
env
:
MockEnv
,
):
):
executor
=
Executor
(
env
,
pool
,
config
,
io
)
executor
=
Executor
(
env
,
pool
,
config
,
io
)
executor
.
verbose
()
executor
.
verbose
()
...
@@ -410,7 +426,7 @@ def test_executor_should_delete_incomplete_downloads(
...
@@ -410,7 +426,7 @@ def test_executor_should_delete_incomplete_downloads(
io
:
BufferedIO
,
io
:
BufferedIO
,
tmp_dir
:
str
,
tmp_dir
:
str
,
mocker
:
MockerFixture
,
mocker
:
MockerFixture
,
pool
:
Pool
,
pool
:
Repository
Pool
,
mock_file_downloads
:
None
,
mock_file_downloads
:
None
,
env
:
MockEnv
,
env
:
MockEnv
,
):
):
...
@@ -488,7 +504,7 @@ def test_executor_should_not_write_pep610_url_references_for_cached_package(
...
@@ -488,7 +504,7 @@ def test_executor_should_not_write_pep610_url_references_for_cached_package(
mocker
:
MockerFixture
,
mocker
:
MockerFixture
,
fixture_dir
:
FixtureDirGetter
,
fixture_dir
:
FixtureDirGetter
,
tmp_venv
:
VirtualEnv
,
tmp_venv
:
VirtualEnv
,
pool
:
Pool
,
pool
:
Repository
Pool
,
config
:
Config
,
config
:
Config
,
io
:
BufferedIO
,
io
:
BufferedIO
,
):
):
...
@@ -504,7 +520,7 @@ def test_executor_should_not_write_pep610_url_references_for_cached_package(
...
@@ -504,7 +520,7 @@ def test_executor_should_not_write_pep610_url_references_for_cached_package(
def
test_executor_should_write_pep610_url_references_for_files
(
def
test_executor_should_write_pep610_url_references_for_files
(
tmp_venv
:
VirtualEnv
,
pool
:
Pool
,
config
:
Config
,
io
:
BufferedIO
tmp_venv
:
VirtualEnv
,
pool
:
Repository
Pool
,
config
:
Config
,
io
:
BufferedIO
):
):
url
=
(
url
=
(
Path
(
__file__
)
Path
(
__file__
)
...
@@ -523,7 +539,7 @@ def test_executor_should_write_pep610_url_references_for_files(
...
@@ -523,7 +539,7 @@ def test_executor_should_write_pep610_url_references_for_files(
def
test_executor_should_write_pep610_url_references_for_directories
(
def
test_executor_should_write_pep610_url_references_for_directories
(
tmp_venv
:
VirtualEnv
,
pool
:
Pool
,
config
:
Config
,
io
:
BufferedIO
tmp_venv
:
VirtualEnv
,
pool
:
Repository
Pool
,
config
:
Config
,
io
:
BufferedIO
):
):
url
=
Path
(
__file__
)
.
parent
.
parent
.
joinpath
(
"fixtures/simple_project"
)
.
resolve
()
url
=
Path
(
__file__
)
.
parent
.
parent
.
joinpath
(
"fixtures/simple_project"
)
.
resolve
()
package
=
Package
(
package
=
Package
(
...
@@ -538,7 +554,7 @@ def test_executor_should_write_pep610_url_references_for_directories(
...
@@ -538,7 +554,7 @@ def test_executor_should_write_pep610_url_references_for_directories(
def
test_executor_should_write_pep610_url_references_for_editable_directories
(
def
test_executor_should_write_pep610_url_references_for_editable_directories
(
tmp_venv
:
VirtualEnv
,
pool
:
Pool
,
config
:
Config
,
io
:
BufferedIO
tmp_venv
:
VirtualEnv
,
pool
:
Repository
Pool
,
config
:
Config
,
io
:
BufferedIO
):
):
url
=
Path
(
__file__
)
.
parent
.
parent
.
joinpath
(
"fixtures/simple_project"
)
.
resolve
()
url
=
Path
(
__file__
)
.
parent
.
parent
.
joinpath
(
"fixtures/simple_project"
)
.
resolve
()
package
=
Package
(
package
=
Package
(
...
@@ -558,7 +574,7 @@ def test_executor_should_write_pep610_url_references_for_editable_directories(
...
@@ -558,7 +574,7 @@ def test_executor_should_write_pep610_url_references_for_editable_directories(
def
test_executor_should_write_pep610_url_references_for_urls
(
def
test_executor_should_write_pep610_url_references_for_urls
(
tmp_venv
:
VirtualEnv
,
tmp_venv
:
VirtualEnv
,
pool
:
Pool
,
pool
:
Repository
Pool
,
config
:
Config
,
config
:
Config
,
io
:
BufferedIO
,
io
:
BufferedIO
,
mock_file_downloads
:
None
,
mock_file_downloads
:
None
,
...
@@ -579,7 +595,7 @@ def test_executor_should_write_pep610_url_references_for_urls(
...
@@ -579,7 +595,7 @@ def test_executor_should_write_pep610_url_references_for_urls(
def
test_executor_should_write_pep610_url_references_for_git
(
def
test_executor_should_write_pep610_url_references_for_git
(
tmp_venv
:
VirtualEnv
,
tmp_venv
:
VirtualEnv
,
pool
:
Pool
,
pool
:
Repository
Pool
,
config
:
Config
,
config
:
Config
,
io
:
BufferedIO
,
io
:
BufferedIO
,
mock_file_downloads
:
None
,
mock_file_downloads
:
None
,
...
@@ -611,7 +627,7 @@ def test_executor_should_write_pep610_url_references_for_git(
...
@@ -611,7 +627,7 @@ def test_executor_should_write_pep610_url_references_for_git(
def
test_executor_should_write_pep610_url_references_for_git_with_subdirectories
(
def
test_executor_should_write_pep610_url_references_for_git_with_subdirectories
(
tmp_venv
:
VirtualEnv
,
tmp_venv
:
VirtualEnv
,
pool
:
Pool
,
pool
:
Repository
Pool
,
config
:
Config
,
config
:
Config
,
io
:
BufferedIO
,
io
:
BufferedIO
,
mock_file_downloads
:
None
,
mock_file_downloads
:
None
,
...
@@ -645,7 +661,7 @@ def test_executor_should_write_pep610_url_references_for_git_with_subdirectories
...
@@ -645,7 +661,7 @@ def test_executor_should_write_pep610_url_references_for_git_with_subdirectories
def
test_executor_should_use_cached_link_and_hash
(
def
test_executor_should_use_cached_link_and_hash
(
tmp_venv
:
VirtualEnv
,
tmp_venv
:
VirtualEnv
,
pool
:
Pool
,
pool
:
Repository
Pool
,
config
:
Config
,
config
:
Config
,
io
:
BufferedIO
,
io
:
BufferedIO
,
mocker
:
MockerFixture
,
mocker
:
MockerFixture
,
...
@@ -688,7 +704,7 @@ def test_executor_should_use_cached_link_and_hash(
...
@@ -688,7 +704,7 @@ def test_executor_should_use_cached_link_and_hash(
)
)
def
test_executor_should_be_initialized_with_correct_workers
(
def
test_executor_should_be_initialized_with_correct_workers
(
tmp_venv
:
VirtualEnv
,
tmp_venv
:
VirtualEnv
,
pool
:
Pool
,
pool
:
Repository
Pool
,
config
:
Config
,
config
:
Config
,
io
:
BufferedIO
,
io
:
BufferedIO
,
mocker
:
MockerFixture
,
mocker
:
MockerFixture
,
...
@@ -709,7 +725,7 @@ def test_executor_should_be_initialized_with_correct_workers(
...
@@ -709,7 +725,7 @@ def test_executor_should_be_initialized_with_correct_workers(
def
test_executer_fallback_on_poetry_create_error
(
def
test_executer_fallback_on_poetry_create_error
(
mocker
:
MockerFixture
,
mocker
:
MockerFixture
,
config
:
Config
,
config
:
Config
,
pool
:
Pool
,
pool
:
Repository
Pool
,
io
:
BufferedIO
,
io
:
BufferedIO
,
tmp_dir
:
str
,
tmp_dir
:
str
,
mock_file_downloads
:
None
,
mock_file_downloads
:
None
,
...
...
tests/installation/test_installer.py
View file @
be8e09ce
...
@@ -25,8 +25,8 @@ from poetry.installation import Installer as BaseInstaller
...
@@ -25,8 +25,8 @@ from poetry.installation import Installer as BaseInstaller
from
poetry.installation.executor
import
Executor
as
BaseExecutor
from
poetry.installation.executor
import
Executor
as
BaseExecutor
from
poetry.installation.noop_installer
import
NoopInstaller
from
poetry.installation.noop_installer
import
NoopInstaller
from
poetry.packages
import
Locker
as
BaseLocker
from
poetry.packages
import
Locker
as
BaseLocker
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
from
poetry.repositories
import
Repository
from
poetry.repositories
import
RepositoryPool
from
poetry.repositories.installed_repository
import
InstalledRepository
from
poetry.repositories.installed_repository
import
InstalledRepository
from
poetry.utils.env
import
MockEnv
from
poetry.utils.env
import
MockEnv
from
poetry.utils.env
import
NullEnv
from
poetry.utils.env
import
NullEnv
...
@@ -156,8 +156,8 @@ def repo() -> Repository:
...
@@ -156,8 +156,8 @@ def repo() -> Repository:
@pytest.fixture
()
@pytest.fixture
()
def
pool
(
repo
:
Repository
)
->
Pool
:
def
pool
(
repo
:
Repository
)
->
Repository
Pool
:
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
repo
)
pool
.
add_repository
(
repo
)
return
pool
return
pool
...
@@ -181,7 +181,7 @@ def env() -> NullEnv:
...
@@ -181,7 +181,7 @@ def env() -> NullEnv:
@pytest.fixture
()
@pytest.fixture
()
def
installer
(
def
installer
(
package
:
ProjectPackage
,
package
:
ProjectPackage
,
pool
:
Pool
,
pool
:
Repository
Pool
,
locker
:
Locker
,
locker
:
Locker
,
env
:
NullEnv
,
env
:
NullEnv
,
installed
:
CustomInstalledRepository
,
installed
:
CustomInstalledRepository
,
...
@@ -1152,7 +1152,7 @@ def test_installer_with_pypi_repository(
...
@@ -1152,7 +1152,7 @@ def test_installer_with_pypi_repository(
installed
:
CustomInstalledRepository
,
installed
:
CustomInstalledRepository
,
config
:
Config
,
config
:
Config
,
):
):
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
MockRepository
())
pool
.
add_repository
(
MockRepository
())
installer
=
Installer
(
installer
=
Installer
(
...
@@ -1911,7 +1911,7 @@ def test_installer_required_extras_should_not_be_removed_when_updating_single_de
...
@@ -1911,7 +1911,7 @@ def test_installer_required_extras_should_not_be_removed_when_updating_single_de
package
:
ProjectPackage
,
package
:
ProjectPackage
,
installed
:
CustomInstalledRepository
,
installed
:
CustomInstalledRepository
,
env
:
NullEnv
,
env
:
NullEnv
,
pool
:
Pool
,
pool
:
Repository
Pool
,
config
:
Config
,
config
:
Config
,
):
):
package
.
add_dependency
(
Factory
.
create_dependency
(
"A"
,
{
"version"
:
"^1.0"
}))
package
.
add_dependency
(
Factory
.
create_dependency
(
"A"
,
{
"version"
:
"^1.0"
}))
...
@@ -1982,7 +1982,7 @@ def test_installer_required_extras_should_not_be_removed_when_updating_single_de
...
@@ -1982,7 +1982,7 @@ def test_installer_required_extras_should_not_be_removed_when_updating_single_de
):
):
mocker
.
patch
(
"sys.platform"
,
"darwin"
)
mocker
.
patch
(
"sys.platform"
,
"darwin"
)
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
MockRepository
())
pool
.
add_repository
(
MockRepository
())
installer
=
Installer
(
installer
=
Installer
(
...
@@ -2043,7 +2043,7 @@ def test_installer_required_extras_should_be_installed(
...
@@ -2043,7 +2043,7 @@ def test_installer_required_extras_should_be_installed(
env
:
NullEnv
,
env
:
NullEnv
,
config
:
Config
,
config
:
Config
,
):
):
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
MockRepository
())
pool
.
add_repository
(
MockRepository
())
installer
=
Installer
(
installer
=
Installer
(
...
@@ -2185,7 +2185,7 @@ def test_installer_can_install_dependencies_from_forced_source(
...
@@ -2185,7 +2185,7 @@ def test_installer_can_install_dependencies_from_forced_source(
Factory
.
create_dependency
(
"tomlkit"
,
{
"version"
:
"^0.5"
,
"source"
:
"legacy"
})
Factory
.
create_dependency
(
"tomlkit"
,
{
"version"
:
"^0.5"
,
"source"
:
"legacy"
})
)
)
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
MockLegacyRepository
())
pool
.
add_repository
(
MockLegacyRepository
())
pool
.
add_repository
(
MockRepository
())
pool
.
add_repository
(
MockRepository
())
...
@@ -2228,7 +2228,7 @@ def test_run_installs_with_url_file(
...
@@ -2228,7 +2228,7 @@ def test_run_installs_with_url_file(
@pytest.mark.parametrize
(
"env_platform"
,
[
"linux"
,
"win32"
])
@pytest.mark.parametrize
(
"env_platform"
,
[
"linux"
,
"win32"
])
def
test_run_installs_with_same_version_url_files
(
def
test_run_installs_with_same_version_url_files
(
pool
:
Pool
,
pool
:
Repository
Pool
,
locker
:
Locker
,
locker
:
Locker
,
installed
:
CustomInstalledRepository
,
installed
:
CustomInstalledRepository
,
config
:
Config
,
config
:
Config
,
...
@@ -2313,7 +2313,7 @@ def test_installer_can_handle_old_lock_files(
...
@@ -2313,7 +2313,7 @@ def test_installer_can_handle_old_lock_files(
installed
:
CustomInstalledRepository
,
installed
:
CustomInstalledRepository
,
config
:
Config
,
config
:
Config
,
):
):
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
MockRepository
())
pool
.
add_repository
(
MockRepository
())
package
.
add_dependency
(
Factory
.
create_dependency
(
"pytest"
,
"^3.5"
,
groups
=
[
"dev"
]))
package
.
add_dependency
(
Factory
.
create_dependency
(
"pytest"
,
"^3.5"
,
groups
=
[
"dev"
]))
...
...
tests/installation/test_installer_old.py
View file @
be8e09ce
...
@@ -15,8 +15,8 @@ from poetry.factory import Factory
...
@@ -15,8 +15,8 @@ from poetry.factory import Factory
from
poetry.installation
import
Installer
as
BaseInstaller
from
poetry.installation
import
Installer
as
BaseInstaller
from
poetry.installation.noop_installer
import
NoopInstaller
from
poetry.installation.noop_installer
import
NoopInstaller
from
poetry.packages
import
Locker
as
BaseLocker
from
poetry.packages
import
Locker
as
BaseLocker
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
from
poetry.repositories
import
Repository
from
poetry.repositories
import
RepositoryPool
from
poetry.repositories.installed_repository
import
InstalledRepository
from
poetry.repositories.installed_repository
import
InstalledRepository
from
poetry.utils.env
import
MockEnv
from
poetry.utils.env
import
MockEnv
from
poetry.utils.env
import
NullEnv
from
poetry.utils.env
import
NullEnv
...
@@ -108,8 +108,8 @@ def repo() -> Repository:
...
@@ -108,8 +108,8 @@ def repo() -> Repository:
@pytest.fixture
()
@pytest.fixture
()
def
pool
(
repo
:
Repository
)
->
Pool
:
def
pool
(
repo
:
Repository
)
->
Repository
Pool
:
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
repo
)
pool
.
add_repository
(
repo
)
return
pool
return
pool
...
@@ -133,7 +133,7 @@ def env() -> NullEnv:
...
@@ -133,7 +133,7 @@ def env() -> NullEnv:
@pytest.fixture
()
@pytest.fixture
()
def
installer
(
def
installer
(
package
:
ProjectPackage
,
package
:
ProjectPackage
,
pool
:
Pool
,
pool
:
Repository
Pool
,
locker
:
Locker
,
locker
:
Locker
,
env
:
NullEnv
,
env
:
NullEnv
,
installed
:
CustomInstalledRepository
,
installed
:
CustomInstalledRepository
,
...
@@ -820,7 +820,7 @@ def test_installer_with_pypi_repository(
...
@@ -820,7 +820,7 @@ def test_installer_with_pypi_repository(
installed
:
CustomInstalledRepository
,
installed
:
CustomInstalledRepository
,
config
:
Config
,
config
:
Config
,
):
):
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
MockRepository
())
pool
.
add_repository
(
MockRepository
())
installer
=
Installer
(
installer
=
Installer
(
...
@@ -1567,7 +1567,7 @@ def test_installer_required_extras_should_not_be_removed_when_updating_single_de
...
@@ -1567,7 +1567,7 @@ def test_installer_required_extras_should_not_be_removed_when_updating_single_de
package
:
ProjectPackage
,
package
:
ProjectPackage
,
installed
:
CustomInstalledRepository
,
installed
:
CustomInstalledRepository
,
env
:
NullEnv
,
env
:
NullEnv
,
pool
:
Pool
,
pool
:
Repository
Pool
,
config
:
Config
,
config
:
Config
,
):
):
package
.
add_dependency
(
Factory
.
create_dependency
(
"A"
,
{
"version"
:
"^1.0"
}))
package
.
add_dependency
(
Factory
.
create_dependency
(
"A"
,
{
"version"
:
"^1.0"
}))
...
@@ -1630,7 +1630,7 @@ def test_installer_required_extras_should_not_be_removed_when_updating_single_de
...
@@ -1630,7 +1630,7 @@ def test_installer_required_extras_should_not_be_removed_when_updating_single_de
):
):
mocker
.
patch
(
"sys.platform"
,
"darwin"
)
mocker
.
patch
(
"sys.platform"
,
"darwin"
)
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
MockRepository
())
pool
.
add_repository
(
MockRepository
())
installer
=
Installer
(
installer
=
Installer
(
...
@@ -1675,7 +1675,7 @@ def test_installer_required_extras_should_be_installed(
...
@@ -1675,7 +1675,7 @@ def test_installer_required_extras_should_be_installed(
env
:
NullEnv
,
env
:
NullEnv
,
config
:
Config
,
config
:
Config
,
):
):
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
MockRepository
())
pool
.
add_repository
(
MockRepository
())
installer
=
Installer
(
installer
=
Installer
(
...
@@ -1801,7 +1801,7 @@ def test_installer_can_install_dependencies_from_forced_source(
...
@@ -1801,7 +1801,7 @@ def test_installer_can_install_dependencies_from_forced_source(
Factory
.
create_dependency
(
"tomlkit"
,
{
"version"
:
"^0.5"
,
"source"
:
"legacy"
})
Factory
.
create_dependency
(
"tomlkit"
,
{
"version"
:
"^0.5"
,
"source"
:
"legacy"
})
)
)
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
MockLegacyRepository
())
pool
.
add_repository
(
MockLegacyRepository
())
pool
.
add_repository
(
MockRepository
())
pool
.
add_repository
(
MockRepository
())
...
@@ -1871,7 +1871,7 @@ def test_installer_can_handle_old_lock_files(
...
@@ -1871,7 +1871,7 @@ def test_installer_can_handle_old_lock_files(
installed
:
CustomInstalledRepository
,
installed
:
CustomInstalledRepository
,
config
:
Config
,
config
:
Config
,
):
):
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
MockRepository
())
pool
.
add_repository
(
MockRepository
())
package
.
add_dependency
(
Factory
.
create_dependency
(
"pytest"
,
"^3.5"
,
groups
=
[
"dev"
]))
package
.
add_dependency
(
Factory
.
create_dependency
(
"pytest"
,
"^3.5"
,
groups
=
[
"dev"
]))
...
...
tests/installation/test_pip_installer.py
View file @
be8e09ce
...
@@ -13,7 +13,7 @@ from poetry.core.packages.package import Package
...
@@ -13,7 +13,7 @@ from poetry.core.packages.package import Package
from
poetry.installation.pip_installer
import
PipInstaller
from
poetry.installation.pip_installer
import
PipInstaller
from
poetry.repositories.legacy_repository
import
LegacyRepository
from
poetry.repositories.legacy_repository
import
LegacyRepository
from
poetry.repositories.
pool
import
Pool
from
poetry.repositories.
repository_pool
import
Repository
Pool
from
poetry.utils.authenticator
import
RepositoryCertificateConfig
from
poetry.utils.authenticator
import
RepositoryCertificateConfig
from
poetry.utils.env
import
NullEnv
from
poetry.utils.env
import
NullEnv
...
@@ -53,12 +53,12 @@ def package_git_with_subdirectory() -> Package:
...
@@ -53,12 +53,12 @@ def package_git_with_subdirectory() -> Package:
@pytest.fixture
@pytest.fixture
def
pool
()
->
Pool
:
def
pool
()
->
Repository
Pool
:
return
Pool
()
return
Repository
Pool
()
@pytest.fixture
@pytest.fixture
def
installer
(
pool
:
Pool
)
->
PipInstaller
:
def
installer
(
pool
:
Repository
Pool
)
->
PipInstaller
:
return
PipInstaller
(
NullEnv
(),
NullIO
(),
pool
)
return
PipInstaller
(
NullEnv
(),
NullIO
(),
pool
)
...
@@ -84,7 +84,7 @@ def test_requirement(installer: PipInstaller):
...
@@ -84,7 +84,7 @@ def test_requirement(installer: PipInstaller):
def
test_requirement_source_type_url
():
def
test_requirement_source_type_url
():
installer
=
PipInstaller
(
NullEnv
(),
NullIO
(),
Pool
())
installer
=
PipInstaller
(
NullEnv
(),
NullIO
(),
Repository
Pool
())
foo
=
Package
(
foo
=
Package
(
"foo"
,
"foo"
,
...
@@ -100,7 +100,7 @@ def test_requirement_source_type_url():
...
@@ -100,7 +100,7 @@ def test_requirement_source_type_url():
def
test_requirement_git_subdirectory
(
def
test_requirement_git_subdirectory
(
pool
:
Pool
,
package_git_with_subdirectory
:
Package
pool
:
Repository
Pool
,
package_git_with_subdirectory
:
Package
)
->
None
:
)
->
None
:
null_env
=
NullEnv
()
null_env
=
NullEnv
()
installer
=
PipInstaller
(
null_env
,
NullIO
(),
pool
)
installer
=
PipInstaller
(
null_env
,
NullIO
(),
pool
)
...
@@ -125,7 +125,9 @@ def test_requirement_git_develop_false(installer: PipInstaller, package_git: Pac
...
@@ -125,7 +125,9 @@ def test_requirement_git_develop_false(installer: PipInstaller, package_git: Pac
assert
result
==
expected
assert
result
==
expected
def
test_install_with_non_pypi_default_repository
(
pool
:
Pool
,
installer
:
PipInstaller
):
def
test_install_with_non_pypi_default_repository
(
pool
:
RepositoryPool
,
installer
:
PipInstaller
):
default
=
LegacyRepository
(
"default"
,
"https://default.com"
)
default
=
LegacyRepository
(
"default"
,
"https://default.com"
)
another
=
LegacyRepository
(
"another"
,
"https://another.com"
)
another
=
LegacyRepository
(
"another"
,
"https://another.com"
)
...
@@ -166,7 +168,7 @@ def test_install_with_certs(mocker: MockerFixture, key: str, option: str):
...
@@ -166,7 +168,7 @@ def test_install_with_certs(mocker: MockerFixture, key: str, option: str):
)
)
default
=
LegacyRepository
(
"default"
,
"https://foo.bar"
)
default
=
LegacyRepository
(
"default"
,
"https://foo.bar"
)
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
default
,
default
=
True
)
pool
.
add_repository
(
default
,
default
=
True
)
null_env
=
NullEnv
()
null_env
=
NullEnv
()
...
@@ -200,7 +202,7 @@ def test_requirement_git_develop_true(installer: PipInstaller, package_git: Pack
...
@@ -200,7 +202,7 @@ def test_requirement_git_develop_true(installer: PipInstaller, package_git: Pack
def
test_uninstall_git_package_nspkg_pth_cleanup
(
def
test_uninstall_git_package_nspkg_pth_cleanup
(
mocker
:
MockerFixture
,
tmp_venv
:
VirtualEnv
,
pool
:
Pool
mocker
:
MockerFixture
,
tmp_venv
:
VirtualEnv
,
pool
:
Repository
Pool
):
):
# this test scenario requires a real installation using the pip installer
# this test scenario requires a real installation using the pip installer
installer
=
PipInstaller
(
tmp_venv
,
NullIO
(),
pool
)
installer
=
PipInstaller
(
tmp_venv
,
NullIO
(),
pool
)
...
@@ -244,7 +246,7 @@ def test_install_with_trusted_host(config: Config):
...
@@ -244,7 +246,7 @@ def test_install_with_trusted_host(config: Config):
config
.
merge
({
"certificates"
:
{
"default"
:
{
"cert"
:
False
}}})
config
.
merge
({
"certificates"
:
{
"default"
:
{
"cert"
:
False
}}})
default
=
LegacyRepository
(
"default"
,
"https://foo.bar"
)
default
=
LegacyRepository
(
"default"
,
"https://foo.bar"
)
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
default
,
default
=
True
)
pool
.
add_repository
(
default
,
default
=
True
)
null_env
=
NullEnv
()
null_env
=
NullEnv
()
...
@@ -269,7 +271,7 @@ def test_install_with_trusted_host(config: Config):
...
@@ -269,7 +271,7 @@ def test_install_with_trusted_host(config: Config):
def
test_install_directory_fallback_on_poetry_create_error
(
def
test_install_directory_fallback_on_poetry_create_error
(
mocker
:
MockerFixture
,
tmp_venv
:
VirtualEnv
,
pool
:
Pool
mocker
:
MockerFixture
,
tmp_venv
:
VirtualEnv
,
pool
:
Repository
Pool
):
):
mock_create_poetry
=
mocker
.
patch
(
mock_create_poetry
=
mocker
.
patch
(
"poetry.factory.Factory.create_poetry"
,
side_effect
=
RuntimeError
"poetry.factory.Factory.create_poetry"
,
side_effect
=
RuntimeError
...
...
tests/mixology/version_solver/conftest.py
View file @
be8e09ce
...
@@ -8,8 +8,8 @@ from cleo.io.null_io import NullIO
...
@@ -8,8 +8,8 @@ from cleo.io.null_io import NullIO
from
poetry.core.packages.project_package
import
ProjectPackage
from
poetry.core.packages.project_package
import
ProjectPackage
from
poetry.puzzle.provider
import
Provider
as
BaseProvider
from
poetry.puzzle.provider
import
Provider
as
BaseProvider
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
from
poetry.repositories
import
Repository
from
poetry.repositories
import
RepositoryPool
if
TYPE_CHECKING
:
if
TYPE_CHECKING
:
...
@@ -28,8 +28,8 @@ def repo() -> Repository:
...
@@ -28,8 +28,8 @@ def repo() -> Repository:
@pytest.fixture
@pytest.fixture
def
pool
(
repo
:
TestRepository
)
->
Pool
:
def
pool
(
repo
:
TestRepository
)
->
Repository
Pool
:
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
repo
)
pool
.
add_repository
(
repo
)
return
pool
return
pool
...
@@ -41,5 +41,5 @@ def root() -> ProjectPackage:
...
@@ -41,5 +41,5 @@ def root() -> ProjectPackage:
@pytest.fixture
@pytest.fixture
def
provider
(
pool
:
Pool
,
root
:
ProjectPackage
)
->
Provider
:
def
provider
(
pool
:
Repository
Pool
,
root
:
ProjectPackage
)
->
Provider
:
return
Provider
(
root
,
pool
,
NullIO
())
return
Provider
(
root
,
pool
,
NullIO
())
tests/mixology/version_solver/test_with_lock.py
View file @
be8e09ce
...
@@ -16,12 +16,12 @@ from tests.mixology.version_solver.conftest import Provider
...
@@ -16,12 +16,12 @@ from tests.mixology.version_solver.conftest import Provider
if
TYPE_CHECKING
:
if
TYPE_CHECKING
:
from
poetry.core.packages.project_package
import
ProjectPackage
from
poetry.core.packages.project_package
import
ProjectPackage
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
from
poetry.repositories
import
Repository
from
poetry.repositories
import
RepositoryPool
def
test_with_compatible_locked_dependencies
(
def
test_with_compatible_locked_dependencies
(
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Pool
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Repository
Pool
):
):
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
"*"
))
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
"*"
))
...
@@ -43,7 +43,7 @@ def test_with_compatible_locked_dependencies(
...
@@ -43,7 +43,7 @@ def test_with_compatible_locked_dependencies(
def
test_with_incompatible_locked_dependencies
(
def
test_with_incompatible_locked_dependencies
(
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Pool
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Repository
Pool
):
):
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
">1.0.1"
))
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
">1.0.1"
))
...
@@ -65,7 +65,7 @@ def test_with_incompatible_locked_dependencies(
...
@@ -65,7 +65,7 @@ def test_with_incompatible_locked_dependencies(
def
test_with_unrelated_locked_dependencies
(
def
test_with_unrelated_locked_dependencies
(
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Pool
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Repository
Pool
):
):
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
"*"
))
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
"*"
))
...
@@ -88,7 +88,7 @@ def test_with_unrelated_locked_dependencies(
...
@@ -88,7 +88,7 @@ def test_with_unrelated_locked_dependencies(
def
test_unlocks_dependencies_if_necessary_to_ensure_that_a_new_dependency_is_satisfied
(
def
test_unlocks_dependencies_if_necessary_to_ensure_that_a_new_dependency_is_satisfied
(
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Pool
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Repository
Pool
):
):
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
"*"
))
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
"*"
))
root
.
add_dependency
(
Factory
.
create_dependency
(
"newdep"
,
"2.0.0"
))
root
.
add_dependency
(
Factory
.
create_dependency
(
"newdep"
,
"2.0.0"
))
...
@@ -125,7 +125,7 @@ def test_unlocks_dependencies_if_necessary_to_ensure_that_a_new_dependency_is_sa
...
@@ -125,7 +125,7 @@ def test_unlocks_dependencies_if_necessary_to_ensure_that_a_new_dependency_is_sa
def
test_with_compatible_locked_dependencies_use_latest
(
def
test_with_compatible_locked_dependencies_use_latest
(
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Pool
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Repository
Pool
):
):
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
"*"
))
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
"*"
))
root
.
add_dependency
(
Factory
.
create_dependency
(
"baz"
,
"*"
))
root
.
add_dependency
(
Factory
.
create_dependency
(
"baz"
,
"*"
))
...
@@ -155,7 +155,7 @@ def test_with_compatible_locked_dependencies_use_latest(
...
@@ -155,7 +155,7 @@ def test_with_compatible_locked_dependencies_use_latest(
def
test_with_compatible_locked_dependencies_with_extras
(
def
test_with_compatible_locked_dependencies_with_extras
(
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Pool
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Repository
Pool
):
):
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
"^1.0"
))
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
"^1.0"
))
...
@@ -189,7 +189,7 @@ def test_with_compatible_locked_dependencies_with_extras(
...
@@ -189,7 +189,7 @@ def test_with_compatible_locked_dependencies_with_extras(
def
test_with_yanked_package_in_lock
(
def
test_with_yanked_package_in_lock
(
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Pool
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Repository
Pool
):
):
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
"*"
))
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
"*"
))
...
@@ -218,7 +218,7 @@ def test_with_yanked_package_in_lock(
...
@@ -218,7 +218,7 @@ def test_with_yanked_package_in_lock(
def
test_no_update_is_respected_for_legacy_repository
(
def
test_no_update_is_respected_for_legacy_repository
(
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Pool
root
:
ProjectPackage
,
repo
:
Repository
,
pool
:
Repository
Pool
):
):
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
"^1.0"
))
root
.
add_dependency
(
Factory
.
create_dependency
(
"foo"
,
"^1.0"
))
...
...
tests/puzzle/test_provider.py
View file @
be8e09ce
...
@@ -19,8 +19,8 @@ from poetry.factory import Factory
...
@@ -19,8 +19,8 @@ from poetry.factory import Factory
from
poetry.inspection.info
import
PackageInfo
from
poetry.inspection.info
import
PackageInfo
from
poetry.packages
import
DependencyPackage
from
poetry.packages
import
DependencyPackage
from
poetry.puzzle.provider
import
Provider
from
poetry.puzzle.provider
import
Provider
from
poetry.repositories.pool
import
Pool
from
poetry.repositories.repository
import
Repository
from
poetry.repositories.repository
import
Repository
from
poetry.repositories.repository_pool
import
RepositoryPool
from
poetry.utils.env
import
EnvCommandError
from
poetry.utils.env
import
EnvCommandError
from
poetry.utils.env
import
MockEnv
as
BaseMockEnv
from
poetry.utils.env
import
MockEnv
as
BaseMockEnv
from
tests.helpers
import
get_dependency
from
tests.helpers
import
get_dependency
...
@@ -49,15 +49,15 @@ def repository() -> Repository:
...
@@ -49,15 +49,15 @@ def repository() -> Repository:
@pytest.fixture
@pytest.fixture
def
pool
(
repository
:
Repository
)
->
Pool
:
def
pool
(
repository
:
Repository
)
->
Repository
Pool
:
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
repository
)
pool
.
add_repository
(
repository
)
return
pool
return
pool
@pytest.fixture
@pytest.fixture
def
provider
(
root
:
ProjectPackage
,
pool
:
Pool
)
->
Provider
:
def
provider
(
root
:
ProjectPackage
,
pool
:
Repository
Pool
)
->
Provider
:
return
Provider
(
root
,
pool
,
NullIO
())
return
Provider
(
root
,
pool
,
NullIO
())
...
...
tests/puzzle/test_solver.py
View file @
be8e09ce
This diff is collapsed.
Click to expand it.
tests/repositories/test_pool.py
→
tests/repositories/test_
repository_
pool.py
View file @
be8e09ce
...
@@ -4,8 +4,8 @@ import pytest
...
@@ -4,8 +4,8 @@ import pytest
from
poetry.core.constraints.version
import
Version
from
poetry.core.constraints.version
import
Version
from
poetry.repositories
import
Pool
from
poetry.repositories
import
Repository
from
poetry.repositories
import
Repository
from
poetry.repositories
import
RepositoryPool
from
poetry.repositories.exceptions
import
PackageNotFound
from
poetry.repositories.exceptions
import
PackageNotFound
from
poetry.repositories.legacy_repository
import
LegacyRepository
from
poetry.repositories.legacy_repository
import
LegacyRepository
from
tests.helpers
import
get_dependency
from
tests.helpers
import
get_dependency
...
@@ -13,7 +13,7 @@ from tests.helpers import get_package
...
@@ -13,7 +13,7 @@ from tests.helpers import get_package
def
test_pool
()
->
None
:
def
test_pool
()
->
None
:
pool
=
Pool
()
pool
=
Repository
Pool
()
assert
len
(
pool
.
repositories
)
==
0
assert
len
(
pool
.
repositories
)
==
0
assert
not
pool
.
has_default
()
assert
not
pool
.
has_default
()
...
@@ -22,7 +22,7 @@ def test_pool() -> None:
...
@@ -22,7 +22,7 @@ def test_pool() -> None:
def
test_pool_with_initial_repositories
()
->
None
:
def
test_pool_with_initial_repositories
()
->
None
:
repo
=
Repository
(
"repo"
)
repo
=
Repository
(
"repo"
)
pool
=
Pool
([
repo
])
pool
=
Repository
Pool
([
repo
])
assert
len
(
pool
.
repositories
)
==
1
assert
len
(
pool
.
repositories
)
==
1
assert
not
pool
.
has_default
()
assert
not
pool
.
has_default
()
...
@@ -30,7 +30,7 @@ def test_pool_with_initial_repositories() -> None:
...
@@ -30,7 +30,7 @@ def test_pool_with_initial_repositories() -> None:
def
test_repository_no_repository
()
->
None
:
def
test_repository_no_repository
()
->
None
:
pool
=
Pool
()
pool
=
Repository
Pool
()
with
pytest
.
raises
(
IndexError
):
with
pytest
.
raises
(
IndexError
):
pool
.
repository
(
"foo"
)
pool
.
repository
(
"foo"
)
...
@@ -41,15 +41,15 @@ def test_adding_repositories_with_same_name_twice_raises_value_error() -> None:
...
@@ -41,15 +41,15 @@ def test_adding_repositories_with_same_name_twice_raises_value_error() -> None:
repo2
=
Repository
(
"repo"
)
repo2
=
Repository
(
"repo"
)
with
pytest
.
raises
(
ValueError
):
with
pytest
.
raises
(
ValueError
):
Pool
([
repo1
,
repo2
])
Repository
Pool
([
repo1
,
repo2
])
with
pytest
.
raises
(
ValueError
):
with
pytest
.
raises
(
ValueError
):
Pool
([
repo1
])
.
add_repository
(
repo2
)
Repository
Pool
([
repo1
])
.
add_repository
(
repo2
)
def
test_repository_from_normal_pool
()
->
None
:
def
test_repository_from_normal_pool
()
->
None
:
repo
=
LegacyRepository
(
"foo"
,
"https://foo.bar"
)
repo
=
LegacyRepository
(
"foo"
,
"https://foo.bar"
)
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
repo
)
pool
.
add_repository
(
repo
)
assert
pool
.
repository
(
"foo"
)
is
repo
assert
pool
.
repository
(
"foo"
)
is
repo
...
@@ -57,7 +57,7 @@ def test_repository_from_normal_pool() -> None:
...
@@ -57,7 +57,7 @@ def test_repository_from_normal_pool() -> None:
def
test_repository_from_secondary_pool
()
->
None
:
def
test_repository_from_secondary_pool
()
->
None
:
repo
=
LegacyRepository
(
"foo"
,
"https://foo.bar"
)
repo
=
LegacyRepository
(
"foo"
,
"https://foo.bar"
)
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
repo
,
secondary
=
True
)
pool
.
add_repository
(
repo
,
secondary
=
True
)
assert
pool
.
repository
(
"foo"
)
is
repo
assert
pool
.
repository
(
"foo"
)
is
repo
...
@@ -69,7 +69,7 @@ def test_repository_with_normal_default_and_secondary_repositories() -> None:
...
@@ -69,7 +69,7 @@ def test_repository_with_normal_default_and_secondary_repositories() -> None:
repo1
=
LegacyRepository
(
"foo"
,
"https://foo.bar"
)
repo1
=
LegacyRepository
(
"foo"
,
"https://foo.bar"
)
repo2
=
LegacyRepository
(
"bar"
,
"https://bar.baz"
)
repo2
=
LegacyRepository
(
"bar"
,
"https://bar.baz"
)
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
repo1
)
pool
.
add_repository
(
repo1
)
pool
.
add_repository
(
secondary
,
secondary
=
True
)
pool
.
add_repository
(
secondary
,
secondary
=
True
)
pool
.
add_repository
(
repo2
)
pool
.
add_repository
(
repo2
)
...
@@ -84,7 +84,7 @@ def test_repository_with_normal_default_and_secondary_repositories() -> None:
...
@@ -84,7 +84,7 @@ def test_repository_with_normal_default_and_secondary_repositories() -> None:
def
test_remove_non_existing_repository_raises_indexerror
()
->
None
:
def
test_remove_non_existing_repository_raises_indexerror
()
->
None
:
pool
=
Pool
()
pool
=
Repository
Pool
()
with
pytest
.
raises
(
IndexError
):
with
pytest
.
raises
(
IndexError
):
pool
.
remove_repository
(
"foo"
)
pool
.
remove_repository
(
"foo"
)
...
@@ -95,7 +95,7 @@ def test_remove_existing_repository_successful() -> None:
...
@@ -95,7 +95,7 @@ def test_remove_existing_repository_successful() -> None:
repo2
=
LegacyRepository
(
"bar"
,
"https://bar.baz"
)
repo2
=
LegacyRepository
(
"bar"
,
"https://bar.baz"
)
repo3
=
LegacyRepository
(
"baz"
,
"https://baz.quux"
)
repo3
=
LegacyRepository
(
"baz"
,
"https://baz.quux"
)
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
repo1
)
pool
.
add_repository
(
repo1
)
pool
.
add_repository
(
repo2
)
pool
.
add_repository
(
repo2
)
pool
.
add_repository
(
repo3
)
pool
.
add_repository
(
repo3
)
...
@@ -112,7 +112,7 @@ def test_remove_default_repository() -> None:
...
@@ -112,7 +112,7 @@ def test_remove_default_repository() -> None:
repo2
=
LegacyRepository
(
"bar"
,
"https://bar.baz"
)
repo2
=
LegacyRepository
(
"bar"
,
"https://bar.baz"
)
new_default
=
LegacyRepository
(
"new_default"
,
"https://new.default.com"
)
new_default
=
LegacyRepository
(
"new_default"
,
"https://new.default.com"
)
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
repo1
)
pool
.
add_repository
(
repo1
)
pool
.
add_repository
(
repo2
)
pool
.
add_repository
(
repo2
)
pool
.
add_repository
(
default
,
default
=
True
)
pool
.
add_repository
(
default
,
default
=
True
)
...
@@ -140,7 +140,7 @@ def test_repository_ordering() -> None:
...
@@ -140,7 +140,7 @@ def test_repository_ordering() -> None:
secondary2
=
LegacyRepository
(
"secondary2"
,
"https://secondary2.com"
)
secondary2
=
LegacyRepository
(
"secondary2"
,
"https://secondary2.com"
)
secondary3
=
LegacyRepository
(
"secondary3"
,
"https://secondary3.com"
)
secondary3
=
LegacyRepository
(
"secondary3"
,
"https://secondary3.com"
)
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
secondary1
,
secondary
=
True
)
pool
.
add_repository
(
secondary1
,
secondary
=
True
)
pool
.
add_repository
(
primary1
)
pool
.
add_repository
(
primary1
)
pool
.
add_repository
(
default1
,
default
=
True
)
pool
.
add_repository
(
default1
,
default
=
True
)
...
@@ -163,7 +163,7 @@ def test_pool_get_package_in_any_repository() -> None:
...
@@ -163,7 +163,7 @@ def test_pool_get_package_in_any_repository() -> None:
repo1
=
Repository
(
"repo1"
,
[
package1
])
repo1
=
Repository
(
"repo1"
,
[
package1
])
package2
=
get_package
(
"bar"
,
"1.0.0"
)
package2
=
get_package
(
"bar"
,
"1.0.0"
)
repo2
=
Repository
(
"repo2"
,
[
package1
,
package2
])
repo2
=
Repository
(
"repo2"
,
[
package1
,
package2
])
pool
=
Pool
([
repo1
,
repo2
])
pool
=
Repository
Pool
([
repo1
,
repo2
])
returned_package1
=
pool
.
package
(
"foo"
,
Version
.
parse
(
"1.0.0"
))
returned_package1
=
pool
.
package
(
"foo"
,
Version
.
parse
(
"1.0.0"
))
returned_package2
=
pool
.
package
(
"bar"
,
Version
.
parse
(
"1.0.0"
))
returned_package2
=
pool
.
package
(
"bar"
,
Version
.
parse
(
"1.0.0"
))
...
@@ -176,7 +176,7 @@ def test_pool_get_package_in_specified_repository() -> None:
...
@@ -176,7 +176,7 @@ def test_pool_get_package_in_specified_repository() -> None:
package
=
get_package
(
"foo"
,
"1.0.0"
)
package
=
get_package
(
"foo"
,
"1.0.0"
)
repo1
=
Repository
(
"repo1"
)
repo1
=
Repository
(
"repo1"
)
repo2
=
Repository
(
"repo2"
,
[
package
])
repo2
=
Repository
(
"repo2"
,
[
package
])
pool
=
Pool
([
repo1
,
repo2
])
pool
=
Repository
Pool
([
repo1
,
repo2
])
returned_package
=
pool
.
package
(
returned_package
=
pool
.
package
(
"foo"
,
Version
.
parse
(
"1.0.0"
),
repository_name
=
"repo2"
"foo"
,
Version
.
parse
(
"1.0.0"
),
repository_name
=
"repo2"
...
@@ -186,7 +186,7 @@ def test_pool_get_package_in_specified_repository() -> None:
...
@@ -186,7 +186,7 @@ def test_pool_get_package_in_specified_repository() -> None:
def
test_pool_no_package_from_any_repository_raises_package_not_found
()
->
None
:
def
test_pool_no_package_from_any_repository_raises_package_not_found
()
->
None
:
pool
=
Pool
()
pool
=
Repository
Pool
()
pool
.
add_repository
(
Repository
(
"repo"
))
pool
.
add_repository
(
Repository
(
"repo"
))
with
pytest
.
raises
(
PackageNotFound
):
with
pytest
.
raises
(
PackageNotFound
):
...
@@ -197,7 +197,7 @@ def test_pool_no_package_from_specified_repository_raises_package_not_found() ->
...
@@ -197,7 +197,7 @@ def test_pool_no_package_from_specified_repository_raises_package_not_found() ->
package
=
get_package
(
"foo"
,
"1.0.0"
)
package
=
get_package
(
"foo"
,
"1.0.0"
)
repo1
=
Repository
(
"repo1"
)
repo1
=
Repository
(
"repo1"
)
repo2
=
Repository
(
"repo2"
,
[
package
])
repo2
=
Repository
(
"repo2"
,
[
package
])
pool
=
Pool
([
repo1
,
repo2
])
pool
=
Repository
Pool
([
repo1
,
repo2
])
with
pytest
.
raises
(
PackageNotFound
):
with
pytest
.
raises
(
PackageNotFound
):
pool
.
package
(
"foo"
,
Version
.
parse
(
"1.0.0"
),
repository_name
=
"repo1"
)
pool
.
package
(
"foo"
,
Version
.
parse
(
"1.0.0"
),
repository_name
=
"repo1"
)
...
@@ -210,7 +210,7 @@ def test_pool_find_packages_in_any_repository() -> None:
...
@@ -210,7 +210,7 @@ def test_pool_find_packages_in_any_repository() -> None:
package4
=
get_package
(
"bar"
,
"1.2.3"
)
package4
=
get_package
(
"bar"
,
"1.2.3"
)
repo1
=
Repository
(
"repo1"
,
[
package1
,
package3
])
repo1
=
Repository
(
"repo1"
,
[
package1
,
package3
])
repo2
=
Repository
(
"repo2"
,
[
package1
,
package2
,
package4
])
repo2
=
Repository
(
"repo2"
,
[
package1
,
package2
,
package4
])
pool
=
Pool
([
repo1
,
repo2
])
pool
=
Repository
Pool
([
repo1
,
repo2
])
available_dependency
=
get_dependency
(
"foo"
,
"^1.0.0"
)
available_dependency
=
get_dependency
(
"foo"
,
"^1.0.0"
)
returned_packages_available
=
pool
.
find_packages
(
available_dependency
)
returned_packages_available
=
pool
.
find_packages
(
available_dependency
)
...
@@ -228,7 +228,7 @@ def test_pool_find_packages_in_specified_repository() -> None:
...
@@ -228,7 +228,7 @@ def test_pool_find_packages_in_specified_repository() -> None:
package_bar
=
get_package
(
"bar"
,
"1.2.3"
)
package_bar
=
get_package
(
"bar"
,
"1.2.3"
)
repo1
=
Repository
(
"repo1"
,
[
package_foo1
,
package_foo3
])
repo1
=
Repository
(
"repo1"
,
[
package_foo1
,
package_foo3
])
repo2
=
Repository
(
"repo2"
,
[
package_foo1
,
package_foo2
,
package_bar
])
repo2
=
Repository
(
"repo2"
,
[
package_foo1
,
package_foo2
,
package_bar
])
pool
=
Pool
([
repo1
,
repo2
])
pool
=
Repository
Pool
([
repo1
,
repo2
])
available_dependency
=
get_dependency
(
"foo"
,
"^1.0.0"
)
available_dependency
=
get_dependency
(
"foo"
,
"^1.0.0"
)
available_dependency
.
source_name
=
"repo2"
available_dependency
.
source_name
=
"repo2"
...
@@ -247,7 +247,7 @@ def test_search_no_legacy_repositories() -> None:
...
@@ -247,7 +247,7 @@ def test_search_no_legacy_repositories() -> None:
package_foobar
=
get_package
(
"foobar"
,
"1.0.0"
)
package_foobar
=
get_package
(
"foobar"
,
"1.0.0"
)
repo1
=
Repository
(
"repo1"
,
[
package_foo1
,
package_foo2
])
repo1
=
Repository
(
"repo1"
,
[
package_foo1
,
package_foo2
])
repo2
=
Repository
(
"repo2"
,
[
package_foo1
,
package_foobar
])
repo2
=
Repository
(
"repo2"
,
[
package_foo1
,
package_foobar
])
pool
=
Pool
([
repo1
,
repo2
])
pool
=
Repository
Pool
([
repo1
,
repo2
])
assert
pool
.
search
(
"foo"
)
==
[
assert
pool
.
search
(
"foo"
)
==
[
package_foo1
,
package_foo1
,
...
@@ -263,6 +263,6 @@ def test_search_legacy_repositories_are_skipped() -> None:
...
@@ -263,6 +263,6 @@ def test_search_legacy_repositories_are_skipped() -> None:
package
=
get_package
(
"foo"
,
"1.0.0"
)
package
=
get_package
(
"foo"
,
"1.0.0"
)
repo1
=
Repository
(
"repo1"
,
[
package
])
repo1
=
Repository
(
"repo1"
,
[
package
])
repo2
=
LegacyRepository
(
"repo2"
,
"https://fake.repo/"
)
repo2
=
LegacyRepository
(
"repo2"
,
"https://fake.repo/"
)
pool
=
Pool
([
repo1
,
repo2
])
pool
=
Repository
Pool
([
repo1
,
repo2
])
assert
pool
.
search
(
"foo"
)
==
[
package
]
assert
pool
.
search
(
"foo"
)
==
[
package
]
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment