|
7 | 7 |
|
8 | 8 | import httpretty
|
9 | 9 | import pytest
|
| 10 | +import click |
10 | 11 | from click.testing import CliRunner
|
11 | 12 |
|
12 | 13 | from rsconnect.json_web_token import SECRET_KEY_ENV
|
|
22 | 23 | require_connect,
|
23 | 24 | has_jwt_structure,
|
24 | 25 | )
|
25 |
| -from rsconnect.main import cli |
| 26 | +from rsconnect.main import cli, env_management_callback |
26 | 27 | from rsconnect import VERSION
|
27 | 28 |
|
28 | 29 |
|
@@ -746,6 +747,22 @@ def test_add_shinyapps_missing_options(self):
|
746 | 747 | os.environ["CONNECT_SERVER"] = original_server_value
|
747 | 748 |
|
748 | 749 |
|
| 750 | + def test_env_management_callback(self): |
| 751 | + ctx = click.Context(cli) |
| 752 | + |
| 753 | + # env_management is always False when --disable-env-management is True |
| 754 | + ctx.params = {'disable_env_management': True} |
| 755 | + assert env_management_callback(ctx, None, None) is False |
| 756 | + assert env_management_callback(ctx, None, True) is False |
| 757 | + assert env_management_callback(ctx, None, False) is False |
| 758 | + |
| 759 | + # (env_management == not value) when --disable-env-management is None |
| 760 | + ctx.params = {'disable_env_management': None} |
| 761 | + assert env_management_callback(ctx, None, None) is None |
| 762 | + assert env_management_callback(ctx, None, True) is False |
| 763 | + assert env_management_callback(ctx, None, False) is True |
| 764 | + |
| 765 | + |
749 | 766 | class TestBootstrap(TestCase):
|
750 | 767 | def setUp(self):
|
751 | 768 | self.mock_server = "http://localhost:8080"
|
|
0 commit comments