diff --git a/tests/magicdata/Include/internal/pycore_magic_number.h b/tests/magicdata/Include/internal/pycore_magic_number.h new file mode 100644 index 0000000..e7c1893 --- /dev/null +++ b/tests/magicdata/Include/internal/pycore_magic_number.h @@ -0,0 +1,11 @@ +// copied from cpython bd3d31f380cd451a4ab6da5fbfde463fed95b5b5 +// ... + +#ifndef Py_INTERNAL_MAGIC_NUMBER_H +#define Py_INTERNAL_MAGIC_NUMBER_H + +#define PYC_MAGIC_NUMBER 3603 + +#endif // !Py_INTERNAL_MAGIC_NUMBER_H + +// ... diff --git a/tests/test_run_release.py b/tests/test_run_release.py index 7268ccf..8f545bd 100644 --- a/tests/test_run_release.py +++ b/tests/test_run_release.py @@ -1,6 +1,10 @@ +from pathlib import Path +from typing import cast + import pytest import run_release +from release import ReleaseShelf, Tag @pytest.mark.parametrize( @@ -22,3 +26,14 @@ def test_invalid_extract_github_owner() -> None: "https://example.com", ): run_release.extract_github_owner("https://example.com") + + +def test_check_magic_number() -> None: + db = { + "release": Tag("3.13.0rc1"), + "git_repo": str(Path(__file__).parent / "magicdata"), + } + with pytest.raises( + run_release.ReleaseException, match="Magic numbers in .* don't match" + ): + run_release.check_magic_number(cast(ReleaseShelf, db))