Skip to content

Commit 700cd72

Browse files
Add tests for load_archive_metadata in _archive_helper.py
Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
1 parent 1a5c6bd commit 700cd72

1 file changed

Lines changed: 31 additions & 0 deletions

File tree

tests/test_archive_helper.py

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
import json
2+
import unittest
3+
from unittest import mock
4+
5+
from src._archive_helper import load_archive_metadata
6+
7+
8+
class TestArchiveHelper(unittest.TestCase):
9+
@mock.patch("pathlib.Path.read_text")
10+
def test_load_archive_metadata_success(
11+
self, mock_read_text: mock.MagicMock
12+
) -> None:
13+
mock_read_text.return_value = '{"foo": "bar"}'
14+
result = load_archive_metadata("my_package")
15+
self.assertEqual(result, {"foo": "bar"})
16+
17+
@mock.patch("pathlib.Path.read_text")
18+
def test_load_archive_metadata_file_not_found(
19+
self, mock_read_text: mock.MagicMock
20+
) -> None:
21+
mock_read_text.side_effect = FileNotFoundError("No such file or directory")
22+
with self.assertRaises(FileNotFoundError):
23+
load_archive_metadata("my_package")
24+
25+
@mock.patch("pathlib.Path.read_text")
26+
def test_load_archive_metadata_invalid_json(
27+
self, mock_read_text: mock.MagicMock
28+
) -> None:
29+
mock_read_text.return_value = '{"foo": '
30+
with self.assertRaises(json.JSONDecodeError):
31+
load_archive_metadata("my_package")

0 commit comments

Comments
 (0)