@@ -91,16 +91,17 @@ def test_publish_raises_error_for_undefined_repository(
91
91
publisher .publish ("my-repo" , None , None )
92
92
93
93
94
- def test_publish_uses_token_if_it_exists (
95
- fixture_dir : FixtureDirGetter , mocker : MockerFixture , config : Config
94
+ def assert_publish_uses_token_if_it_exists (
95
+ fixture_dir : FixtureDirGetter , mocker : MockerFixture , config : Config | None = None
96
96
) -> None :
97
97
uploader_auth = mocker .patch ("poetry.publishing.uploader.Uploader.auth" )
98
98
uploader_upload = mocker .patch ("poetry.publishing.uploader.Uploader.upload" )
99
99
poetry = Factory ().create_poetry (fixture_dir ("sample_project" ))
100
- poetry ._config = config
101
- poetry .config .merge ({"pypi-token" : {"pypi" : "my-token" }})
102
- publisher = Publisher (poetry , NullIO ())
103
100
101
+ if config :
102
+ poetry ._config = config
103
+
104
+ publisher = Publisher (poetry , NullIO ())
104
105
publisher .publish (None , None , None )
105
106
106
107
assert [("__token__" , "my-token" )] == uploader_auth .call_args
@@ -110,6 +111,20 @@ def test_publish_uses_token_if_it_exists(
110
111
] == uploader_upload .call_args
111
112
112
113
114
+ def test_publish_uses_token_if_it_exists (
115
+ fixture_dir : FixtureDirGetter , mocker : MockerFixture , config : Config
116
+ ) -> None :
117
+ config .merge ({"pypi-token" : {"pypi" : "my-token" }})
118
+ assert_publish_uses_token_if_it_exists (fixture_dir , mocker , config )
119
+
120
+
121
+ def test_publish_uses_env_token_if_it_exists (
122
+ fixture_dir : FixtureDirGetter , mocker : MockerFixture , environ : None
123
+ ) -> None :
124
+ os .environ ["POETRY_PYPI_TOKEN_PYPI" ] = "my-token"
125
+ assert_publish_uses_token_if_it_exists (fixture_dir , mocker )
126
+
127
+
113
128
def test_publish_uses_cert (
114
129
fixture_dir : FixtureDirGetter , mocker : MockerFixture , config : Config
115
130
) -> None :
0 commit comments