MCPcopy
hub / github.com/ccxt/ccxt / expand_settings

Method expand_settings

python/ccxt/test/tests_async.py:134–178  ·  view source on GitHub ↗
(self, exchange)

Source from the content-addressed store, hash-verified

132 set_exchange_prop(exchange, credential, credential_value)
133
134 def expand_settings(self, exchange):
135 exchange_id = exchange.id
136 keys_global = get_root_dir() + 'keys.json'
137 keys_local = get_root_dir() + 'keys.local.json'
138 keys_global_exists = io_file_exists(keys_global)
139 keys_local_exists = io_file_exists(keys_local)
140 global_settings = {}
141 if keys_global_exists:
142 global_settings = io_file_read(keys_global)
143 local_settings = {}
144 if keys_local_exists:
145 local_settings = io_file_read(keys_local)
146 all_settings = exchange.deep_extend(global_settings, local_settings)
147 exchange_settings = exchange.safe_value(all_settings, exchange_id, {})
148 if exchange_settings:
149 setting_keys = list(exchange_settings.keys())
150 for i in range(0, len(setting_keys)):
151 key = setting_keys[i]
152 if exchange_settings[key]:
153 final_value = None
154 if exchange.is_dictionary(exchange_settings[key]):
155 existing = get_exchange_prop(exchange, key, {})
156 final_value = exchange.deep_extend(existing, exchange_settings[key])
157 else:
158 final_value = exchange_settings[key]
159 set_exchange_prop(exchange, key, final_value)
160 # credentials
161 if self.load_keys:
162 self.load_credentials_from_env(exchange)
163 # skipped tests
164 skipped_file = get_root_dir() + 'skip-tests.json'
165 skipped_settings = io_file_read(skipped_file)
166 self.skipped_settings_for_exchange = exchange.safe_value(skipped_settings, exchange_id, {})
167 skipped_settings_for_exchange = self.skipped_settings_for_exchange
168 # others
169 timeout = exchange.safe_value(skipped_settings_for_exchange, 'timeout')
170 if timeout is not None:
171 exchange.timeout = exchange.parse_to_int(timeout)
172 if get_cli_arg_value('--useProxy'):
173 exchange.http_proxy = exchange.safe_string(skipped_settings_for_exchange, 'httpProxy')
174 exchange.https_proxy = exchange.safe_string(skipped_settings_for_exchange, 'httpsProxy')
175 exchange.ws_proxy = exchange.safe_string(skipped_settings_for_exchange, 'wsProxy')
176 exchange.wss_proxy = exchange.safe_string(skipped_settings_for_exchange, 'wssProxy')
177 self.skipped_methods = exchange.safe_value(skipped_settings_for_exchange, 'skipMethods', {})
178 self.checked_public_tests = {}
179
180 def add_padding(self, message, size):
181 # has to be transpilable

Callers 1

init_innerMethod · 0.95

Calls 13

get_root_dirFunction · 0.90
io_file_existsFunction · 0.90
io_file_readFunction · 0.90
get_exchange_propFunction · 0.90
set_exchange_propFunction · 0.90
get_cli_arg_valueFunction · 0.90
deep_extendMethod · 0.80
safe_valueMethod · 0.80
is_dictionaryMethod · 0.80
parse_to_intMethod · 0.80
safe_stringMethod · 0.80

Tested by

no test coverage detected