mirror of
				https://github.com/arcan1s/ahriman.git
				synced 2025-10-31 13:53:41 +00:00 
			
		
		
		
	fix: fix migrations on empty repositories
This commit is contained in:
		| @ -203,6 +203,8 @@ def migrate_package_repository(connection: Connection, configuration: Configurat | ||||
|         configuration(Configuration): configuration instance | ||||
|     """ | ||||
|     _, repository_id = configuration.check_loaded() | ||||
|     if repository_id.is_empty: | ||||
|         return  # no repository available yet | ||||
|  | ||||
|     connection.execute("""update build_queue set repository = :repository""", {"repository": repository_id.id}) | ||||
|     connection.execute("""update package_bases set repository = :repository""", {"repository": repository_id.id}) | ||||
|  | ||||
| @ -6,6 +6,7 @@ from unittest.mock import call as MockCall | ||||
|  | ||||
| from ahriman.core.configuration import Configuration | ||||
| from ahriman.core.database.migrations.m011_repository_name import migrate_data, migrate_package_repository, steps | ||||
| from ahriman.models.repository_id import RepositoryId | ||||
|  | ||||
|  | ||||
| def test_migration_repository_name() -> None: | ||||
| @ -37,3 +38,13 @@ def test_migrate_package_repository(connection: Connection, configuration: Confi | ||||
|         MockCall(pytest.helpers.anyvar(str, strict=True), {"repository": configuration.repository_id.id}), | ||||
|         MockCall(pytest.helpers.anyvar(str, strict=True), {"repository": configuration.repository_id.id}), | ||||
|     ]) | ||||
|  | ||||
|  | ||||
| def test_migrate_package_repository_empty_id(connection: Connection, configuration: Configuration, | ||||
|                                              mocker: MockerFixture) -> None: | ||||
|     """ | ||||
|     must do nothing on empty repository id | ||||
|     """ | ||||
|     mocker.patch("ahriman.core.configuration.Configuration.check_loaded", return_value=("", RepositoryId("", ""))) | ||||
|     migrate_package_repository(connection, configuration) | ||||
|     connection.execute.assert_not_called() | ||||
|  | ||||
		Reference in New Issue
	
	Block a user