File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 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" )
You can’t perform that action at this time.
0 commit comments