11from collections import OrderedDict
22
33import pytest
4+
5+ try :
6+ from jupyter_core .paths import prefer_environment_over_user
7+ except ImportError :
8+ prefer_environment_over_user = None
9+
410from traitlets .tests .utils import check_help_all_output
511
612from jupyter_server .config_manager import BaseJSONConfigManager
@@ -43,6 +49,7 @@ def test_disable(jp_env_config_path, jp_extension_environ):
4349 assert not config ["mock1" ]
4450
4551
52+ @pytest .mark .skipif (prefer_environment_over_user is None , reason = "Requires jupyter_core 5.0+" )
4653def test_merge_config (jp_env_config_path , jp_configurable_serverapp , jp_extension_environ ):
4754 # Toggle each extension module with a JSON config file
4855 # at the sys-prefix config dir.
@@ -62,12 +69,12 @@ def test_merge_config(jp_env_config_path, jp_configurable_serverapp, jp_extensio
6269 # when these two configs merge.
6370 toggle_server_extension_python (
6471 "tests.extension.mockextensions.mockext_both" ,
65- enabled = True ,
72+ enabled = False ,
6673 sys_prefix = True ,
6774 )
6875 toggle_server_extension_python (
6976 "tests.extension.mockextensions.mockext_both" ,
70- enabled = False ,
77+ enabled = True ,
7178 user = True ,
7279 )
7380
@@ -82,7 +89,8 @@ def test_merge_config(jp_env_config_path, jp_configurable_serverapp, jp_extensio
8289 assert extensions ["tests.extension.mockextensions.mockext_sys" ]
8390 assert extensions ["tests.extension.mockextensions.mockext_py" ]
8491 # Merging should causes this extension to be disabled.
85- assert not extensions ["tests.extension.mockextensions.mockext_both" ]
92+ if prefer_environment_over_user ():
93+ assert not extensions ["tests.extension.mockextensions.mockext_both" ]
8694
8795
8896@pytest .mark .parametrize (
0 commit comments