Source code for one.tests.test_params

import unittest
from unittest import mock
from pathlib import Path
from functools import partial

import one.params as params
from . import util


[docs]class TestONEParamUtil(unittest.TestCase):
[docs] def setUp(self) -> None: pass
[docs] def test_key_from_url(self): key = params._key_from_url('https://sub.domain.org/') self.assertEqual(key, 'sub.domain.org') key = params._key_from_url('http://www.domain.org/db/?rest=True') self.assertEqual(key, 'www.domain.org_db__rest_true')
[docs] def test_get_params_dir(self): par_dir = Path('path', 'to', 'params') with mock.patch('iblutil.io.params.getfile', new=partial(util.get_file, par_dir)): path = params.get_params_dir() self.assertIsInstance(path, Path) self.assertEqual('path/to/params/.one', path.as_posix())
[docs] def test_get_rest_dir(self): par_dir = Path('path', 'to', 'params') url = 'https://sub.domain.net/' with mock.patch('iblutil.io.params.getfile', new=partial(util.get_file, par_dir)): path1 = params.get_rest_dir() path2 = params.get_rest_dir(url) expected = ('path', 'to', 'params', '.one', '.rest') self.assertCountEqual(expected, path1.parts) expected = (*expected, 'sub.domain.net', 'https') self.assertCountEqual(expected, path2.parts)
[docs] def test_get_default_client(self): temp_dir = util.set_up_env() self.addCleanup(temp_dir.cleanup) with mock.patch('iblutil.io.params.getfile', new=partial(util.get_file, temp_dir.name)): self.assertIsNone(params.get_default_client()) # Copy over caches fixture params.setup(silent=True) self.assertEqual(params.get_default_client(), 'openalyx.internationalbrainlab.org')
if __name__ == "__main__": unittest.main(exit=False, verbosity=2)