|
37 | 37 | _copy_files_needed_for_post_processing, |
38 | 38 | _create_main_version_header, |
39 | 39 | _determine_bazel_rule, |
| 40 | + _get_library_dist_name, |
40 | 41 | _determine_library_namespace, |
41 | 42 | _get_library_id, |
42 | 43 | _get_libraries_to_prepare_for_release, |
|
52 | 53 | _update_changelog_for_library, |
53 | 54 | _update_global_changelog, |
54 | 55 | _update_version_for_library, |
| 56 | + _verify_library_dist_name, |
55 | 57 | _verify_library_namespace, |
56 | 58 | _write_json_file, |
57 | 59 | _write_text_file, |
@@ -525,7 +527,8 @@ def test_handle_build_success(caplog, mocker, mock_build_request_file): |
525 | 527 | caplog.set_level(logging.INFO) |
526 | 528 |
|
527 | 529 | mocker.patch("cli._run_nox_sessions") |
528 | | - mocker.patch("cli._verify_library_namespace", return_value=True) |
| 530 | + mocker.patch("cli._verify_library_namespace") |
| 531 | + mocker.patch("cli._verify_library_dist_name") |
529 | 532 | handle_build() |
530 | 533 |
|
531 | 534 | assert "'build' command executed." in caplog.text |
@@ -922,6 +925,26 @@ def test_determine_library_namespace_fails_not_subpath(): |
922 | 925 | _determine_library_namespace(gapic_parent_path, pkg_root_path) |
923 | 926 |
|
924 | 927 |
|
| 928 | +def test_get_library_dist_name_success(mocker): |
| 929 | + mock_metadata = {"name": "my-lib", "version": "1.0.0"} |
| 930 | + mocker.patch("build.util.project_wheel_metadata", return_value=mock_metadata) |
| 931 | + assert _get_library_dist_name("my-lib", "repo") == "my-lib" |
| 932 | + |
| 933 | + |
| 934 | +def test_verify_library_dist_name_setup_success(mocker): |
| 935 | + """Tests success when a library distribution name in setup.py is valid.""" |
| 936 | + mock_setup_file = mocker.patch("cli._get_library_dist_name", return_value="my-lib") |
| 937 | + _verify_library_dist_name("my-lib", "repo") |
| 938 | + mock_setup_file.assert_called_once_with("my-lib", "repo") |
| 939 | + |
| 940 | + |
| 941 | +def test_verify_library_dist_name_fail(mocker): |
| 942 | + """Tests failure when a library-id does not match the libary distribution name.""" |
| 943 | + mocker.patch("cli._get_library_dist_name", return_value="invalid-lib") |
| 944 | + with pytest.raises(ValueError): |
| 945 | + _verify_library_dist_name("my-lib", "repo") |
| 946 | + |
| 947 | + |
925 | 948 | def test_verify_library_namespace_success_valid(mocker, mock_path_class): |
926 | 949 | """Tests success when a single valid namespace is found.""" |
927 | 950 | # 1. Get the mock instance from the mock class's return_value |
|
0 commit comments