Spaces:
Paused
Paused
Download gemma/gm/utils/_file_cache_test.py from Jit89/bmap-gemma-engine: direct link, hf CLI and curl.
- Browser
- Download file 2.1 kB
-
https://huggingface.co/spaces/Jit89/bmap-gemma-engine/resolve/main/gemma/gm/utils/_file_cache_test.py
- Command line
-
hf download hf://spaces/Jit89/bmap-gemma-engine/gemma/gm/utils/_file_cache_test.py
-
curl -L -o _file_cache_test.py https://huggingface.co/spaces/Jit89/bmap-gemma-engine/resolve/main/gemma/gm/utils/_file_cache_test.py
2.1 kB
| # Copyright 2026 DeepMind Technologies Limited. | |
| # | |
| # Licensed under the Apache License, Version 2.0 (the "License"); | |
| # you may not use this file except in compliance with the License. | |
| # You may obtain a copy of the License at | |
| # | |
| # http://www.apache.org/licenses/LICENSE-2.0 | |
| # | |
| # Unless required by applicable law or agreed to in writing, software | |
| # distributed under the License is distributed on an "AS IS" BASIS, | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| # See the License for the specific language governing permissions and | |
| # limitations under the License. | |
| import os | |
| import pathlib | |
| from etils import epath | |
| from gemma.gm.utils import _file_cache | |
| import pytest | |
| def cache_dir(tmp_path: pathlib.Path): | |
| os.environ['GEMMA_CACHE_DIR'] = os.fspath(tmp_path) | |
| yield tmp_path | |
| del os.environ['GEMMA_CACHE_DIR'] | |
| def test_cache_miss_returns_remote_path(): | |
| if 'GEMMA_CACHE_DIR' in os.environ: | |
| del os.environ['GEMMA_CACHE_DIR'] | |
| # As we do not create the cache file, there will be a miss and the remote path | |
| # will be returned. | |
| filename = _file_cache.maybe_get_from_cache( | |
| remote_file_path='/this/path/will/not/be/used.txt', | |
| cache_subdir='test', | |
| ) | |
| assert filename == epath.Path('/this/path/will/not/be/used.txt') | |
| def test_cache_dir_from_env_var(cache_dir: pathlib.Path): # pylint: disable=redefined-outer-name | |
| dirpath = epath.Path(cache_dir) / 'test' | |
| expected_filename = dirpath / 'used.txt' | |
| # Create the cache directory and write a file in it. | |
| dirpath.mkdir() | |
| expected_filename.write_text('some text') | |
| filename = _file_cache.maybe_get_from_cache( | |
| remote_file_path='/this/path/will/not/be/used.txt', | |
| cache_subdir='test', | |
| ) | |
| assert filename == expected_filename | |
| def test_cache_in_default_location(): | |
| if 'GEMMA_CACHE_DIR' in os.environ: | |
| del os.environ['GEMMA_CACHE_DIR'] | |
| # We can't create a file in the default location so we test only the function | |
| # that returns the path. | |
| cache_path = _file_cache._get_cache_dir() | |
| assert cache_path == epath.Path('~/.gemma/').expanduser() | |