Fix tests for tag removal and version behavior
- Fix upload response to return actual version (not requested version) when artifact already has a version in the package - Update ref_count tests to use multiple packages (one version per artifact per package design constraint) - Remove allow_public_internet references from upstream caching tests - Update consistency check test to not assert global system health - Add versions field to artifact schemas - Fix dependencies resolution to handle removed tag constraint
This commit is contained in:
@@ -234,7 +234,11 @@ class TestPackageCascadeDelete:
|
||||
def test_ref_count_decrements_on_package_delete(
|
||||
self, integration_client, unique_test_id
|
||||
):
|
||||
"""Test ref_count decrements for all tags when package is deleted."""
|
||||
"""Test ref_count decrements when package is deleted.
|
||||
|
||||
Each package can only have one version per artifact (same content = same version).
|
||||
This test verifies that deleting a package decrements the artifact's ref_count.
|
||||
"""
|
||||
project_name = f"cascade-pkg-{unique_test_id}"
|
||||
package_name = f"test-pkg-{unique_test_id}"
|
||||
|
||||
@@ -256,23 +260,17 @@ class TestPackageCascadeDelete:
|
||||
)
|
||||
assert response.status_code == 200
|
||||
|
||||
# Upload content with multiple tags
|
||||
# Upload content with version
|
||||
content = f"cascade delete test {unique_test_id}".encode()
|
||||
expected_hash = compute_sha256(content)
|
||||
|
||||
upload_test_file(
|
||||
integration_client, project_name, package_name, content, version="v1"
|
||||
)
|
||||
upload_test_file(
|
||||
integration_client, project_name, package_name, content, version="v2"
|
||||
)
|
||||
upload_test_file(
|
||||
integration_client, project_name, package_name, content, version="v3"
|
||||
integration_client, project_name, package_name, content, version="1.0.0"
|
||||
)
|
||||
|
||||
# Verify ref_count is 3
|
||||
# Verify ref_count is 1
|
||||
response = integration_client.get(f"/api/v1/artifact/{expected_hash}")
|
||||
assert response.json()["ref_count"] == 3
|
||||
assert response.json()["ref_count"] == 1
|
||||
|
||||
# Delete the package
|
||||
delete_response = integration_client.delete(
|
||||
|
||||
Reference in New Issue
Block a user